[gatein-commits] gatein SVN: r554 - in portal/trunk: component/application-registry/src/main/java/org/exoplatform/application/registry/mop and 12 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Tue Nov 10 18:45:49 EST 2009


Author: julien_viet
Date: 2009-11-10 18:45:49 -0500 (Tue, 10 Nov 2009)
New Revision: 554

Removed:
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/gadget/GadgetId.java
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/portlet/PortletId.java
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/wsrp/WSRPId.java
Modified:
   portal/trunk/component/application-registry/src/main/java/org/exoplatform/application/registry/ApplicationRegistryService.java
   portal/trunk/component/application-registry/src/main/java/org/exoplatform/application/registry/mop/MOPApplicationRegistryService.java
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/DataStorage.java
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/DataStorageImpl.java
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/Application.java
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/ApplicationType.java
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/ModelObject.java
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/gadget/GadgetApplication.java
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/portlet/PortletApplication.java
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/wsrp/WSRPApplication.java
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/config/POMDataStorage.java
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/data/ApplicationData.java
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/data/Mapper.java
   portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/data/ModelDataStorage.java
   portal/trunk/component/portal/src/test/java/org/exoplatform/portal/config/TestDataStorage.java
   portal/trunk/component/portal/src/test/java/org/exoplatform/portal/config/TestUserPortalConfigService.java
   portal/trunk/component/portal/src/test/java/org/exoplatform/portal/config/WSRPTest.java
   portal/trunk/webui/eXo/src/main/java/org/exoplatform/web/command/handler/GetApplicationHandler.java
   portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/ModelAdapter.java
   portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/PortletState.java
   portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIGadget.java
   portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIPortlet.java
   portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIPortletActionListener.java
   portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIPortletLifecycle.java
   portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/util/PortalDataMapper.java
   portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/workspace/UIWorkingWorkspace.java
Log:
remove various application id (portlet,gadget,wsrp) to simplify as they were mere wrappers


Modified: portal/trunk/component/application-registry/src/main/java/org/exoplatform/application/registry/ApplicationRegistryService.java
===================================================================
--- portal/trunk/component/application-registry/src/main/java/org/exoplatform/application/registry/ApplicationRegistryService.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/application-registry/src/main/java/org/exoplatform/application/registry/ApplicationRegistryService.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -33,7 +33,7 @@
 public interface ApplicationRegistryService
 {
 
-   public List<ApplicationCategory> getApplicationCategories(String accessUser, ApplicationType<?, ?>... appTypes) throws Exception;
+   public List<ApplicationCategory> getApplicationCategories(String accessUser, ApplicationType<?>... appTypes) throws Exception;
 
    public void initListener(ComponentPlugin com) throws Exception;
 
@@ -48,10 +48,10 @@
 
    public void remove(ApplicationCategory category) throws Exception;
 
-   public List<Application> getApplications(ApplicationCategory category, ApplicationType<?, ?>... appTypes) throws Exception;
+   public List<Application> getApplications(ApplicationCategory category, ApplicationType<?>... appTypes) throws Exception;
 
    public List<Application> getApplications(ApplicationCategory category, Comparator<Application> sortComparator,
-      ApplicationType<?, ?>... appTypes) throws Exception;
+      ApplicationType<?>... appTypes) throws Exception;
 
    public List<Application> getAllApplications() throws Exception;
 

Modified: portal/trunk/component/application-registry/src/main/java/org/exoplatform/application/registry/mop/MOPApplicationRegistryService.java
===================================================================
--- portal/trunk/component/application-registry/src/main/java/org/exoplatform/application/registry/mop/MOPApplicationRegistryService.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/application-registry/src/main/java/org/exoplatform/application/registry/mop/MOPApplicationRegistryService.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -86,7 +86,7 @@
    public List<ApplicationCategory> getApplicationCategories(
       Comparator<ApplicationCategory> sortComparator,
       String accessUser,
-      ApplicationType<?, ?>... appTypes) throws Exception
+      ApplicationType<?>... appTypes) throws Exception
    {
       POMSession session = POMSessionManager.getSession();
       ContentRegistry registry = session.getContentRegistry();
@@ -109,7 +109,7 @@
       return categories;
    }
 
-   public List<ApplicationCategory> getApplicationCategories(String accessUser, ApplicationType<?, ?>... appTypes) throws Exception
+   public List<ApplicationCategory> getApplicationCategories(String accessUser, ApplicationType<?>... appTypes) throws Exception
    {
       return getApplicationCategories(null, accessUser, appTypes);
    }
@@ -173,7 +173,7 @@
       registry.getCategoryMap().remove(category.getName());
    }
 
-   public List<Application> getApplications(ApplicationCategory category, ApplicationType<?, ?>... appTypes) throws Exception
+   public List<Application> getApplications(ApplicationCategory category, ApplicationType<?>... appTypes) throws Exception
    {
       return getApplications(category, null, appTypes);
    }
@@ -181,7 +181,7 @@
    public List<Application> getApplications(
       ApplicationCategory category,
       Comparator<Application> sortComparator,
-      ApplicationType<?, ?>... appTypes) throws Exception
+      ApplicationType<?>... appTypes) throws Exception
    {
       POMSession session = POMSessionManager.getSession();
       ContentRegistry registry = session.getContentRegistry();
@@ -462,13 +462,13 @@
       }
    }
 
-   private boolean isApplicationType(Application app, ApplicationType<?, ?>... appTypes)
+   private boolean isApplicationType(Application app, ApplicationType<?>... appTypes)
    {
       if (appTypes == null || appTypes.length == 0)
       {
          return true;
       }
-      for (ApplicationType<?, ?> appType : appTypes)
+      for (ApplicationType<?> appType : appTypes)
       {
          if (appType.equals(app.getType()))
          {
@@ -487,7 +487,7 @@
       categoryDef.setLastModificationDate(category.getModifiedDate());
    }
 
-   private ApplicationCategory load(CategoryDefinition categoryDef, ApplicationType<?, ?>... appTypes)
+   private ApplicationCategory load(CategoryDefinition categoryDef, ApplicationType<?>... appTypes)
    {
       ApplicationCategory category = new ApplicationCategory();
 
@@ -525,7 +525,7 @@
    private Application load(ContentDefinition contentDef)
    {
       ContentType<?> contentType = contentDef.getCustomization().getType();
-      ApplicationType<?, ?> applicationType = ApplicationType.getType(contentType);
+      ApplicationType<?> applicationType = ApplicationType.getType(contentType);
 
       //
       Application application = new Application();

Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/DataStorage.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/DataStorage.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/DataStorage.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -98,7 +98,7 @@
 
    public void save(PortletPreferences portletPreferences) throws Exception;
 
-   public <S, I> I getId(ApplicationType<S, I> type, ApplicationState<S> state) throws Exception;
+   public <S> String getId(ApplicationState<S> state) throws Exception;
 
    public <S> S load(ApplicationState<S> state) throws Exception;
 

Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/DataStorageImpl.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/DataStorageImpl.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/DataStorageImpl.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -22,7 +22,6 @@
 import org.exoplatform.commons.utils.ListAccess;
 import org.exoplatform.portal.application.PortletPreferences;
 import org.exoplatform.portal.config.model.ApplicationState;
-import org.exoplatform.portal.config.model.ApplicationType;
 import org.exoplatform.portal.config.model.Container;
 import org.exoplatform.portal.config.model.Dashboard;
 import org.exoplatform.portal.config.model.ModelChange;
@@ -244,9 +243,9 @@
       return find(q, null);
    }
 
-   public <S, I> I getId(ApplicationType<S, I> type, ApplicationState<S> state) throws Exception
+   public <S> String getId(ApplicationState<S> state) throws Exception
    {
-      return delegate.getId(type, state);
+      return delegate.getId(state);
    }
 
    public void save(PortletPreferences portletPreferences) throws Exception

Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/Application.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/Application.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/Application.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -29,7 +29,7 @@
  * @email:   tuan08 at users.sourceforge.net
  * @version: $Id: Portlet.java,v 1.7 2004/09/30 01:00:05 tuan08 Exp $
  **/
-public abstract class Application<S, I> extends ModelObject
+public abstract class Application<S> extends ModelObject
 {
 
    /** The application state. */
@@ -61,7 +61,7 @@
 
    private boolean isModifiable;
 
-   public Application(ApplicationData<S, I> data)
+   public Application(ApplicationData<S> data)
    {
       super(data.getStorageId());
 
@@ -95,7 +95,7 @@
       super();
    }
 
-   public abstract ApplicationType<S, I> getType();
+   public abstract ApplicationType<S> getType();
 
    public String getWidth()
    {
@@ -242,7 +242,7 @@
    @Override
    public ModelData build()
    {
-      return new ApplicationData<S,I>(
+      return new ApplicationData<S>(
          storageId,
          storageName,
          getType(),

Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/ApplicationType.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/ApplicationType.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/ApplicationType.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -19,9 +19,6 @@
 
 package org.exoplatform.portal.config.model;
 
-import org.exoplatform.portal.config.model.gadget.GadgetId;
-import org.exoplatform.portal.config.model.portlet.PortletId;
-import org.exoplatform.portal.config.model.wsrp.WSRPId;
 import org.exoplatform.portal.pom.spi.gadget.Gadget;
 import org.exoplatform.portal.pom.spi.portlet.Preferences;
 import org.exoplatform.portal.pom.spi.wsrp.WSRP;
@@ -33,12 +30,11 @@
  * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>
  * @version $Revision$
  * @param <S> the content state type of the application
- * @param <I> the id type of the application
  */
-public class ApplicationType<S, I>
+public class ApplicationType<S>
 {
 
-   public static ApplicationType<?, ?> getType(String name)
+   public static ApplicationType<?> getType(String name)
    {
       if (PORTLET.getName().equals(name))
       {
@@ -58,19 +54,19 @@
       }
    }
 
-   public static <S> ApplicationType<S, ?> getType(ContentType<S> name)
+   public static <S> ApplicationType<S> getType(ContentType<S> name)
    {
       if (PORTLET.getContentType().equals(name))
       {
-         return (ApplicationType<S,?>)ApplicationType.PORTLET;
+         return (ApplicationType<S>)ApplicationType.PORTLET;
       }
       else if (GADGET.getContentType().equals(name))
       {
-         return (ApplicationType<S,?>)ApplicationType.GADGET;
+         return (ApplicationType<S>)ApplicationType.GADGET;
       }
       else if (WSRP_PORTLET.getContentType().equals(name))
       {
-         return (ApplicationType<S,?>)ApplicationType.WSRP_PORTLET;
+         return (ApplicationType<S>)ApplicationType.WSRP_PORTLET;
       }
       else
       {
@@ -79,13 +75,13 @@
    }
 
    /** . */
-   public static final ApplicationType<Preferences, PortletId> PORTLET = new ApplicationType<Preferences, PortletId>(Preferences.CONTENT_TYPE, "portlet");
+   public static final ApplicationType<Preferences> PORTLET = new ApplicationType<Preferences>(Preferences.CONTENT_TYPE, "portlet");
 
    /** . */
-   public static final ApplicationType<Gadget, GadgetId> GADGET = new ApplicationType<Gadget, GadgetId>(Gadget.CONTENT_TYPE, "gadget");
+   public static final ApplicationType<Gadget> GADGET = new ApplicationType<Gadget>(Gadget.CONTENT_TYPE, "gadget");
 
    /** . */
-   public static final ApplicationType<WSRP, WSRPId> WSRP_PORTLET = new ApplicationType<WSRP, WSRPId>(WSRP.CONTENT_TYPE, "wsrp");
+   public static final ApplicationType<WSRP> WSRP_PORTLET = new ApplicationType<WSRP>(WSRP.CONTENT_TYPE, "wsrp");
 
    /** . */
    private final ContentType<S> contentType;

Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/ModelObject.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/ModelObject.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/ModelObject.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -20,11 +20,8 @@
 package org.exoplatform.portal.config.model;
 
 import org.exoplatform.portal.config.model.gadget.GadgetApplication;
-import org.exoplatform.portal.config.model.gadget.GadgetId;
 import org.exoplatform.portal.config.model.portlet.PortletApplication;
-import org.exoplatform.portal.config.model.portlet.PortletId;
 import org.exoplatform.portal.config.model.wsrp.WSRPApplication;
-import org.exoplatform.portal.config.model.wsrp.WSRPId;
 import org.exoplatform.portal.pom.data.ApplicationData;
 import org.exoplatform.portal.pom.data.BodyData;
 import org.exoplatform.portal.pom.data.ContainerData;
@@ -108,15 +105,15 @@
          ApplicationType type = applicationData.getType();
          if (ApplicationType.PORTLET == type)
          {
-            return new PortletApplication((ApplicationData<Preferences, PortletId>)applicationData);
+            return new PortletApplication((ApplicationData<Preferences>)applicationData);
          }
          else if (ApplicationType.GADGET == type)
          {
-            return new GadgetApplication((ApplicationData<Gadget, GadgetId>)applicationData);
+            return new GadgetApplication((ApplicationData<Gadget>)applicationData);
          }
          else if (ApplicationType.WSRP_PORTLET == type)
          {
-            return new WSRPApplication((ApplicationData<WSRP, WSRPId>)applicationData);
+            return new WSRPApplication((ApplicationData<WSRP>)applicationData);
          }
          else
          {

Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/gadget/GadgetApplication.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/gadget/GadgetApplication.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/gadget/GadgetApplication.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -28,10 +28,10 @@
  * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>
  * @version $Revision$
  */
-public class GadgetApplication extends Application<Gadget, GadgetId>
+public class GadgetApplication extends Application<Gadget>
 {
 
-   public GadgetApplication(ApplicationData<Gadget, GadgetId> data)
+   public GadgetApplication(ApplicationData<Gadget> data)
    {
       super(data);
    }
@@ -45,7 +45,7 @@
    {
    }
 
-   public ApplicationType<Gadget, GadgetId> getType()
+   public ApplicationType<Gadget> getType()
    {
       return ApplicationType.GADGET;
    }

Deleted: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/gadget/GadgetId.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/gadget/GadgetId.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/gadget/GadgetId.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -1,43 +0,0 @@
-/**
- * Copyright (C) 2009 eXo Platform SAS.
- * 
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- * 
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- * 
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-package org.exoplatform.portal.config.model.gadget;
-
-/**
- * The id of a gadget that is an immutable class.
- *
- * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>
- * @version $Revision$
- */
-public class GadgetId
-{
-
-   /** . */
-   private final String gadgetName;
-
-   public GadgetId(String gadgetName)
-   {
-      this.gadgetName = gadgetName;
-   }
-
-   public String getGadgetName()
-   {
-      return gadgetName;
-   }
-}

Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/portlet/PortletApplication.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/portlet/PortletApplication.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/portlet/PortletApplication.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -28,10 +28,10 @@
  * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>
  * @version $Revision$
  */
-public class PortletApplication extends Application<Preferences, PortletId>
+public class PortletApplication extends Application<Preferences>
 {
 
-   public PortletApplication(ApplicationData<Preferences, PortletId> data)
+   public PortletApplication(ApplicationData<Preferences> data)
    {
       super(data);
    }
@@ -46,7 +46,7 @@
       super();
    }
 
-   public ApplicationType<Preferences, PortletId> getType()
+   public ApplicationType<Preferences> getType()
    {
       return ApplicationType.PORTLET;
    }

Deleted: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/portlet/PortletId.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/portlet/PortletId.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/portlet/PortletId.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -1,85 +0,0 @@
-/**
- * Copyright (C) 2009 eXo Platform SAS.
- * 
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- * 
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- * 
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-package org.exoplatform.portal.config.model.portlet;
-
-import org.exoplatform.commons.utils.Safe;
-
-/**
- * The immutable id of a portlet application.
- *
- * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>
- * @version $Revision$
- */
-public class PortletId
-{
-
-   /** . */
-   private final String applicationName;
-
-   /** . */
-   private final String portletName;
-
-   public PortletId(String applicationName, String portletName)
-   {
-      if (applicationName == null)
-      {
-         throw new NullPointerException();
-      }
-      if (portletName == null)
-      {
-         throw new NullPointerException();
-      }
-
-      //
-      this.applicationName = applicationName;
-      this.portletName = portletName;
-   }
-
-   public String getApplicationName()
-   {
-      return applicationName;
-   }
-
-   public String getPortletName()
-   {
-      return portletName;
-   }
-
-   @Override
-   public boolean equals(Object obj)
-   {
-      if (obj == this)
-      {
-         return true;
-      }
-      if (obj instanceof PortletId)
-      {
-         PortletId that = (PortletId)obj;
-         return Safe.equals(applicationName, that.applicationName) && Safe.equals(portletName, that.portletName);
-      }
-      return false;
-   }
-
-   @Override
-   public String toString()
-   {
-      return "PortletId[applicationName=" + applicationName + ",portletName=" + portletName + "]";
-   }
-}

Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/wsrp/WSRPApplication.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/wsrp/WSRPApplication.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/wsrp/WSRPApplication.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -28,9 +28,9 @@
  * @author <a href="mailto:chris.laprun at jboss.com">Chris Laprun</a>
  * @version $Revision$
  */
-public class WSRPApplication extends Application<WSRP, WSRPId>
+public class WSRPApplication extends Application<WSRP>
 {
-   public WSRPApplication(ApplicationData<WSRP, WSRPId> wsrpwsrpIdApplicationData)
+   public WSRPApplication(ApplicationData<WSRP> wsrpwsrpIdApplicationData)
    {
       super(wsrpwsrpIdApplicationData);
    }
@@ -46,7 +46,7 @@
    }
 
    @Override
-   public ApplicationType<WSRP, WSRPId> getType()
+   public ApplicationType<WSRP> getType()
    {
       return ApplicationType.WSRP_PORTLET;
    }

Deleted: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/wsrp/WSRPId.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/wsrp/WSRPId.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/config/model/wsrp/WSRPId.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -1,45 +0,0 @@
-/**
- * Copyright (C) 2009 eXo Platform SAS.
- * 
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- * 
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- * 
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-package org.exoplatform.portal.config.model.wsrp;
-
-/**
- * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>
- * @version $Revision$
- */
-public class WSRPId
-{
-   /** . */
-   private String uri;
-
-   public WSRPId(String uri)
-   {
-      this.uri = uri;
-   }
-
-   public String getUri()
-   {
-      return uri;
-   }
-
-   public void setUri(String uri)
-   {
-      this.uri = uri;
-   }
-}

Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/config/POMDataStorage.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/config/POMDataStorage.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/config/POMDataStorage.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -26,14 +26,10 @@
 import org.exoplatform.portal.config.Query;
 import org.exoplatform.portal.config.model.Application;
 import org.exoplatform.portal.config.model.ApplicationState;
-import org.exoplatform.portal.config.model.ApplicationType;
 import org.exoplatform.portal.config.model.CloneApplicationState;
 import org.exoplatform.portal.config.model.Container;
 import org.exoplatform.portal.config.model.ModelChange;
 import org.exoplatform.portal.config.model.ModelObject;
-import org.exoplatform.portal.config.model.gadget.GadgetId;
-import org.exoplatform.portal.config.model.portlet.PortletId;
-import org.exoplatform.portal.config.model.wsrp.WSRPId;
 import org.exoplatform.portal.pom.config.cache.DataCache;
 import org.exoplatform.portal.pom.config.tasks.DashboardTask;
 import org.exoplatform.portal.pom.data.DashboardData;
@@ -197,7 +193,7 @@
       execute(new PortletPreferencesTask.Save(portletPreferences));
    }
 
-   public <S, I> I getId(ApplicationType<S, I> type, ApplicationState<S> state) throws Exception
+   public <S> String getId(ApplicationState<S> state) throws Exception
    {
       String contentId;
       if (state instanceof TransientApplicationState)
@@ -221,23 +217,7 @@
       }
 
       //
-      if (type == ApplicationType.PORTLET)
-      {
-         String[] chunks = contentId.split("/");
-         return (I)new PortletId(chunks[0], chunks[1]);
-      }
-      else if (type == ApplicationType.GADGET)
-      {
-         return (I)new GadgetId(contentId);
-      }
-      else if (type == ApplicationType.WSRP_PORTLET)
-      {
-         return (I)new WSRPId(contentId);
-      }
-      else
-      {
-         throw new UnsupportedOperationException();
-      }
+      return contentId;
    }
 
    public <S> S load(ApplicationState<S> state) throws Exception

Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/data/ApplicationData.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/data/ApplicationData.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/data/ApplicationData.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -28,11 +28,11 @@
  * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>
  * @version $Revision$
  */
-public class ApplicationData<S, I> extends ComponentData
+public class ApplicationData<S> extends ComponentData
 {
 
    /** . */
-   private final ApplicationType<S, I> type;
+   private final ApplicationType<S> type;
 
    /** . */
    private final ApplicationState<S> state;
@@ -76,7 +76,7 @@
    public ApplicationData(
       String storageId,
       String storageName,
-      ApplicationType<S, I> type,
+      ApplicationType<S> type,
       ApplicationState<S> state,
       String id,
       String title,
@@ -109,7 +109,7 @@
       this.accessPermissions = accessPermissions;
    }
 
-   public ApplicationType<S, I> getType()
+   public ApplicationType<S> getType()
    {
       return type;
    }

Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/data/Mapper.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/data/Mapper.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/data/Mapper.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -27,12 +27,9 @@
 import org.exoplatform.portal.config.model.PersistentApplicationState;
 import org.exoplatform.portal.config.model.PortalConfig;
 import org.exoplatform.portal.config.model.TransientApplicationState;
-import org.exoplatform.portal.config.model.portlet.PortletId;
 import org.exoplatform.portal.pom.config.POMSession;
 import org.exoplatform.portal.pom.config.Utils;
-import org.exoplatform.portal.pom.spi.gadget.Gadget;
 import org.exoplatform.portal.pom.spi.portlet.Preferences;
-import org.exoplatform.portal.pom.spi.wsrp.WSRP;
 import org.gatein.mop.api.Attributes;
 import org.gatein.mop.api.content.ContentType;
 import org.gatein.mop.api.content.Customization;
@@ -440,7 +437,7 @@
                   owner.getName(),
                   null
                );
-               mo = new ApplicationData<Preferences, PortletId>(
+               mo = new ApplicationData<Preferences>(
                   srcContainer.getObjectId(),
                   component.getName(),
                   ApplicationType.PORTLET,
@@ -515,7 +512,7 @@
       }
       else if (src instanceof ApplicationData)
       {
-         save((ApplicationData<?, ?>)src, (UIWindow)dst);
+         save((ApplicationData<?>)src, (UIWindow)dst);
       }
       else if (src instanceof BodyData)
       {
@@ -527,9 +524,6 @@
       }
    }
 
-   /** . */
-   private static final PortletId DASHBOARD_ID = new PortletId("dashboard", "DashboardPortlet");
-
    private LinkedList<ModelChange> saveChildren(final ContainerData src, UIContainer dst)
    {
 
@@ -736,7 +730,7 @@
       }
    }
 
-   private <S, I> ApplicationData<S, I> load(UIWindow src)
+   private <S> ApplicationData<S> load(UIWindow src)
    {
       Attributes attrs = src.getAttributes();
 
@@ -749,8 +743,8 @@
       //
       String customizationid = customization.getId();
 
-      //
-      ApplicationType<S, I> type = (ApplicationType<S,I>)ApplicationType.getType(contentType);
+      // julien: should type check that
+      ApplicationType<S> type = (ApplicationType<S>)ApplicationType.getType(contentType);
 
       //
       PersistentApplicationState<S> instanceState = new PersistentApplicationState<S>(customizationid);
@@ -760,7 +754,7 @@
       load(attrs, properties, windowPropertiesBlackList);
 
       //
-      return new ApplicationData<S,I>(
+      return new ApplicationData<S>(
          src.getObjectId(),
          src.getName(),
          type,
@@ -780,7 +774,7 @@
       );
    }
 
-   public <S, I> void save(ApplicationData<S, I> src, UIWindow dst)
+   public <S, I> void save(ApplicationData<S> src, UIWindow dst)
    {
       Attributes attrs = dst.getAttributes();
       attrs.setValue(MappedAttributes.THEME, src.getTheme());

Modified: portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/data/ModelDataStorage.java
===================================================================
--- portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/data/ModelDataStorage.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/main/java/org/exoplatform/portal/pom/data/ModelDataStorage.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -92,7 +92,7 @@
 
    public void save(PortletPreferences portletPreferences) throws Exception;
 
-   public <S, I> I getId(ApplicationType<S, I> type, ApplicationState<S> state) throws Exception;
+   public <S> String getId(ApplicationState<S> state) throws Exception;
 
    public <S> S load(ApplicationState<S> state) throws Exception;
 

Modified: portal/trunk/component/portal/src/test/java/org/exoplatform/portal/config/TestDataStorage.java
===================================================================
--- portal/trunk/component/portal/src/test/java/org/exoplatform/portal/config/TestDataStorage.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/test/java/org/exoplatform/portal/config/TestDataStorage.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -26,7 +26,6 @@
 import org.exoplatform.portal.application.Preference;
 import org.exoplatform.portal.config.model.Application;
 import org.exoplatform.portal.config.model.ApplicationState;
-import org.exoplatform.portal.config.model.ApplicationType;
 import org.exoplatform.portal.config.model.Container;
 import org.exoplatform.portal.config.model.Dashboard;
 import org.exoplatform.portal.config.model.ModelChange;
@@ -35,9 +34,7 @@
 import org.exoplatform.portal.config.model.PortalConfig;
 import org.exoplatform.portal.config.model.TransientApplicationState;
 import org.exoplatform.portal.config.model.gadget.GadgetApplication;
-import org.exoplatform.portal.config.model.gadget.GadgetId;
 import org.exoplatform.portal.config.model.portlet.PortletApplication;
-import org.exoplatform.portal.config.model.portlet.PortletId;
 import org.exoplatform.portal.pom.config.POMSessionManager;
 import org.exoplatform.portal.pom.spi.gadget.Gadget;
 import org.exoplatform.portal.pom.spi.portlet.Preferences;
@@ -304,7 +301,7 @@
       storage_.save(page);
       page = storage_.getPage(page.getPageId());
       app = (PortletApplication)page.getChildren().get(0);
-      assertEquals(new PortletId("web", "BannerPortlet"), storage_.getId(ApplicationType.PORTLET, app.getState()));
+      assertEquals("web/BannerPortlet", storage_.getId(app.getState()));
    }
 
    public void testPageMerge() throws Exception
@@ -383,7 +380,7 @@
       ApplicationState<Preferences> instanceId = banner1.getState();
 
       // Check instance id format
-      assertEquals(new PortletId("web", "BannerPortlet"), storage_.getId(ApplicationType.PORTLET, banner1.getState()));
+      assertEquals("web/BannerPortlet", storage_.getId(banner1.getState()));
 
       // Check state
       Preferences pagePrefs = storage_.load(instanceId);
@@ -400,7 +397,7 @@
       instanceId = banner1.getState();
 
       // Check instance id format
-      assertEquals(new PortletId("web", "BannerPortlet"), storage_.getId(ApplicationType.PORTLET, banner1.getState()));
+      assertEquals("web/BannerPortlet", storage_.getId(banner1.getState()));
 
       // Update site prefs
       PortletPreferences sitePrefs = new PortletPreferences();
@@ -450,7 +447,7 @@
       String dashboardId = dashboardPortlet.getStorageId();
       assertNotNull(dashboardId);
       assertNotNull(dashboardPortlet.getStorageName());
-      assertEquals(new PortletId("dashboard", "DashboardPortlet"), storage_.getId(ApplicationType.PORTLET, dashboardPortlet.getState()));
+      assertEquals("dashboard/DashboardPortlet", storage_.getId(dashboardPortlet.getState()));
 
       // Configures the dashboard
       Dashboard dashboard = new Dashboard(dashboardId);
@@ -471,7 +468,7 @@
       dashboard = storage_.loadDashboard(dashboardId);
       assertEquals(1, dashboard.getChildren().size());
       app = (PortletApplication)dashboard.getChildren().get(0);
-      assertEquals(new PortletId("foo", "bar"), storage_.getId(ApplicationType.PORTLET, app.getState()));
+      assertEquals("foo/bar", storage_.getId(app.getState()));
    }
 
    public void _testDashboardLayout() throws Exception
@@ -543,7 +540,7 @@
       assertEquals(0, row0.getChildren().size());
       assertEquals(1, row1.getChildren().size());
       gadgetApp = (GadgetApplication)row1.getChildren().get(0);
-      assertEquals(new GadgetId("foo"), storage_.getId(ApplicationType.GADGET, gadgetApp.getState()));
+      assertEquals("foo", storage_.getId(gadgetApp.getState()));
    }
 
    public void _testDashboardMoveLeft() throws Exception
@@ -587,7 +584,7 @@
       assertEquals(0, row1.getChildren().size());
       assertEquals(1, row0.getChildren().size());
       gadgetApp = (GadgetApplication)row0.getChildren().get(0);
-      assertEquals(new GadgetId("foo"), storage_.getId(ApplicationType.GADGET, gadgetApp.getState()));
+      assertEquals("foo", storage_.getId(gadgetApp.getState()));
    }
 
    private PortletApplication create(String instanceId)

Modified: portal/trunk/component/portal/src/test/java/org/exoplatform/portal/config/TestUserPortalConfigService.java
===================================================================
--- portal/trunk/component/portal/src/test/java/org/exoplatform/portal/config/TestUserPortalConfigService.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/test/java/org/exoplatform/portal/config/TestUserPortalConfigService.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -24,14 +24,12 @@
 import org.exoplatform.container.PortalContainer;
 import org.exoplatform.portal.application.PortletPreferences;
 import org.exoplatform.portal.config.model.ApplicationState;
-import org.exoplatform.portal.config.model.ApplicationType;
 import org.exoplatform.portal.config.model.Container;
 import org.exoplatform.portal.config.model.Page;
 import org.exoplatform.portal.config.model.PageBody;
 import org.exoplatform.portal.config.model.PageNavigation;
 import org.exoplatform.portal.config.model.PortalConfig;
 import org.exoplatform.portal.config.model.portlet.PortletApplication;
-import org.exoplatform.portal.config.model.portlet.PortletId;
 import org.exoplatform.portal.pom.config.POMSession;
 import org.exoplatform.portal.pom.config.POMSessionManager;
 import org.exoplatform.portal.pom.spi.portlet.Preferences;
@@ -645,7 +643,7 @@
             PortletApplication app = (PortletApplication)clone.getChildren().get(0);
             assertEquals("Dashboard", app.getTitle());
             assertNotNull(app.getState());
-            assertEquals(new PortletId("dashboard", "DashboardPortlet"), storage_.getId(ApplicationType.PORTLET, app.getState()));
+            assertEquals("dashboard/DashboardPortlet", storage_.getId(app.getState()));
             //        assertEquals("portal", app.getInstanceState().getOwnerType());
             //        assertEquals("test", app.getInstanceState().getOwnerId());
             Preferences prefs2 = storage_.load(app.getState());
@@ -669,7 +667,7 @@
             assertTrue(container.getChildren().get(1) instanceof PortletApplication);
             PortletApplication pa = (PortletApplication)container.getChildren().get(1);
             ApplicationState state = pa.getState();
-            assertEquals(new PortletId("overwrite_application_ref", "overwrite_portlet_ref"), storage_.getId(ApplicationType.PORTLET, pa.getState()));
+            assertEquals("overwrite_application_ref/overwrite_portlet_ref", storage_.getId(pa.getState()));
          }
       }.execute(null);
    }
@@ -702,7 +700,7 @@
             assertTrue(container.getChildren().get(1) instanceof PortletApplication);
             PortletApplication pa = (PortletApplication)container.getChildren().get(1);
             ApplicationState state = pa.getState();
-            assertEquals(new PortletId("foo", "bar"), storage_.getId(ApplicationType.PORTLET, pa.getState()));
+            assertEquals("foo/bar", storage_.getId(pa.getState()));
          }
       }.execute(null);
    }

Modified: portal/trunk/component/portal/src/test/java/org/exoplatform/portal/config/WSRPTest.java
===================================================================
--- portal/trunk/component/portal/src/test/java/org/exoplatform/portal/config/WSRPTest.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/component/portal/src/test/java/org/exoplatform/portal/config/WSRPTest.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -23,7 +23,6 @@
 import org.exoplatform.portal.config.model.Page;
 import org.exoplatform.portal.config.model.TransientApplicationState;
 import org.exoplatform.portal.config.model.wsrp.WSRPApplication;
-import org.exoplatform.portal.config.model.wsrp.WSRPId;
 import org.exoplatform.portal.pom.config.POMSession;
 import org.exoplatform.portal.pom.config.POMSessionManager;
 import org.exoplatform.portal.pom.spi.wsrp.WSRP;

Modified: portal/trunk/webui/eXo/src/main/java/org/exoplatform/web/command/handler/GetApplicationHandler.java
===================================================================
--- portal/trunk/webui/eXo/src/main/java/org/exoplatform/web/command/handler/GetApplicationHandler.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/webui/eXo/src/main/java/org/exoplatform/web/command/handler/GetApplicationHandler.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -46,9 +46,9 @@
 public class GetApplicationHandler extends Command
 {
 
-   private ApplicationType<?, ?>[] applicationType;
+   private ApplicationType<?>[] applicationType;
 
-   public void setApplicationTypes(ApplicationType<?, ?>[] type)
+   public void setApplicationTypes(ApplicationType<?>[] type)
    {
       applicationType = type;
    }
@@ -77,7 +77,7 @@
          (ApplicationRegistryService)container.getComponentInstanceOfType(ApplicationRegistryService.class);
 
       if (applicationType == null)
-         applicationType = new ApplicationType<?, ?>[0];
+         applicationType = new ApplicationType<?>[0];
       List<ApplicationCategory> appCategories = prService.getApplicationCategories(remoteUser, applicationType);
       ApplicationCategoryToJSONPlugin toJSON = new ApplicationCategoryToJSONPlugin();
 

Modified: portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/ModelAdapter.java
===================================================================
--- portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/ModelAdapter.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/ModelAdapter.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -26,11 +26,9 @@
 import org.exoplatform.portal.config.model.ApplicationType;
 import org.exoplatform.portal.config.model.PersistentApplicationState;
 import org.exoplatform.portal.config.model.TransientApplicationState;
-import org.exoplatform.portal.config.model.gadget.GadgetId;
-import org.exoplatform.portal.config.model.portlet.PortletId;
-import org.exoplatform.portal.config.model.wsrp.WSRPId;
 import org.exoplatform.portal.pc.ExoPortletState;
 import org.exoplatform.portal.pc.ExoPortletStateType;
+import org.exoplatform.portal.pom.config.Utils;
 import org.exoplatform.portal.pom.spi.gadget.Gadget;
 import org.exoplatform.portal.pom.spi.portlet.Preference;
 import org.exoplatform.portal.pom.spi.portlet.Preferences;
@@ -51,24 +49,24 @@
  * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>
  * @version $Revision$
  */
-public abstract class ModelAdapter<S, C extends Serializable, I>
+public abstract class ModelAdapter<S, C extends Serializable>
 {
 
-   public static <S, C extends Serializable, I> ModelAdapter<S, C, I> getAdapter(ApplicationType<S, I> type)
+   public static <S, C extends Serializable, I> ModelAdapter<S, C> getAdapter(ApplicationType<S> type)
    {
       if (type == ApplicationType.PORTLET)
       {
-         @SuppressWarnings("unchecked") ModelAdapter<S, C, I> adapter = (ModelAdapter<S, C, I>)PORTLET;
+         @SuppressWarnings("unchecked") ModelAdapter<S, C> adapter = (ModelAdapter<S, C>)PORTLET;
          return adapter;
       }
       else if (type == ApplicationType.GADGET)
       {
-         @SuppressWarnings("unchecked") ModelAdapter<S, C, I> adapter = (ModelAdapter<S, C, I>)GADGET;
+         @SuppressWarnings("unchecked") ModelAdapter<S, C> adapter = (ModelAdapter<S, C>)GADGET;
          return adapter;
       }
       else if (type == ApplicationType.WSRP_PORTLET)
       {
-         @SuppressWarnings("unchecked") ModelAdapter<S, C, I> adapter = (ModelAdapter<S, C, I>)WSRP;
+         @SuppressWarnings("unchecked") ModelAdapter<S, C> adapter = (ModelAdapter<S, C>)WSRP;
          return adapter;
       }
       else
@@ -78,11 +76,11 @@
    }
 
    /** . */
-   private static final ModelAdapter<Preferences, ExoPortletState, PortletId> PORTLET = new ModelAdapter<Preferences, ExoPortletState, PortletId>()
+   private static final ModelAdapter<Preferences, ExoPortletState> PORTLET = new ModelAdapter<Preferences, ExoPortletState>()
    {
 
       @Override
-      public StatefulPortletContext<ExoPortletState> getPortletContext(ExoContainer container, PortletId applicationId, ApplicationState<Preferences> applicationState) throws Exception
+      public StatefulPortletContext<ExoPortletState> getPortletContext(ExoContainer container, String applicationId, ApplicationState<Preferences> applicationState) throws Exception
       {
          DataStorage dataStorage = (DataStorage)container.getComponentInstanceOfType(DataStorage.class);
          Preferences preferences = dataStorage.load(applicationState);
@@ -123,10 +121,11 @@
       }
 
       @Override
-      public PortletContext getProducerOfferedPortletContext(PortletId applicationState)
+      public PortletContext getProducerOfferedPortletContext(String applicationState)
       {
-         String appName = applicationState.getApplicationName();
-         String portletName = applicationState.getPortletName();
+         String[] chunks = Utils.split("/", applicationState);
+         String appName = chunks[0];
+         String portletName = chunks[1];
          return PortletContext.createPortletContext(PortletInvoker.LOCAL_PORTLET_INVOKER_ID + "./" + appName + "." + portletName);
       }
 
@@ -149,7 +148,7 @@
       }
    };
 
-   private static final ModelAdapter<Gadget, ExoPortletState, GadgetId> GADGET = new ModelAdapter<Gadget, ExoPortletState, GadgetId>()
+   private static final ModelAdapter<Gadget, ExoPortletState> GADGET = new ModelAdapter<Gadget, ExoPortletState>()
    {
 
       /** . */
@@ -159,10 +158,10 @@
       private final PortletContext WRAPPER_CONTEXT = PortletContext.createPortletContext(WRAPPER_ID);
 
       @Override
-      public StatefulPortletContext<ExoPortletState> getPortletContext(ExoContainer container, GadgetId applicationId, ApplicationState<Gadget> applicationState) throws Exception
+      public StatefulPortletContext<ExoPortletState> getPortletContext(ExoContainer container, String applicationId, ApplicationState<Gadget> applicationState) throws Exception
       {
          GadgetRegistryService gadgetService = (GadgetRegistryService)container.getComponentInstanceOfType(GadgetRegistryService.class);
-         org.exoplatform.application.gadget.Gadget model = gadgetService.getGadget(applicationId.getGadgetName());
+         org.exoplatform.application.gadget.Gadget model = gadgetService.getGadget(applicationId);
          GadgetApplication application = new GadgetApplication(model.getName(), model.getUrl(), model.isLocal());
          String url = GadgetUtil.reproduceUrl(application.getUrl(), application.isLocal());
          ExoPortletState prefs = new ExoPortletState(WRAPPER_ID);
@@ -177,7 +176,7 @@
       }
 
       @Override
-      public PortletContext getProducerOfferedPortletContext(GadgetId applicationState)
+      public PortletContext getProducerOfferedPortletContext(String applicationState)
       {
          return WRAPPER_CONTEXT;
       }
@@ -191,7 +190,7 @@
    };
 
 
-   private static final ModelAdapter<WSRP, WSRP, WSRPId> WSRP = new ModelAdapter<WSRP, WSRP, WSRPId>()
+   private static final ModelAdapter<WSRP, WSRP> WSRP = new ModelAdapter<WSRP, WSRP>()
    {
       @Override
       public Preferences getState(ExoContainer container, ApplicationState<WSRP> state) throws Exception
@@ -200,20 +199,20 @@
       }
 
       @Override
-      public PortletContext getProducerOfferedPortletContext(WSRPId applicationId)
+      public PortletContext getProducerOfferedPortletContext(String applicationId)
       {
-         return PortletContext.createPortletContext(applicationId.getUri());
+         return PortletContext.createPortletContext(applicationId);
       }
 
       @Override
-      public StatefulPortletContext<WSRP> getPortletContext(ExoContainer container, WSRPId applicationId, ApplicationState<WSRP> state) throws Exception
+      public StatefulPortletContext<WSRP> getPortletContext(ExoContainer container, String applicationId, ApplicationState<WSRP> state) throws Exception
       {
          DataStorage dataStorage = (DataStorage)container.getComponentInstanceOfType(DataStorage.class);
          WSRP wsrp = dataStorage.load(state);
          if (wsrp == null)
          {
             wsrp = new WSRP();
-            wsrp.setPortletId(applicationId.getUri());
+            wsrp.setPortletId(applicationId);
          }
          return StatefulPortletContext.create(wsrp.getPortletId(), WSRPPortletStateType.instance, wsrp);
       }
@@ -236,9 +235,9 @@
       }
    };
 
-   public abstract PortletContext getProducerOfferedPortletContext(I applicationId);
+   public abstract PortletContext getProducerOfferedPortletContext(String applicationId);
 
-   public abstract StatefulPortletContext<C> getPortletContext(ExoContainer container, I applicationId, ApplicationState<S> applicationState) throws Exception;
+   public abstract StatefulPortletContext<C> getPortletContext(ExoContainer container, String applicationId, ApplicationState<S> applicationState) throws Exception;
 
    public abstract ApplicationState<S> update(ExoContainer container, C updateState, ApplicationState<S> applicationState) throws Exception;
 

Modified: portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/PortletState.java
===================================================================
--- portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/PortletState.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/PortletState.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -28,24 +28,23 @@
  * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>
  * @version $Revision$
  * @param <S> the application content state type
- * @param <I> the application id type
  */
-public class PortletState<S, I>
+public class PortletState<S>
 {
 
    /** The application type. */
-   private final ApplicationType<S, I> applicationType;
+   private final ApplicationType<S> applicationType;
 
    /** The application state. */
    private ApplicationState<S> applicationState;
 
-   public PortletState(ApplicationState<S> applicationState, ApplicationType<S, I> applicationType)
+   public PortletState(ApplicationState<S> applicationState, ApplicationType<S> applicationType)
    {
       this.applicationState = applicationState;
       this.applicationType = applicationType;
    }
 
-   public ApplicationType<S, I> getApplicationType()
+   public ApplicationType<S> getApplicationType()
    {
       return applicationType;
    }

Modified: portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIGadget.java
===================================================================
--- portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIGadget.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIGadget.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -24,9 +24,7 @@
 import org.exoplatform.container.ExoContainerContext;
 import org.exoplatform.portal.config.DataStorage;
 import org.exoplatform.portal.config.model.ApplicationState;
-import org.exoplatform.portal.config.model.ApplicationType;
 import org.exoplatform.portal.config.model.Properties;
-import org.exoplatform.portal.config.model.gadget.GadgetId;
 import org.exoplatform.portal.webui.util.Util;
 import org.exoplatform.web.WebAppController;
 import org.exoplatform.web.application.gadget.GadgetApplication;
@@ -66,7 +64,7 @@
    private ApplicationState<org.exoplatform.portal.pom.spi.gadget.Gadget> state;
 
    /** . */
-   private GadgetId gadgetId;
+   private String gadgetId;
 
    private Properties properties_;
 
@@ -136,7 +134,7 @@
          try
          {
             DataStorage ds= getApplicationComponent(DataStorage.class);
-            GadgetId gadgetId = ds.getId(ApplicationType.GADGET, state);
+            String gadgetId = ds.getId(state);
 
             //
             this.gadgetId = gadgetId;
@@ -162,7 +160,7 @@
     */
    public String getApplicationName()
    {
-      return gadgetId.getGadgetName();
+      return gadgetId;
    }
 
    /**
@@ -222,14 +220,14 @@
    private GadgetApplication getApplication()
    {
       WebAppController webController = getApplicationComponent(WebAppController.class);
-      GadgetApplication application = webController.getApplication("eXoGadgets/" + gadgetId.getGadgetName());
+      GadgetApplication application = webController.getApplication("eXoGadgets/" + gadgetId);
       if (application == null)
       {
          GadgetRegistryService gadgetService = getApplicationComponent(GadgetRegistryService.class);
          Gadget model;
          try
          {
-            model = gadgetService.getGadget(gadgetId.getGadgetName());
+            model = gadgetService.getGadget(gadgetId);
          }
          catch (Exception ex)
          {

Modified: portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIPortlet.java
===================================================================
--- portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIPortlet.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIPortlet.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -25,7 +25,6 @@
 import org.exoplatform.portal.application.UserProfileLifecycle;
 import org.exoplatform.portal.config.DataStorage;
 import org.exoplatform.portal.config.model.ApplicationType;
-import org.exoplatform.portal.config.model.portlet.PortletId;
 import org.exoplatform.portal.pom.spi.portlet.Preferences;
 import org.exoplatform.portal.pom.spi.wsrp.WSRP;
 import org.exoplatform.portal.webui.application.UIPortletActionListener.ChangePortletModeActionListener;
@@ -110,7 +109,7 @@
       @EventConfig(phase = Phase.PROCESS, listeners = ProcessEventsActionListener.class)
    }
 )
-public class UIPortlet<S, C extends Serializable, I> extends UIApplication
+public class UIPortlet<S, C extends Serializable> extends UIApplication
 {
 
    protected static final Log log = ExoLogger.getLogger("portal:UIPortlet");
@@ -124,7 +123,7 @@
    private String storageName;
 
    /** . */
-   private ModelAdapter<S, C, I> adapter;
+   private ModelAdapter<S, C> adapter;
 
    /** . */
    private Portlet producedOfferedPortlet;
@@ -136,10 +135,10 @@
    private LocalizedString displayName;
 
    /** . */
-   private PortletState<S, I> state;
+   private PortletState<S> state;
 
    /** . */
-   private I applicationId;
+   private String applicationId;
 
    private String theme_;
    private String portletStyle;
@@ -195,10 +194,10 @@
     */
    public String getSkinId()
    {
-      ApplicationType<S, I> type = state.getApplicationType();
+      ApplicationType<S> type = state.getApplicationType();
       if (type == ApplicationType.PORTLET)
       {
-         return ((PortletId)applicationId).getApplicationName() + "/" + ((PortletId)applicationId).getPortletName();
+         return applicationId;
       }
       else if (type == ApplicationType.GADGET)
       {
@@ -215,7 +214,7 @@
       return storageName;
    }
 
-   public I getApplicationId()
+   public String getApplicationId()
    {
       return applicationId;
    }
@@ -741,12 +740,12 @@
       update(updateState);
    }
 
-   public PortletState<S, I> getState()
+   public PortletState<S> getState()
    {
       return state;
    }
 
-   public void setState(PortletState<S, I> state)
+   public void setState(PortletState<S> state)
    {
       if (state != null)
       {
@@ -754,8 +753,8 @@
          {
             PortletInvoker portletInvoker = getApplicationComponent(PortletInvoker.class);
             DataStorage dataStorage = getApplicationComponent(DataStorage.class);
-            I applicationId = dataStorage.getId(state.getApplicationType(), state.getApplicationState());
-            ModelAdapter<S, C, I> adapter = ModelAdapter.getAdapter(state.getApplicationType());
+            String applicationId = dataStorage.getId(state.getApplicationState());
+            ModelAdapter<S, C> adapter = ModelAdapter.getAdapter(state.getApplicationType());
             PortletContext producerOfferedPortletContext = adapter.getProducerOfferedPortletContext(applicationId);
             Portlet producedOfferedPortlet = portletInvoker.getPortlet(producerOfferedPortletContext);
 

Modified: portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIPortletActionListener.java
===================================================================
--- portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIPortletActionListener.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIPortletActionListener.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -80,11 +80,11 @@
     * same portal page
     */
    static public class ProcessActionActionListener<S, C extends Serializable, I> extends
-      EventListener<UIPortlet<S, C, I>>
+      EventListener<UIPortlet<S, C>>
    {
-      public void execute(Event<UIPortlet<S, C, I>> event) throws Exception
+      public void execute(Event<UIPortlet<S, C>> event) throws Exception
       {
-         UIPortlet<S, C, I> uiPortlet = event.getSource();
+         UIPortlet<S, C> uiPortlet = event.getSource();
          PortalRequestContext prcontext = (PortalRequestContext)event.getRequestContext();
 
          //
@@ -294,11 +294,11 @@
     * processRender() method of the portal is not called as we set the response as complete
     */
    static public class ServeResourceActionListener<S, C extends Serializable, I> extends
-      EventListener<UIPortlet<S, C, I>>
+      EventListener<UIPortlet<S, C>>
    {
-      public void execute(Event<UIPortlet<S, C, I>> event) throws Exception
+      public void execute(Event<UIPortlet<S, C>> event) throws Exception
       {
-         UIPortlet<S, C, I> uiPortlet = event.getSource();
+         UIPortlet<S, C> uiPortlet = event.getSource();
          log.info("Serve Resource for portlet: " + uiPortlet.getPortletContext());
          try
          {
@@ -449,7 +449,7 @@
     * The processEvent() method can also generates IPC events and hence the portal itself will call the
     * ProcessEventsActionListener once again
     */
-   public static <S, C extends Serializable, I> List<javax.portlet.Event> processEvent(UIPortlet<S, C, I> uiPortlet,
+   public static <S, C extends Serializable, I> List<javax.portlet.Event> processEvent(UIPortlet<S, C> uiPortlet,
                                                                                        javax.portlet.Event event)
    {
       log.info("Process Event: " + event.getName() + " for portlet: " + uiPortlet.getState());

Modified: portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIPortletLifecycle.java
===================================================================
--- portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIPortletLifecycle.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/application/UIPortletLifecycle.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -51,7 +51,7 @@
 /**
  * Created by The eXo Platform SAS May 8, 2006
  */
-public class UIPortletLifecycle<S, C extends Serializable, I> extends Lifecycle<UIPortlet<S, C, I>>
+public class UIPortletLifecycle<S, C extends Serializable, I> extends Lifecycle<UIPortlet<S, C>>
 {
 
    protected static Log log = ExoLogger.getLogger("portal:UIPortletLifecycle");
@@ -71,7 +71,7 @@
     * broadcasted and the portlet is added in the list of components to update
     * within the AJAX call
     */
-   public void processAction(UIPortlet<S, C, I> uicomponent, WebuiRequestContext context) throws Exception
+   public void processAction(UIPortlet<S, C> uicomponent, WebuiRequestContext context) throws Exception
    {
       String action = context.getRequestParameter(PortalRequestContext.UI_COMPONENT_ACTION);
       if (action != null)
@@ -146,7 +146,7 @@
     * one, just write in the buffer the content returned by the portlet container
     * 4) If not AJAX, then merge the content with the UIPortlet.gtmpl
     */
-   public void processRender(UIPortlet<S, C, I> uicomponent, WebuiRequestContext context) throws Exception
+   public void processRender(UIPortlet<S, C> uicomponent, WebuiRequestContext context) throws Exception
    {
       PortalRequestContext prcontext = (PortalRequestContext)context;
       ExoContainer container = prcontext.getApplication().getApplicationServiceContainer();

Modified: portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/util/PortalDataMapper.java
===================================================================
--- portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/util/PortalDataMapper.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/util/PortalDataMapper.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -128,22 +128,22 @@
       model.setChildren(children);
    }
 
-   private static <S, I> Application<S, I> toPortletModel(UIPortlet<S, ?, I> uiPortlet)
+   private static <S> Application<S> toPortletModel(UIPortlet<S, ?> uiPortlet)
    {
-      Application<S, I> model;
-      PortletState<S, I> state = uiPortlet.getState();
-      ApplicationType<S, I> type = state.getApplicationType();
+      Application<S> model;
+      PortletState<S> state = uiPortlet.getState();
+      ApplicationType<S> type = state.getApplicationType();
       if (type == ApplicationType.PORTLET)
       {
-         model = (Application<S, I>)new PortletApplication(uiPortlet.getStorageId());
+         model = (Application<S>)new PortletApplication(uiPortlet.getStorageId());
       }
       else if (type == ApplicationType.GADGET)
       {
-         model = (Application<S, I>)new GadgetApplication(uiPortlet.getStorageId());
+         model = (Application<S>)new GadgetApplication(uiPortlet.getStorageId());
       }
       else if (type == ApplicationType.WSRP_PORTLET)
       {
-         model = (Application<S, I>)new WSRPApplication(uiPortlet.getStorageId());
+         model = (Application<S>)new WSRPApplication(uiPortlet.getStorageId());
       }
       else
       {
@@ -234,11 +234,11 @@
     * Fill the UI component with both information from the persistent model and
     * some coming from the portlet.xml defined by the JSR 286 specification
     */
-   private static <S, I> void toUIPortlet(UIPortlet<S, ?, I> uiPortlet, Application<S, I> model) throws Exception
+   private static <S> void toUIPortlet(UIPortlet<S, ?> uiPortlet, Application<S> model) throws Exception
    {
 
       //
-      PortletState<S, I> portletState = new PortletState<S, I>(model.getState(), model.getType());
+      PortletState<S> portletState = new PortletState<S>(model.getState(), model.getType());
 
       /*
        * Fill UI component object with info from the XML file that persist portlet

Modified: portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/workspace/UIWorkingWorkspace.java
===================================================================
--- portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/workspace/UIWorkingWorkspace.java	2009-11-10 22:46:33 UTC (rev 553)
+++ portal/trunk/webui/portal/src/main/java/org/exoplatform/portal/webui/workspace/UIWorkingWorkspace.java	2009-11-10 23:45:49 UTC (rev 554)
@@ -19,8 +19,8 @@
 
 package org.exoplatform.portal.webui.workspace;
 
-import org.exoplatform.portal.config.model.gadget.GadgetId;
-import org.exoplatform.portal.config.model.portlet.PortletId;
+import org.exoplatform.portal.config.model.ApplicationType;
+import org.exoplatform.portal.pom.config.Utils;
 import org.exoplatform.portal.webui.application.UIPortlet;
 import org.exoplatform.portal.webui.portal.UIPortal;
 import org.exoplatform.portal.webui.util.Util;
@@ -79,19 +79,19 @@
 
       for (UIPortlet portlet : portletInstancesInPage)
       {
-         Object applicationId = portlet.getApplicationId();
-         if (applicationId instanceof PortletId)
+         String applicationId = portlet.getApplicationId();
+         ApplicationType<?> type = portlet.getState().getApplicationType();
+         if (type == ApplicationType.PORTLET)
          {
-            PortletId portletId = (PortletId)applicationId;
-            if (portletId.getPortletName().equals(portletName))
+            String[] chunks = Utils.split("/", applicationId);
+            if (chunks[1].equals(portletName))
             {
                Util.getPortalRequestContext().addUIComponentToUpdateByAjax(portlet);
             }
          }
-         else if (applicationId instanceof GadgetId)
+         else if (type == ApplicationType.GADGET)
          {
-            GadgetId gadgetId = (GadgetId)applicationId;
-            if (gadgetId.getGadgetName().equals(portletName))
+            if (applicationId.equals(portletName))
             {
                Util.getPortalRequestContext().addUIComponentToUpdateByAjax(portlet);
             }



More information about the gatein-commits mailing list