Author: ndkhoiits
Date: 2011-04-26 22:14:03 -0400 (Tue, 26 Apr 2011)
New Revision: 6349
Modified:
portal/branches/branch-GTNPORTAL-1872/component/portal/src/main/java/org/exoplatform/portal/pom/config/POMSession.java
portal/branches/branch-GTNPORTAL-1872/component/portal/src/main/java/org/exoplatform/portal/pom/config/tasks/SearchTask.java
Log:
GTNPORTAL-1877 Group Navigation list is blank after add a node
Modified:
portal/branches/branch-GTNPORTAL-1872/component/portal/src/main/java/org/exoplatform/portal/pom/config/POMSession.java
===================================================================
---
portal/branches/branch-GTNPORTAL-1872/component/portal/src/main/java/org/exoplatform/portal/pom/config/POMSession.java 2011-04-26
15:41:50 UTC (rev 6348)
+++
portal/branches/branch-GTNPORTAL-1872/component/portal/src/main/java/org/exoplatform/portal/pom/config/POMSession.java 2011-04-27
02:14:03 UTC (rev 6349)
@@ -239,6 +239,11 @@
return prefs;
}
+ public POMSessionManager getManager()
+ {
+ return mgr;
+ }
+
private static final BaseEncodingObjectFormatter formatter = new
BaseEncodingObjectFormatter();
public <O extends WorkspaceObject> Iterator<O>
findObjects(ObjectType<O> type, ObjectType<? extends Site> siteType,
Modified:
portal/branches/branch-GTNPORTAL-1872/component/portal/src/main/java/org/exoplatform/portal/pom/config/tasks/SearchTask.java
===================================================================
---
portal/branches/branch-GTNPORTAL-1872/component/portal/src/main/java/org/exoplatform/portal/pom/config/tasks/SearchTask.java 2011-04-26
15:41:50 UTC (rev 6348)
+++
portal/branches/branch-GTNPORTAL-1872/component/portal/src/main/java/org/exoplatform/portal/pom/config/tasks/SearchTask.java 2011-04-27
02:14:03 UTC (rev 6349)
@@ -23,6 +23,7 @@
import org.exoplatform.commons.utils.ListAccess;
import org.exoplatform.portal.application.PortletPreferences;
import org.exoplatform.portal.config.Query;
+import org.exoplatform.portal.pom.config.POMSessionManager;
import org.exoplatform.portal.pom.config.POMTask;
import org.exoplatform.portal.pom.data.Mapper;
import org.exoplatform.portal.pom.data.NavigationData;
@@ -32,6 +33,7 @@
import org.exoplatform.portal.pom.config.POMSession;
import org.gatein.mop.api.workspace.Navigation;
import org.gatein.mop.api.workspace.ObjectType;
+import org.gatein.mop.api.workspace.Page;
import org.gatein.mop.api.workspace.Site;
import org.gatein.mop.api.workspace.Workspace;
import org.gatein.mop.api.workspace.WorkspaceObject;
@@ -64,7 +66,7 @@
super(query);
}
- public LazyPageList<T> run(final POMSession session) throws Exception
+ public final LazyPageList<T> run(final POMSession session) throws Exception
{
Iterator<W> ite;
try
@@ -84,18 +86,20 @@
}
//
- final ArrayList<W> array = new ArrayList<W>();
+ final ArrayList<String> array = new ArrayList<String>();
while (ite.hasNext())
{
- array.add(ite.next());
+ array.add(ite.next().getObjectId());
}
//
- final Iterator<W> it = array.iterator();
+ final POMSessionManager manager = session.getManager();
+ final Iterator<String> it = array.iterator();
ListAccess<T> la = new ListAccess<T>()
{
public T[] load(int index, int length) throws Exception,
IllegalArgumentException
{
+ POMSession session = manager.getSession();
T[] result = createT(length);
for (int i = 0; i < length; i++)
{
@@ -120,7 +124,7 @@
protected abstract T[] createT(int length);
- protected abstract T loadT(POMSession session, W w);
+ protected abstract T loadT(POMSession session, String w);
}
@@ -143,9 +147,10 @@
return new PageData[length];
}
- protected PageData loadT(POMSession session, org.gatein.mop.api.workspace.Page w)
+ protected PageData loadT(POMSession session, String id)
{
- return new Mapper(session).load(w);
+ Page page =
session.getManager().getPOMService().getModel().findObjectById(ObjectType.PAGE, id);
+ return new Mapper(session).load(page);
}
}
@@ -168,9 +173,10 @@
return new NavigationData[length];
}
- protected NavigationData loadT(POMSession session, Navigation w)
+ protected NavigationData loadT(POMSession session, String id)
{
- return new Mapper(session).load(w);
+ Navigation nav =
session.getManager().getPOMService().getModel().findObjectById(ObjectType.NAVIGATION,
id);
+ return new Mapper(session).load(nav);
}
}
Show replies by date