Author: julien(a)jboss.com
Date: 2008-07-07 13:03:35 -0400 (Mon, 07 Jul 2008)
New Revision: 11323
Modified:
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/DiffPhase.java
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/UpdatePhase.java
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/pull/DetachedUINode.java
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/pull/DetachedViewPortContext.java
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/model/ViewPortContext.java
modules/presentation/trunk/presentation/src/test/java/org/jboss/portal/presentation/test/model/UIObjectNode.java
modules/presentation/trunk/presentation/src/test/java/org/jboss/portal/presentation/test/model/UIObjectTree.java
Log:
make the creation of the ui object impl the responsibility of the viewport context instead
of the viewport impl
Modified:
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/DiffPhase.java
===================================================================
---
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/DiffPhase.java 2008-07-07
16:52:50 UTC (rev 11322)
+++
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/DiffPhase.java 2008-07-07
17:03:35 UTC (rev 11323)
@@ -27,7 +27,6 @@
import org.jboss.portal.presentation.model.ViewPortScope;
import org.jboss.portal.presentation.state.structural.StructuralObject;
import org.jboss.portal.presentation.state.structural.StructuralStateContext;
-import org.jboss.portal.presentation.impl.model.ui.UIObjectImpl;
import java.util.Collection;
import java.util.ArrayList;
@@ -73,7 +72,7 @@
private ObjectDiff diff(String objectId)
{
- UIObjectImpl object = (UIObjectImpl)context.getObject(objectId);
+ InternalObjectContext object = (InternalObjectContext)context.getObject(objectId);
//
if (object == null)
@@ -91,7 +90,7 @@
}
else
{
- return diff((InternalObjectContext)object.getContext());
+ return diff(object);
}
}
@@ -114,10 +113,10 @@
{
if (removedChildRef.loaded)
{
- UIObjectImpl child =
(UIObjectImpl)context.getObject(removedChildRef.getId());
+ InternalObjectContext child =
(InternalObjectContext)context.getObject(removedChildRef.getId());
//
-
evictedChildren.add(createEvict((InternalObjectContext)child.getContext()));
+ evictedChildren.add(createEvict(child));
}
}
@@ -181,12 +180,12 @@
//
for (String removedChildId : refresh.getRemovedChildren())
{
- UIObjectImpl removedChild =
(UIObjectImpl)context.getObject(removedChildId);
+ InternalObjectContext removedChild =
(InternalObjectContext)context.getObject(removedChildId);
//
if (removedChild != null)
{
- ObjectDiff.Evict childVisit =
createEvict((InternalObjectContext)removedChild.getContext());
+ ObjectDiff.Evict childVisit = createEvict(removedChild);
removedObjects.add(childVisit);
}
else
Modified:
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/UpdatePhase.java
===================================================================
---
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/UpdatePhase.java 2008-07-07
16:52:50 UTC (rev 11322)
+++
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/UpdatePhase.java 2008-07-07
17:03:35 UTC (rev 11323)
@@ -23,7 +23,6 @@
package org.jboss.portal.presentation.impl.model;
import org.jboss.portal.presentation.model.ViewPortContext;
-import org.jboss.portal.presentation.impl.model.ui.UIObjectImpl;
import org.jboss.portal.presentation.state.navigational.NavigationalStateContext;
import java.util.Collection;
@@ -133,7 +132,7 @@
context.removeChild(parentId, childId);
//
- InternalObjectContext parentContext =
(InternalObjectContext)((UIObjectImpl)context.getObject(parentId)).getContext();
+ InternalObjectContext parentContext =
(InternalObjectContext)context.getObject(parentId);
//
parentContext.childRefs.remove(childId);
@@ -159,21 +158,18 @@
ObjectDiff.Load load = (ObjectDiff.Load)diff;
//
- UIObjectImpl object = UIObjectImpl.create(new
InternalObjectContext(navigationalStateContext, load.getObject()));
+ InternalObjectContext objectContext = new
InternalObjectContext(navigationalStateContext, load.getObject());
//
- context.addObject(object);
+ context.addObject(objectContext);
//
if (diff instanceof ObjectDiff.RecursiveLoad)
{
- InternalObjectContext objectContext =
(InternalObjectContext)object.getContext();
-
- //
objectContext.childRefs = new HashMap<String, UIObjectRef>();
//
- context.createChildren(object.getId());
+ context.createChildren(objectContext.getStructuralObject().getId());
//
perform2ndPhase(objectContext,
((ObjectDiff.RecursiveLoad)diff).getAddedChildren());
@@ -196,7 +192,7 @@
ObjectDiff.RecursiveUpdate recursiveUpdate =
(ObjectDiff.RecursiveUpdate)diff;
//
- InternalObjectContext objectContext =
(InternalObjectContext)((UIObjectImpl)context.getObject(diff.getObjectId())).getContext();
+ InternalObjectContext objectContext =
(InternalObjectContext)context.getObject(diff.getObjectId());
//
if (recursiveUpdate.getCreateChildren())
Modified:
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/pull/DetachedUINode.java
===================================================================
---
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/pull/DetachedUINode.java 2008-07-07
16:52:50 UTC (rev 11322)
+++
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/pull/DetachedUINode.java 2008-07-07
17:03:35 UTC (rev 11323)
@@ -24,6 +24,7 @@
import org.jboss.portal.presentation.model.ui.UIObject;
import org.jboss.portal.presentation.model.UINode;
+import org.jboss.portal.presentation.impl.model.ui.UIObjectContext;
import java.util.Collection;
import java.util.Map;
@@ -39,16 +40,25 @@
private final UIObject object;
/** . */
+ private final UIObjectContext context;
+
+ /** . */
DetachedUINode parent;
/** . */
Map<String, DetachedUINode> children;
- public DetachedUINode(UIObject object)
+ public DetachedUINode(UIObject object, UIObjectContext context)
{
this.object = object;
+ this.context = context;
}
+ public UIObjectContext getContext()
+ {
+ return context;
+ }
+
public DetachedUINode getParent()
{
return parent;
Modified:
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/pull/DetachedViewPortContext.java
===================================================================
---
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/pull/DetachedViewPortContext.java 2008-07-07
16:52:50 UTC (rev 11322)
+++
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/impl/model/pull/DetachedViewPortContext.java 2008-07-07
17:03:35 UTC (rev 11323)
@@ -24,6 +24,8 @@
import org.jboss.portal.presentation.model.ui.UIObject;
import org.jboss.portal.presentation.model.ViewPortContext;
+import org.jboss.portal.presentation.impl.model.ui.UIObjectContext;
+import org.jboss.portal.presentation.impl.model.ui.UIObjectImpl;
import java.util.HashMap;
import java.util.Map;
@@ -45,7 +47,7 @@
return nodes.get(nodeId);
}
- public UIObject getObject(String objectId)
+ public UIObjectContext getObject(String objectId)
{
DetachedUINode node = nodes.get(objectId);
@@ -56,15 +58,18 @@
}
else
{
- return node.getObject();
+ return node.getContext();
}
}
- public void addObject(UIObject object)
+ public void addObject(UIObjectContext objectContext)
{
- DetachedUINode node = new DetachedUINode(object);
+ UIObject object = UIObjectImpl.create(objectContext);
//
+ DetachedUINode node = new DetachedUINode(object, objectContext);
+
+ //
nodes.put(node.getId(), node);
}
Modified:
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/model/ViewPortContext.java
===================================================================
---
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/model/ViewPortContext.java 2008-07-07
16:52:50 UTC (rev 11322)
+++
modules/presentation/trunk/presentation/src/main/java/org/jboss/portal/presentation/model/ViewPortContext.java 2008-07-07
17:03:35 UTC (rev 11323)
@@ -22,7 +22,7 @@
******************************************************************************/
package org.jboss.portal.presentation.model;
-import org.jboss.portal.presentation.model.ui.UIObject;
+import org.jboss.portal.presentation.impl.model.ui.UIObjectContext;
import java.util.Set;
import java.util.Map;
@@ -43,14 +43,14 @@
* @param objectId the object id
* @return the specified object
*/
- UIObject getObject(String objectId);
+ UIObjectContext getObject(String objectId);
/**
* Populate the context with the specified object.
*
* @param object the object
*/
- void addObject(UIObject object);
+ void addObject(UIObjectContext object);
/**
* Signals the context that the object state has been updated.
Modified:
modules/presentation/trunk/presentation/src/test/java/org/jboss/portal/presentation/test/model/UIObjectNode.java
===================================================================
---
modules/presentation/trunk/presentation/src/test/java/org/jboss/portal/presentation/test/model/UIObjectNode.java 2008-07-07
16:52:50 UTC (rev 11322)
+++
modules/presentation/trunk/presentation/src/test/java/org/jboss/portal/presentation/test/model/UIObjectNode.java 2008-07-07
17:03:35 UTC (rev 11323)
@@ -24,6 +24,7 @@
import org.jboss.portal.presentation.model.ui.UIObject;
import org.jboss.portal.presentation.state.StateType;
+import org.jboss.portal.presentation.impl.model.ui.UIObjectContext;
import java.util.HashMap;
import java.util.Map;
@@ -45,21 +46,34 @@
/** . */
Map<String, Serializable> properties;
- public UIObjectNode(UIObject object)
+ /** . */
+ private final UIObjectContext context;
+
+ public UIObjectNode(UIObject object, UIObjectContext context)
{
if (object == null)
{
throw new IllegalArgumentException();
}
+ if (context == null)
+ {
+ throw new IllegalArgumentException();
+ }
//
this.object = object;
+ this.context = context;
this.properties = new HashMap<String, Serializable>();
//
updateState();
}
+ public UIObjectContext getContext()
+ {
+ return context;
+ }
+
public Map<String, Serializable> getProperties()
{
return properties;
Modified:
modules/presentation/trunk/presentation/src/test/java/org/jboss/portal/presentation/test/model/UIObjectTree.java
===================================================================
---
modules/presentation/trunk/presentation/src/test/java/org/jboss/portal/presentation/test/model/UIObjectTree.java 2008-07-07
16:52:50 UTC (rev 11322)
+++
modules/presentation/trunk/presentation/src/test/java/org/jboss/portal/presentation/test/model/UIObjectTree.java 2008-07-07
17:03:35 UTC (rev 11323)
@@ -25,6 +25,8 @@
import junit.framework.Assert;
import org.jboss.portal.presentation.model.ui.UIObject;
import org.jboss.portal.presentation.model.ViewPortContext;
+import org.jboss.portal.presentation.impl.model.ui.UIObjectContext;
+import org.jboss.portal.presentation.impl.model.ui.UIObjectImpl;
import java.util.ArrayList;
import java.util.HashMap;
@@ -70,12 +72,12 @@
return nodes.get(objectId);
}
- public UIObject getObject(String objectId)
+ public UIObjectContext getObject(String objectId)
{
UIObjectNode node = nodes.get(objectId);
//
- return node != null ? node.getObject() : null;
+ return node != null ? node.getContext() : null;
}
public void removeObject(String objectId)
@@ -86,9 +88,9 @@
}
}
- public void addObject(UIObject object)
+ public void addObject(UIObjectContext objectContext)
{
- String id = object.getId();
+ String id = objectContext.getStructuralObject().getId();
//
if (nodes.containsKey(id))
@@ -97,17 +99,12 @@
}
//
- nodes.put(id, new UIObjectNode(object));
+ UIObject object = UIObjectImpl.create(objectContext);
+
+ //
+ nodes.put(id, new UIObjectNode(object, objectContext));
}
-// public void updateObject(String objectId)
-// {
-// UIObjectNode node = nodes.get(objectId);
-//
-// //
-// node.updateState();
-// }
-
public void updateObject(String objectId, Set<String> removedProperties,
Map<String, Serializable> updatedProperties, Map<String, Serializable>
addedProperties)
{
UIObjectNode node = nodes.get(objectId);