[gatein-commits] gatein SVN: r745 - in components/mop/trunk: api/src/main/java/org/gatein/mop/api/content and 14 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Fri Nov 20 13:01:17 EST 2009


Author: julien_viet
Date: 2009-11-20 13:01:16 -0500 (Fri, 20 Nov 2009)
New Revision: 745

Added:
   components/mop/trunk/core/src/main/resources/conf/configuration.xml
   components/mop/trunk/core/src/main/resources/conf/mop-nodetypes.xml
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/TestMOPService.java
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/gadget/
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/
   components/mop/trunk/core/src/test/resources/conf/configuration.xml
   components/mop/trunk/core/src/test/resources/conf/content-nodetypes.xml
Removed:
   components/mop/trunk/core/src/main/java/org/gatein/mop/core/content/
   components/mop/trunk/core/src/main/resources/conf/standalone/
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/gadget/
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/
   components/mop/trunk/core/src/test/resources/conf/standalone/
   components/mop/trunk/core/src/test/resources/indexing-configuration.xml
   components/mop/trunk/core/src/test/resources/synonyms.properties
   components/mop/trunk/spi/src/main/java/org/gatein/mop/spi/content/GetState.java
Modified:
   components/mop/trunk/api/src/main/java/org/gatein/mop/api/content/Customization.java
   components/mop/trunk/core/src/main/java/org/gatein/mop/core/api/MOPService.java
   components/mop/trunk/core/src/main/java/org/gatein/mop/core/api/ModelImpl.java
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/api/AbstractPOMTestCase.java
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/api/content/BiltoTestCase.java
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/api/workspace/content/CustomizationTestCase.java
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/gadget/Gadget.java
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/gadget/GadgetContentProvider.java
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/gadget/GadgetState.java
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PortletContentProvider.java
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PortletDefinition.java
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PortletPreferenceState.java
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PortletPreferencesState.java
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/Preference.java
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/Preferences.java
   components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PreferencesBuilder.java
   components/mop/trunk/pom.xml
   components/mop/trunk/spi/src/main/java/org/gatein/mop/spi/content/ContentProvider.java
Log:
- update to pom dependency 1.0.0-Beta03
- update to chromattic 1.0.0-beta8
- refactored configuration for unit tests
- refactored mop node types to remove the customization types implementations
- moved the customization type code in the unit test package as the portal redefines them



Modified: components/mop/trunk/api/src/main/java/org/gatein/mop/api/content/Customization.java
===================================================================
--- components/mop/trunk/api/src/main/java/org/gatein/mop/api/content/Customization.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/api/src/main/java/org/gatein/mop/api/content/Customization.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -38,6 +38,11 @@
   String getId();
 
   /**
+   * Returns the content this customization refers to.
+   */
+  Content<S> getContent();
+
+  /**
    * Returns the content id this customization refers to.
    *
    * @return the content id

Modified: components/mop/trunk/core/src/main/java/org/gatein/mop/core/api/MOPService.java
===================================================================
--- components/mop/trunk/core/src/main/java/org/gatein/mop/core/api/MOPService.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/main/java/org/gatein/mop/core/api/MOPService.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -43,13 +43,6 @@
 import org.gatein.mop.core.api.workspace.content.ContextSpecialization;
 import org.gatein.mop.core.api.workspace.content.WorkspaceClone;
 import org.gatein.mop.core.api.workspace.content.WorkspaceSpecialization;
-import org.gatein.mop.core.content.portlet.PortletPreferencesState;
-import org.gatein.mop.core.content.portlet.PortletPreferenceState;
-import org.gatein.mop.core.content.portlet.Preferences;
-import org.gatein.mop.core.content.portlet.PortletContentProvider;
-import org.gatein.mop.core.content.gadget.GadgetState;
-import org.gatein.mop.core.content.gadget.Gadget;
-import org.gatein.mop.core.content.gadget.GadgetContentProvider;
 import org.gatein.mop.core.api.content.ContentManagerRegistry;
 import org.gatein.mop.core.api.content.CustomizationContextProviderRegistry;
 
@@ -57,97 +50,113 @@
  * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>
  * @version $Revision$
  */
-public class MOPService {
+public class MOPService
+{
 
-  /** . */
-  private Chromattic chrome;
+   /** . */
+   private Chromattic chrome;
 
-  /** . */
-  private ContentManagerRegistry contentManagerRegistry;
+   /** . */
+   private ContentManagerRegistry contentManagerRegistry;
 
-  /** . */
-  private CustomizationContextProviderRegistry customizationContextResolvers;
+   /** . */
+   private CustomizationContextProviderRegistry customizationContextResolvers;
 
-  /** . */
-  private final ChromatticBuilder builder;
+   /** . */
+   private final ChromatticBuilder builder;
 
-  public MOPService() {
-    ChromatticBuilder builder = ChromatticBuilder.create();
-//    builder.setOption(ChromatticBuilder.INSTRUMENTOR_CLASSNAME, "org.chromattic.cglib.CGLibInstrumentor");
-    builder.setOption(ChromatticBuilder.INSTRUMENTOR_CLASSNAME, "org.chromattic.apt.InstrumentorImpl");
-    builder.setOption(ChromatticBuilder.OBJECT_FORMATTER_CLASSNAME, MOPFormatter.class.getName());
+   public MOPService()
+   {
+      ChromatticBuilder builder = ChromatticBuilder.create();
+      builder.setOption(ChromatticBuilder.INSTRUMENTOR_CLASSNAME, "org.chromattic.apt.InstrumentorImpl");
+      builder.setOption(ChromatticBuilder.OBJECT_FORMATTER_CLASSNAME, MOPFormatter.class.getName());
 
-    //
-    this.builder = builder;
-  }
+      //
+      this.builder = builder;
+   }
 
-  public <T> void setOption(ChromatticBuilder.Option<T> option, T value) {
-    builder.setOption(option, value);
-  }
+   public CustomizationContextProviderRegistry getCustomizationContextResolvers()
+   {
+      return customizationContextResolvers;
+   }
 
-  public CustomizationContextProviderRegistry getCustomizationContextResolvers() {
-    return customizationContextResolvers;
-  }
+   public ContentManagerRegistry getContentManagerRegistry()
+   {
+      return contentManagerRegistry;
+   }
 
-  public ContentManagerRegistry getContentManagerRegistry() {
-    return contentManagerRegistry;
-  }
+   protected void configure(CustomizationContextProviderRegistry registry)
+   {
+      //
+   }
 
-  public void start() throws Exception {
-    builder.add(WorkspaceImpl.class);
-    builder.add(UIContainerImpl.class);
-    builder.add(UIWindowImpl.class);
-    builder.add(UIBodyImpl.class);
-    builder.add(PageImpl.class);
-    builder.add(PageContainer.class);
-    builder.add(NavigationImpl.class);
-    builder.add(NavigationContainer.class);
-    builder.add(PageLinkImpl.class);
-    builder.add(URLLinkImpl.class);
-    builder.add(PortalSiteContainer.class);
-    builder.add(PortalSite.class);
-    builder.add(GroupSiteContainer.class);
-    builder.add(GroupSite.class);
-    builder.add(UserSiteContainer.class);
-    builder.add(UserSite.class);
+   protected void configure(ChromatticBuilder builder)
+   {
+      //
+   }
 
-    //
-    builder.add(CustomizationContainer.class);
-    builder.add(ContextTypeContainer.class);
-    builder.add(ContextType.class);
-    builder.add(ContextSpecialization.class);
-    builder.add(WorkspaceClone.class);
-    builder.add(WorkspaceSpecialization.class);
+   protected void configure(ContentManagerRegistry registry)
+   {
+      //
+   }
 
-    //
-    builder.add(PortletPreferencesState.class);
-    builder.add(PortletPreferenceState.class);
+   public void start() throws Exception
+   {
+      builder.add(WorkspaceImpl.class);
+      builder.add(UIContainerImpl.class);
+      builder.add(UIWindowImpl.class);
+      builder.add(UIBodyImpl.class);
+      builder.add(PageImpl.class);
+      builder.add(PageContainer.class);
+      builder.add(NavigationImpl.class);
+      builder.add(NavigationContainer.class);
+      builder.add(PageLinkImpl.class);
+      builder.add(URLLinkImpl.class);
+      builder.add(PortalSiteContainer.class);
+      builder.add(PortalSite.class);
+      builder.add(GroupSiteContainer.class);
+      builder.add(GroupSite.class);
+      builder.add(UserSiteContainer.class);
+      builder.add(UserSite.class);
 
-    //
-    builder.add(GadgetState.class);
+      //
+      builder.add(CustomizationContainer.class);
+      builder.add(ContextTypeContainer.class);
+      builder.add(ContextType.class);
+      builder.add(ContextSpecialization.class);
+      builder.add(WorkspaceClone.class);
+      builder.add(WorkspaceSpecialization.class);
 
-    //
-    chrome = builder.build();
-    
-    //
-    CustomizationContextProviderRegistry customizationContextResolvers = new CustomizationContextProviderRegistry();
+      //
+      configure(builder);
 
-    //
-    ContentManagerRegistry cmr = new ContentManagerRegistry();
-    cmr.register(Preferences.CONTENT_TYPE, new PortletContentProvider());
-    cmr.register(Gadget.CONTENT_TYPE, new GadgetContentProvider());
+      //
+      chrome = builder.build();
 
-    //
-    this.chrome = builder.build();
-    this.contentManagerRegistry = cmr;
-    this.customizationContextResolvers = customizationContextResolvers;
-  }
+      //
+      CustomizationContextProviderRegistry customizationContextResolvers = new CustomizationContextProviderRegistry();
 
-  public ModelImpl getModel() {
-    ChromatticSession chromeSession = chrome.openSession();
-    return new ModelImpl(
-      chromeSession,
-      contentManagerRegistry,
-      customizationContextResolvers);
-  }
+      //
+      configure(customizationContextResolvers);
+
+      //
+      ContentManagerRegistry cmr = new ContentManagerRegistry();
+
+      //
+      configure(cmr);
+
+      //
+      this.chrome = builder.build();
+      this.contentManagerRegistry = cmr;
+      this.customizationContextResolvers = customizationContextResolvers;
+   }
+
+   public ModelImpl getModel()
+   {
+      ChromatticSession chromeSession = chrome.openSession();
+      return new ModelImpl(
+         chromeSession,
+         contentManagerRegistry,
+         customizationContextResolvers);
+   }
 }

Modified: components/mop/trunk/core/src/main/java/org/gatein/mop/core/api/ModelImpl.java
===================================================================
--- components/mop/trunk/core/src/main/java/org/gatein/mop/core/api/ModelImpl.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/main/java/org/gatein/mop/core/api/ModelImpl.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -56,136 +56,174 @@
  * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>
  * @version $Revision$
  */
-public class ModelImpl implements Model {
+public class ModelImpl implements Model
+{
 
-  /** . */
-  private static final Map<ObjectType<?>, Class<? extends WorkspaceObjectImpl>> typeToClassImpl;
+   /** . */
+   private static final Map<ObjectType<?>, Class<? extends WorkspaceObjectImpl>> typeToClassImpl;
 
-  static {
-    Map<ObjectType<?>, Class<? extends WorkspaceObjectImpl>> tmp = new HashMap<ObjectType<?>, Class<? extends WorkspaceObjectImpl>>();
-    tmp.put(ObjectType.ANY, WorkspaceObjectImpl.class);
-    tmp.put(ObjectType.WORKSPACE, WorkspaceImpl.class);
-    tmp.put(ObjectType.SITE, SiteImpl.class);
-    tmp.put(ObjectType.PORTAL_SITE, PortalSite.class);
-    tmp.put(ObjectType.GROUP_SITE, GroupSite.class);
-    tmp.put(ObjectType.USER_SITE, UserSite.class);
-    tmp.put(ObjectType.SHARED_SITE, SharedSite.class);
-    tmp.put(ObjectType.PAGE, PageImpl.class);
-    tmp.put(ObjectType.NAVIGATION, NavigationImpl.class);
-    tmp.put(ObjectType.COMPONENT, UIComponentImpl.class);
-    tmp.put(ObjectType.BODY, UIBodyImpl.class);
-    tmp.put(ObjectType.CONTAINER, UIContainerImpl.class);
-    tmp.put(ObjectType.WINDOW, UIWindowImpl.class);
-    tmp.put(ObjectType.PAGE_LINK, PageLinkImpl.class);
-    tmp.put(ObjectType.URL_LINK, URLLinkImpl.class);
-    typeToClassImpl = tmp;
-  }
+   static
+   {
+      Map<ObjectType<?>, Class<? extends WorkspaceObjectImpl>> tmp = new HashMap<ObjectType<?>, Class<? extends WorkspaceObjectImpl>>();
+      tmp.put(ObjectType.ANY, WorkspaceObjectImpl.class);
+      tmp.put(ObjectType.WORKSPACE, WorkspaceImpl.class);
+      tmp.put(ObjectType.SITE, SiteImpl.class);
+      tmp.put(ObjectType.PORTAL_SITE, PortalSite.class);
+      tmp.put(ObjectType.GROUP_SITE, GroupSite.class);
+      tmp.put(ObjectType.USER_SITE, UserSite.class);
+      tmp.put(ObjectType.SHARED_SITE, SharedSite.class);
+      tmp.put(ObjectType.PAGE, PageImpl.class);
+      tmp.put(ObjectType.NAVIGATION, NavigationImpl.class);
+      tmp.put(ObjectType.COMPONENT, UIComponentImpl.class);
+      tmp.put(ObjectType.BODY, UIBodyImpl.class);
+      tmp.put(ObjectType.CONTAINER, UIContainerImpl.class);
+      tmp.put(ObjectType.WINDOW, UIWindowImpl.class);
+      tmp.put(ObjectType.PAGE_LINK, PageLinkImpl.class);
+      tmp.put(ObjectType.URL_LINK, URLLinkImpl.class);
+      typeToClassImpl = tmp;
+   }
 
-  /** . */
-  private final ChromatticSession session;
+   /** . */
+   private final ChromatticSession session;
 
-  /** . */
-  private final ContentManagerRegistry contentManagers;
+   /** . */
+   private final ContentManagerRegistry contentManagers;
 
-  /** . */
-  private final CustomizationContextProviderRegistry customizationContextResolvers;
+   /** . */
+   private final CustomizationContextProviderRegistry customizationContextResolvers;
 
-  /** . */
-  private WorkspaceImpl workspace;
+   /** . */
+   private WorkspaceImpl workspace;
 
-  /** . */
-  private final CustomizationContextResolver customizationContextResolver = new CustomizationContextResolver() {
-    public CustomizationContext resolve(String contextType, String contextId) {
-      if (WorkspaceCustomizationContext.TYPE.equals(contextType)) {
-        return findObjectById(ObjectType.WINDOW, contextId);
-      } else {
-        return customizationContextResolvers.resolve(contextType, contextId);
+   /** . */
+   private final CustomizationContextResolver customizationContextResolver = new CustomizationContextResolver()
+   {
+      public CustomizationContext resolve(String contextType, String contextId)
+      {
+         if (WorkspaceCustomizationContext.TYPE.equals(contextType))
+         {
+            return findObjectById(ObjectType.WINDOW, contextId);
+         }
+         else
+         {
+            return customizationContextResolvers.resolve(contextType, contextId);
+         }
       }
-    }
-  };
+   };
 
-  public ModelImpl(ChromatticSession session, ContentManagerRegistry contentManagers, CustomizationContextProviderRegistry customizationContextResolvers) {
+   public ModelImpl(ChromatticSession session, ContentManagerRegistry contentManagers, CustomizationContextProviderRegistry customizationContextResolvers)
+   {
 
-    //
-    this.session = session;
-    this.contentManagers = contentManagers;
-    this.customizationContextResolvers = customizationContextResolvers;
+      //
+      this.session = session;
+      this.contentManagers = contentManagers;
+      this.customizationContextResolvers = customizationContextResolvers;
 
-    //
-    session.addEventListener(contextualizer);
-  }
+      //
+      session.addEventListener(contextualizer);
+   }
 
-  public Workspace getWorkspace() {
-    return getWorkspaceImpl();
-  }
+   public ChromatticSession getSession()
+   {
+      return session;
+   }
 
-  private WorkspaceImpl getWorkspaceImpl() {
-    if (workspace == null) {
-      workspace = session.findByPath(WorkspaceImpl.class, "workspace");
-      if (workspace == null) {
-        workspace = session.insert(WorkspaceImpl.class, "workspace");
+   public Workspace getWorkspace()
+   {
+      return getWorkspaceImpl();
+   }
+
+   private WorkspaceImpl getWorkspaceImpl()
+   {
+      if (workspace == null)
+      {
+         workspace = session.findByPath(WorkspaceImpl.class, "workspace");
+         if (workspace == null)
+         {
+            workspace = session.insert(WorkspaceImpl.class, "workspace");
+         }
       }
-    }
-    return workspace;
-  }
+      return workspace;
+   }
 
-  public void save() {
-    session.save();
-  }
+   public void save()
+   {
+      session.save();
+   }
 
-  public void close() {
-    session.close();
-  }
+   public void close()
+   {
+      session.close();
+   }
 
-  private final LifeCycleListener contextualizer = new LifeCycleListener() {
-    public void created(Object o) {
-      inject(o, false);
-    }
-    public void loaded(String id, String path, String name, Object o) {
-      inject(o, true);
-    }
-    public void added(String id, String path, String name, Object o) {
-      inject(o, true);
-    }
-    public void removed(String id, String path, String name, Object o) {
-    }
-  };
+   private final LifeCycleListener contextualizer = new LifeCycleListener()
+   {
+      public void created(Object o)
+      {
+         inject(o, false);
+      }
 
-  public Customization<?> findCustomizationById(String id) {
-    return session.findById(Customization.class, id);
-  }
+      public void loaded(String id, String path, String name, Object o)
+      {
+         inject(o, true);
+      }
 
-  public <O extends WorkspaceObject> Iterator<O> findObject(ObjectType<O> type, String statement) {
-    Class<? extends WorkspaceObjectImpl> impl = typeToClassImpl.get(type);
-    return session.createQueryBuilder().from(impl).<O>where(statement).get().iterator();
-  }
+      public void added(String id, String path, String name, Object o)
+      {
+         inject(o, true);
+      }
 
-  public String pathOf(WorkspaceObject o) {
-    return session.getPath(o);
-  }
+      public void removed(String id, String path, String name, Object o)
+      {
+      }
+   };
 
-  public <O extends WorkspaceObject> O findObjectByPath(ObjectType<? extends O> type, String path) {
-    Class<? extends O> t = type.getJavaType();
-    return session.findByPath(t, path);
-  }
+   public Customization<?> findCustomizationById(String id)
+   {
+      return session.findById(Customization.class, id);
+   }
 
-  private void inject(Object o, boolean persistent) {
-    if (o instanceof AbstractCustomization) {
-      ((AbstractCustomization)o).session = session;
-      ((AbstractCustomization)o).registry = contentManagers;
-    }
-    if (o instanceof ContextSpecialization) {
-      ((ContextSpecialization)o).setCustomizationContextResolver(customizationContextResolver);
-    }
-  }
+   public <O extends WorkspaceObject> Iterator<O> findObject(ObjectType<O> type, String statement)
+   {
+      Class<? extends WorkspaceObjectImpl> impl = typeToClassImpl.get(type);
+      return session.createQueryBuilder().from(impl).<O>where(statement).get().iterator();
+   }
 
-  public <O extends WorkspaceObject> O findObjectById(ObjectType<O> type, String id) {
-    Class<? extends WorkspaceObjectImpl> impl = typeToClassImpl.get(type);
-    WorkspaceObjectImpl object = session.findById(impl, id);
-    if (object != null) {
-      return type.cast(object);
-    } else {
-      return null;
-    }
-  }
+   public String pathOf(WorkspaceObject o)
+   {
+      return session.getPath(o);
+   }
+
+   public <O extends WorkspaceObject> O findObjectByPath(ObjectType<? extends O> type, String path)
+   {
+      Class<? extends O> t = type.getJavaType();
+      return session.findByPath(t, path);
+   }
+
+   private void inject(Object o, boolean persistent)
+   {
+      if (o instanceof AbstractCustomization)
+      {
+         ((AbstractCustomization)o).session = session;
+         ((AbstractCustomization)o).registry = contentManagers;
+      }
+      if (o instanceof ContextSpecialization)
+      {
+         ((ContextSpecialization)o).setCustomizationContextResolver(customizationContextResolver);
+      }
+   }
+
+   public <O extends WorkspaceObject> O findObjectById(ObjectType<O> type, String id)
+   {
+      Class<? extends WorkspaceObjectImpl> impl = typeToClassImpl.get(type);
+      WorkspaceObjectImpl object = session.findById(impl, id);
+      if (object != null)
+      {
+         return type.cast(object);
+      }
+      else
+      {
+         return null;
+      }
+   }
 }

Added: components/mop/trunk/core/src/main/resources/conf/configuration.xml
===================================================================
--- components/mop/trunk/core/src/main/resources/conf/configuration.xml	                        (rev 0)
+++ components/mop/trunk/core/src/main/resources/conf/configuration.xml	2009-11-20 18:01:16 UTC (rev 745)
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+
+    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.
+
+-->
+<configuration
+   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+   xsi:schemaLocation="http://www.exoplaform.org/xml/ns/kernel_1_0.xsd http://www.exoplaform.org/xml/ns/kernel_1_0.xsd"
+   xmlns="http://www.exoplaform.org/xml/ns/kernel_1_0.xsd">
+
+  <external-component-plugins>
+ 		<target-component>org.exoplatform.services.jcr.RepositoryService</target-component>
+        <component-plugin>
+          <name>add.namespaces</name>
+          <set-method>addPlugin</set-method>
+          <type>org.exoplatform.services.jcr.impl.AddNamespacesPlugin</type>
+          <init-params>
+            <properties-param>
+              <name>namespaces</name>
+              <property name="mop" value="http://www.gatein.org/jcr/mop/1.0/"/>
+              </properties-param>
+          </init-params>
+        </component-plugin>
+ 		<component-plugin>
+ 		  <name>add.nodeType</name>
+ 		  <set-method>addPlugin</set-method>
+ 		  <type>org.exoplatform.services.jcr.impl.AddNodeTypePlugin</type>
+ 		  <init-params>
+ 		    <values-param>
+ 		      <name>autoCreatedInNewRepository</name>
+ 		      <description>Node types configuration file</description>
+ 		      <value>jar:/conf/mop-nodetypes.xml</value>
+ 		    </values-param>
+ 		  </init-params>
+ 		</component-plugin>
+  </external-component-plugins>
+</configuration>
\ No newline at end of file

Copied: components/mop/trunk/core/src/main/resources/conf/mop-nodetypes.xml (from rev 669, components/mop/trunk/core/src/main/resources/conf/standalone/nodetypes.xml)
===================================================================
--- components/mop/trunk/core/src/main/resources/conf/mop-nodetypes.xml	                        (rev 0)
+++ components/mop/trunk/core/src/main/resources/conf/mop-nodetypes.xml	2009-11-20 18:01:16 UTC (rev 745)
@@ -0,0 +1,452 @@
+<!--
+
+    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.
+
+-->
+<nodeTypes xmlns:nt="http://www.jcp.org/jcr/nt/1.0" xmlns:mix="http://www.jcp.org/jcr/mix/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0">
+
+  <nodeType name="mop:customizationstate" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>nt:base</supertype>
+      <supertype>mix:referenceable</supertype>
+    </supertypes>
+  </nodeType>
+
+  <nodeType name="mop:contexttypecontainer" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>nt:base</supertype>
+      <supertype>mix:referenceable</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="*" defaultPrimaryType="mop:contexttype" autoCreated="false" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:contexttype</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:contexttype" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>nt:base</supertype>
+      <supertype>mix:referenceable</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="*" defaultPrimaryType="mop:contextspecialization" autoCreated="false" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:contextspecialization</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:customization" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>nt:base</supertype>
+      <supertype>mix:referenceable</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="contexttypes" defaultPrimaryType="mop:contexttypecontainer" autoCreated="true" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:contexttypecontainer</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+      <childNodeDefinition name="state" defaultPrimaryType="mop:customizationstate" autoCreated="false" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:customizationstate</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <!-- -->
+
+  <nodeType name="mop:workspacecustomization" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:customization</supertype>
+    </supertypes>
+    <propertyDefinitions>
+      <propertyDefinition name="contentid" requiredType="String" autoCreated="false" mandatory="true" onParentVersion="COPY" protected="false" multiple="false">
+        <valueConstraints/>
+      </propertyDefinition>
+      <propertyDefinition name="mimetype" requiredType="String" autoCreated="false" mandatory="true" onParentVersion="COPY" protected="false" multiple="false">
+        <valueConstraints/>
+      </propertyDefinition>
+    </propertyDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:workspaceclone" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:workspacecustomization</supertype>
+    </supertypes>
+  </nodeType>
+
+  <nodeType name="mop:workspacespecialization" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:workspacecustomization</supertype>
+    </supertypes>
+    <propertyDefinitions>
+      <propertyDefinition name="customization" requiredType="Path" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
+        <valueConstraints/>
+      </propertyDefinition>
+    </propertyDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:contextspecialization" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:customization</supertype>
+    </supertypes>
+  </nodeType>
+
+  <nodeType name="mop:customizationcontainer" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>nt:base</supertype>
+      <supertype>mix:referenceable</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="*" defaultPrimaryType="mop:workspacecustomization" autoCreated="false" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:workspacecustomization</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:customizationcontext" isMixin="true" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>nt:base</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="customizations" defaultPrimaryType="mop:customizationcontainer" autoCreated="true" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:customizationcontainer</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <!-- -->
+
+  <nodeType name="mop:workspaceobject" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>nt:base</supertype>
+      <supertype>mix:referenceable</supertype>
+    </supertypes>
+    <propertyDefinitions>
+      <propertyDefinition name="*" requiredType="undefined" autoCreated="false" mandatory="false" onParentVersion="COPY"
+        protected="false" multiple="false">
+        <valueConstraints/>
+      </propertyDefinition>
+    </propertyDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:uicomponent" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:workspaceobject</supertype>
+    </supertypes>
+  </nodeType>
+
+  <nodeType name="mop:uicontainer" isMixin="false" hasOrderableChildNodes="true" primaryItemName="">
+    <supertypes>
+      <supertype>mop:uicomponent</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="*" defaultPrimaryType="" autoCreated="false" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:uicomponent</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:uiwindow" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:uicomponent</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="customization" defaultPrimaryType="mop:workspacecustomization" autoCreated="false" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:workspacecustomization</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:uibody" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:uicomponent</supertype>
+    </supertypes>
+  </nodeType>
+
+  <nodeType name="mop:templatized" isMixin="true" hasOrderableChildNodes="false" primaryItemName="">
+    <propertyDefinitions>
+      <propertyDefinition name="template" requiredType="Path" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
+        <valueConstraints/>
+      </propertyDefinition>
+    </propertyDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:navigation" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:workspaceobject</supertype>
+      <supertype>mop:templatized</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="children" defaultPrimaryType="mop:navigationcontainer" autoCreated="true" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:navigationcontainer</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+      <childNodeDefinition name="link" defaultPrimaryType="mop:link" autoCreated="false" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:link</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:navigationcontainer" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>nt:base</supertype>
+      <supertype>mix:referenceable</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="*" defaultPrimaryType="mop:navigation" autoCreated="false" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:navigation</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:link" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:workspaceobject</supertype>
+    </supertypes>
+  </nodeType>
+
+  <nodeType name="mop:pagelink" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:link</supertype>
+    </supertypes>
+    <propertyDefinitions>
+      <propertyDefinition name="page" requiredType="Path" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
+        <valueConstraints/>
+      </propertyDefinition>
+    </propertyDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:urllink" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:link</supertype>
+    </supertypes>
+    <propertyDefinitions>
+      <propertyDefinition name="url" requiredType="String" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
+        <valueConstraints/>
+      </propertyDefinition>
+    </propertyDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:page" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:workspaceobject</supertype>
+      <supertype>mop:templatized</supertype>
+      <supertype>mop:customizationcontext</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="children" defaultPrimaryType="mop:pagecontainer" autoCreated="true" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:pagecontainer</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+      <childNodeDefinition name="rootcomponent" defaultPrimaryType="mop:uicontainer" autoCreated="true" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:uicontainer</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:pagecontainer" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>nt:base</supertype>
+      <supertype>mix:referenceable</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="*" defaultPrimaryType="mop:page" autoCreated="false" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:page</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:site" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:workspaceobject</supertype>
+      <supertype>mop:customizationcontext</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="rootpage" defaultPrimaryType="mop:page" autoCreated="true" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:page</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+      <childNodeDefinition name="rootnavigation" defaultPrimaryType="mop:navigation" autoCreated="true" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:navigation</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:portalsite" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:site</supertype>
+    </supertypes>
+  </nodeType>
+
+  <nodeType name="mop:groupsite" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:site</supertype>
+    </supertypes>
+  </nodeType>
+
+  <nodeType name="mop:usersite" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:site</supertype>
+    </supertypes>
+  </nodeType>
+
+  <nodeType name="mop:sharedsite" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:site</supertype>
+    </supertypes>
+  </nodeType>
+
+  <nodeType name="mop:portalsites" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>nt:base</supertype>
+      <supertype>mix:referenceable</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="*" defaultPrimaryType="mop:portalsite" autoCreated="false" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:portalsite</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:groupsites" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>nt:base</supertype>
+      <supertype>mix:referenceable</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="*" defaultPrimaryType="mop:groupsite" autoCreated="false" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:groupsite</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:usersites" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>nt:base</supertype>
+      <supertype>mix:referenceable</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="*" defaultPrimaryType="mop:usersite" autoCreated="false" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:usersite</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:sharedsites" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>nt:base</supertype>
+      <supertype>mix:referenceable</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="*" defaultPrimaryType="mop:sharedsite" autoCreated="false" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:sharedsite</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:workspace" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:workspaceobject</supertype>
+      <supertype>mop:customizationcontext</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="portalsites" defaultPrimaryType="mop:portalsites" autoCreated="true" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:portalsites</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+      <childNodeDefinition name="groupsites" defaultPrimaryType="mop:groupsites" autoCreated="true" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:groupsites</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+      <childNodeDefinition name="usersites" defaultPrimaryType="mop:usersites" autoCreated="true" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:usersites</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+      <childNodeDefinition name="sharedsites" defaultPrimaryType="mop:sharedsites" autoCreated="true" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:sharedsites</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+</nodeTypes>
+  
\ No newline at end of file

Modified: components/mop/trunk/core/src/test/java/org/gatein/mop/core/api/AbstractPOMTestCase.java
===================================================================
--- components/mop/trunk/core/src/test/java/org/gatein/mop/core/api/AbstractPOMTestCase.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/java/org/gatein/mop/core/api/AbstractPOMTestCase.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -22,9 +22,10 @@
 
 import java.util.Collections;
 
-import org.gatein.mop.core.content.portlet.Preference;
-import org.gatein.mop.core.content.portlet.Preferences;
-import org.gatein.mop.core.content.portlet.PortletContentProvider;
+import org.gatein.mop.core.support.TestMOPService;
+import org.gatein.mop.core.support.content.portlet.Preference;
+import org.gatein.mop.core.support.content.portlet.Preferences;
+import org.gatein.mop.core.support.content.portlet.PortletContentProvider;
 
 /**
  * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>
@@ -40,10 +41,9 @@
     Preferences weatherPreferences = new Preferences(Collections.<String, Preference>singletonMap(
       "zip", new Preference("zip", Collections.singletonList("marseille"), false)));
     PortletContentProvider portletContentProvider = new PortletContentProvider();
-    portletContentProvider.addPortletDefinition("WeatherPortlet", weatherPreferences);
 
     //
-    MOPService pomService = new MOPService();
+    MOPService pomService = new TestMOPService();
 
     //
     pomService.start();

Modified: components/mop/trunk/core/src/test/java/org/gatein/mop/core/api/content/BiltoTestCase.java
===================================================================
--- components/mop/trunk/core/src/test/java/org/gatein/mop/core/api/content/BiltoTestCase.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/java/org/gatein/mop/core/api/content/BiltoTestCase.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -20,7 +20,7 @@
 
 import org.gatein.mop.core.api.AbstractPOMTestCase;
 import org.gatein.mop.api.content.ContentType;
-import org.gatein.mop.core.content.portlet.Preferences;
+import org.gatein.mop.core.support.content.portlet.Preferences;
 
 /**
  * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>

Modified: components/mop/trunk/core/src/test/java/org/gatein/mop/core/api/workspace/content/CustomizationTestCase.java
===================================================================
--- components/mop/trunk/core/src/test/java/org/gatein/mop/core/api/workspace/content/CustomizationTestCase.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/java/org/gatein/mop/core/api/workspace/content/CustomizationTestCase.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -19,8 +19,8 @@
 package org.gatein.mop.core.api.workspace.content;
 
 import org.gatein.mop.core.api.AbstractPOMTestCase;
-import org.gatein.mop.core.content.portlet.Preferences;
-import org.gatein.mop.core.content.portlet.PreferencesBuilder;
+import org.gatein.mop.core.support.content.portlet.Preferences;
+import org.gatein.mop.core.support.content.portlet.PreferencesBuilder;
 import org.gatein.mop.api.workspace.Workspace;
 import org.gatein.mop.api.workspace.ObjectType;
 import org.gatein.mop.api.workspace.Site;

Added: components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/TestMOPService.java
===================================================================
--- components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/TestMOPService.java	                        (rev 0)
+++ components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/TestMOPService.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2003-2007 eXo Platform SAS.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Affero General Public License
+ * as published by the Free Software Foundation; either version 3
+ * of the License, or (at your option) any later version.
+ *
+ * This program 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 General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, see<http://www.gnu.org/licenses/>.
+ */
+package org.gatein.mop.core.support;
+
+import org.chromattic.api.ChromatticBuilder;
+import org.gatein.mop.core.api.MOPService;
+import org.gatein.mop.core.api.content.ContentManagerRegistry;
+import org.gatein.mop.core.support.content.gadget.Gadget;
+import org.gatein.mop.core.support.content.gadget.GadgetContentProvider;
+import org.gatein.mop.core.support.content.gadget.GadgetState;
+import org.gatein.mop.core.support.content.portlet.PortletContentProvider;
+import org.gatein.mop.core.support.content.portlet.PortletPreferenceState;
+import org.gatein.mop.core.support.content.portlet.PortletPreferencesState;
+import org.gatein.mop.core.support.content.portlet.Preferences;
+
+/**
+ * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>
+ * @version $Revision$
+ */
+public class TestMOPService extends MOPService
+{
+
+   @Override
+   protected void configure(ChromatticBuilder builder)
+   {
+      builder.add(PortletPreferencesState.class);
+      builder.add(PortletPreferenceState.class);
+
+      //
+      builder.add(GadgetState.class);
+   }
+
+   @Override
+   protected void configure(ContentManagerRegistry registry)
+   {
+      registry.register(Preferences.CONTENT_TYPE, new PortletContentProvider());
+      registry.register(Gadget.CONTENT_TYPE, new GadgetContentProvider());
+   }
+}

Copied: components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content (from rev 669, components/mop/trunk/core/src/main/java/org/gatein/mop/core/content)

Copied: components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/gadget (from rev 744, components/mop/trunk/core/src/main/java/org/gatein/mop/core/content/gadget)

Modified: components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/gadget/Gadget.java
===================================================================
--- components/mop/trunk/core/src/main/java/org/gatein/mop/core/content/gadget/Gadget.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/gadget/Gadget.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -14,7 +14,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, see<http://www.gnu.org/licenses/>.
  */
-package org.gatein.mop.core.content.gadget;
+package org.gatein.mop.core.support.content.gadget;
 
 import org.gatein.mop.api.content.ContentType;
 

Modified: components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/gadget/GadgetContentProvider.java
===================================================================
--- components/mop/trunk/core/src/main/java/org/gatein/mop/core/content/gadget/GadgetContentProvider.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/gadget/GadgetContentProvider.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -14,10 +14,9 @@
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, see<http://www.gnu.org/licenses/>.
  */
-package org.gatein.mop.core.content.gadget;
+package org.gatein.mop.core.support.content.gadget;
 
 import org.gatein.mop.spi.content.ContentProvider;
-import org.gatein.mop.spi.content.GetState;
 import org.gatein.mop.spi.content.StateContainer;
 import org.gatein.mop.core.api.workspace.content.AbstractCustomization;
 import org.chromattic.api.ChromatticSession;
@@ -33,10 +32,6 @@
  */
 public class GadgetContentProvider implements ContentProvider<Gadget> {
 
-  public GetState<Gadget> getState(String contentId) {
-    throw new UnsupportedOperationException();
-  }
-
   public Gadget combine(List<Gadget> states) {
     throw new UnsupportedOperationException();
   }

Modified: components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/gadget/GadgetState.java
===================================================================
--- components/mop/trunk/core/src/main/java/org/gatein/mop/core/content/gadget/GadgetState.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/gadget/GadgetState.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -14,7 +14,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, see<http://www.gnu.org/licenses/>.
  */
-package org.gatein.mop.core.content.gadget;
+package org.gatein.mop.core.support.content.gadget;
 
 import org.chromattic.api.annotations.NodeMapping;
 import org.chromattic.api.annotations.Property;

Copied: components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet (from rev 744, components/mop/trunk/core/src/main/java/org/gatein/mop/core/content/portlet)

Modified: components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PortletContentProvider.java
===================================================================
--- components/mop/trunk/core/src/main/java/org/gatein/mop/core/content/portlet/PortletContentProvider.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PortletContentProvider.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -16,15 +16,11 @@
  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
-package org.gatein.mop.core.content.portlet;
+package org.gatein.mop.core.support.content.portlet;
 
 import org.gatein.mop.spi.content.ContentProvider;
-import org.gatein.mop.spi.content.GetState;
 import org.gatein.mop.spi.content.StateContainer;
-import org.gatein.mop.core.content.portlet.Preference;
-import org.gatein.mop.core.content.portlet.Preferences;
 import org.gatein.mop.core.api.workspace.content.AbstractCustomization;
-import org.gatein.mop.core.content.portlet.PortletPreferencesState;
 import org.chromattic.api.ChromatticSession;
 import org.chromattic.api.UndeclaredRepositoryException;
 
@@ -40,26 +36,6 @@
  */
 public class PortletContentProvider implements ContentProvider<Preferences> {
 
-  /** . */
-  private Map<String, PortletDefinition> definitions;
-
-  public PortletContentProvider() {
-    definitions = new HashMap<String, PortletDefinition>();
-  }
-
-  public void addPortletDefinition(String name, Preferences preferences) {
-    definitions.put(name, new PortletDefinition(name, preferences));
-  }
-
-  public GetState<Preferences> getState(String contentId) {
-    PortletDefinition def = definitions.get(contentId);
-    if (def != null) {
-      return new GetState<Preferences>(def.getPreferences());
-    } else {
-      return null;
-    }
-  }
-
   public Preferences combine(List<Preferences> states) {
     Map<String, Preference> entries = new HashMap<String, Preference>();
 

Modified: components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PortletDefinition.java
===================================================================
--- components/mop/trunk/core/src/main/java/org/gatein/mop/core/content/portlet/PortletDefinition.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PortletDefinition.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -16,9 +16,9 @@
  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
-package org.gatein.mop.core.content.portlet;
+package org.gatein.mop.core.support.content.portlet;
 
-import org.gatein.mop.core.content.portlet.Preferences;
+import org.gatein.mop.core.support.content.portlet.Preferences;
 
 /**
  * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>

Modified: components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PortletPreferenceState.java
===================================================================
--- components/mop/trunk/core/src/main/java/org/gatein/mop/core/content/portlet/PortletPreferenceState.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PortletPreferenceState.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -16,7 +16,7 @@
  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
-package org.gatein.mop.core.content.portlet;
+package org.gatein.mop.core.support.content.portlet;
 
 import org.chromattic.api.annotations.NodeMapping;
 import org.chromattic.api.annotations.ManyToOne;

Modified: components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PortletPreferencesState.java
===================================================================
--- components/mop/trunk/core/src/main/java/org/gatein/mop/core/content/portlet/PortletPreferencesState.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PortletPreferencesState.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -16,16 +16,16 @@
  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
-package org.gatein.mop.core.content.portlet;
+package org.gatein.mop.core.support.content.portlet;
 
 import org.chromattic.api.annotations.NodeMapping;
 import org.chromattic.api.annotations.OneToMany;
 import org.chromattic.api.annotations.Create;
 import org.chromattic.api.annotations.OneToOne;
 import org.chromattic.api.annotations.RelatedMappedBy;
-import org.gatein.mop.core.content.portlet.Preferences;
-import org.gatein.mop.core.content.portlet.Preference;
-import org.gatein.mop.core.content.portlet.PreferencesBuilder;
+import org.gatein.mop.core.support.content.portlet.Preferences;
+import org.gatein.mop.core.support.content.portlet.Preference;
+import org.gatein.mop.core.support.content.portlet.PreferencesBuilder;
 import org.gatein.mop.core.api.workspace.content.AbstractCustomization;
 
 import java.util.Map;

Modified: components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/Preference.java
===================================================================
--- components/mop/trunk/core/src/main/java/org/gatein/mop/core/content/portlet/Preference.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/Preference.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -16,7 +16,7 @@
  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
-package org.gatein.mop.core.content.portlet;
+package org.gatein.mop.core.support.content.portlet;
 
 import java.util.List;
 import java.util.Collections;

Modified: components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/Preferences.java
===================================================================
--- components/mop/trunk/core/src/main/java/org/gatein/mop/core/content/portlet/Preferences.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/Preferences.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -16,7 +16,7 @@
  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
-package org.gatein.mop.core.content.portlet;
+package org.gatein.mop.core.support.content.portlet;
 
 import org.gatein.mop.api.content.ContentType;
 

Modified: components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PreferencesBuilder.java
===================================================================
--- components/mop/trunk/core/src/main/java/org/gatein/mop/core/content/portlet/PreferencesBuilder.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/java/org/gatein/mop/core/support/content/portlet/PreferencesBuilder.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -16,7 +16,7 @@
  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
-package org.gatein.mop.core.content.portlet;
+package org.gatein.mop.core.support.content.portlet;
 
 import java.util.List;
 

Added: components/mop/trunk/core/src/test/resources/conf/configuration.xml
===================================================================
--- components/mop/trunk/core/src/test/resources/conf/configuration.xml	                        (rev 0)
+++ components/mop/trunk/core/src/test/resources/conf/configuration.xml	2009-11-20 18:01:16 UTC (rev 745)
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+
+    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.
+
+-->
+<configuration
+   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+   xsi:schemaLocation="http://www.exoplaform.org/xml/ns/kernel_1_0.xsd http://www.exoplaform.org/xml/ns/kernel_1_0.xsd"
+   xmlns="http://www.exoplaform.org/xml/ns/kernel_1_0.xsd">
+
+  <external-component-plugins>
+ 		<target-component>org.exoplatform.services.jcr.RepositoryService</target-component>
+ 		<component-plugin>
+ 		  <name>add.nodeType</name>
+ 		  <set-method>addPlugin</set-method>
+ 		  <type>org.exoplatform.services.jcr.impl.AddNodeTypePlugin</type>
+ 		  <init-params>
+ 		    <values-param>
+ 		      <name>autoCreatedInNewRepository</name>
+ 		      <description>Node types configuration file</description>
+ 		      <value>jar:/conf/content-nodetypes.xml</value>
+ 		    </values-param>
+ 		  </init-params>
+ 		</component-plugin>
+  </external-component-plugins>
+</configuration>
\ No newline at end of file

Added: components/mop/trunk/core/src/test/resources/conf/content-nodetypes.xml
===================================================================
--- components/mop/trunk/core/src/test/resources/conf/content-nodetypes.xml	                        (rev 0)
+++ components/mop/trunk/core/src/test/resources/conf/content-nodetypes.xml	2009-11-20 18:01:16 UTC (rev 745)
@@ -0,0 +1,63 @@
+<!--
+
+    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.
+
+-->
+<nodeTypes xmlns:nt="http://www.jcp.org/jcr/nt/1.0" xmlns:mix="http://www.jcp.org/jcr/mix/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0">
+
+  <nodeType name="mop:portletpreferences" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:customizationstate</supertype>
+    </supertypes>
+    <childNodeDefinitions>
+      <childNodeDefinition name="*" defaultPrimaryType="mop:portletpreference" autoCreated="false" mandatory="false"
+        onParentVersion="COPY" protected="false" sameNameSiblings="false">
+        <requiredPrimaryTypes>
+          <requiredPrimaryType>mop:portletpreference</requiredPrimaryType>
+        </requiredPrimaryTypes>
+      </childNodeDefinition>
+    </childNodeDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:portletpreference" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>nt:base</supertype>
+      <supertype>mix:referenceable</supertype>
+    </supertypes>
+    <propertyDefinitions>
+      <propertyDefinition name="value" requiredType="String" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="true">
+        <valueConstraints/>
+      </propertyDefinition>
+      <propertyDefinition name="readonly" requiredType="Boolean" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
+        <valueConstraints/>
+      </propertyDefinition>
+    </propertyDefinitions>
+  </nodeType>
+
+  <nodeType name="mop:gadget" isMixin="false" hasOrderableChildNodes="false" primaryItemName="">
+    <supertypes>
+      <supertype>mop:customizationstate</supertype>
+    </supertypes>
+    <propertyDefinitions>
+      <propertyDefinition name="prefs" requiredType="String" autoCreated="false" mandatory="false" onParentVersion="COPY" protected="false" multiple="false">
+        <valueConstraints/>
+      </propertyDefinition>
+    </propertyDefinitions>
+  </nodeType>
+
+</nodeTypes>

Deleted: components/mop/trunk/core/src/test/resources/indexing-configuration.xml
===================================================================
--- components/mop/trunk/core/src/test/resources/indexing-configuration.xml	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/resources/indexing-configuration.xml	2009-11-20 18:01:16 UTC (rev 745)
@@ -1,50 +0,0 @@
-<?xml version="1.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.
-
--->
-<!DOCTYPE configuration SYSTEM "http://www.exoplatform.org/dtd/indexing-configuration-1.0.dtd">
-<configuration xmlns:jcr="http://www.jcp.org/jcr/1.0"
-               xmlns:nt="http://www.jcp.org/jcr/nt/1.0">
-
-  <!--aggregate primaryType="nt:file">
-    <include>jcr:content</include>
-  </aggregate-->
-
-   <index-rule nodeType="nt:unstructured"
-              boost="2.0"
-              condition="ancestor::*/@priority = 'low'">
-   <property>Text</property>
-   </index-rule>
-
-   <index-rule nodeType="nt:unstructured"
-              boost="2.0"
-              condition="parent::indrootparent/@priority = 'low'">
-   <property>Text</property>
-   </index-rule>
-
-   <index-rule nodeType="nt:unstructured"
-              boost="2.0"
-              condition="indrootchild/@priority = 'gg'">
-   <property>Text</property>
-   </index-rule>
-
-</configuration>
-
-

Deleted: components/mop/trunk/core/src/test/resources/synonyms.properties
===================================================================
--- components/mop/trunk/core/src/test/resources/synonyms.properties	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/core/src/test/resources/synonyms.properties	2009-11-20 18:01:16 UTC (rev 745)
@@ -1,19 +0,0 @@
-#  Licensed to the Apache Software Foundation (ASF) under one or more
-#  contributor license agreements.  See the NOTICE file distributed with
-#  this work for additional information regarding copyright ownership.
-#  The ASF licenses this file to You under the Apache License, Version 2.0
-#  (the "License"); you may not use this file except in compliance with
-#  the License.  You may obtain a copy of the License at
-#
-#      http://www.apache.org/licenses/LICENSE-2.0
-#
-#  Unless required by applicable law or agreed to in writing, software
-#  distributed under the License is distributed on an "AS IS" BASIS,
-#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#  See the License for the specific language governing permissions and
-#  limitations under the License.
-
-# this is a synonym definition file for PropertiesSynonymProvider
-ASF=Apache Software Foundation
-quick=fast
-sluggish=lazy
\ No newline at end of file

Modified: components/mop/trunk/pom.xml
===================================================================
--- components/mop/trunk/pom.xml	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/pom.xml	2009-11-20 18:01:16 UTC (rev 745)
@@ -53,7 +53,7 @@
       <dependency>
         <groupId>org.gatein</groupId>
         <artifactId>gatein-dep</artifactId>
-        <version>1.0.0-Beta02</version>
+        <version>1.0.0-Beta03</version>
         <type>pom</type>
         <scope>import</scope>
       </dependency>
@@ -69,6 +69,7 @@
         <artifactId>mop-spi</artifactId>
         <version>${project.version}</version>
       </dependency>
+
     </dependencies>
   </dependencyManagement>
   

Modified: components/mop/trunk/spi/src/main/java/org/gatein/mop/spi/content/ContentProvider.java
===================================================================
--- components/mop/trunk/spi/src/main/java/org/gatein/mop/spi/content/ContentProvider.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/spi/src/main/java/org/gatein/mop/spi/content/ContentProvider.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -27,16 +27,6 @@
 public interface ContentProvider<S> {
 
   /**
-   * <p>Returns the state wrapper associated with the specified content or null if no relationship can be
-   * done with the specifiec content. When the <tt>GetState</tt> response is returned with a null state
-   * it means that the content is found but is stateless.</p>
-   *
-   * @param contentId the content id
-   * @return the content state
-   */
-  GetState<S> getState(String contentId);
-
-  /**
    * Combines several states into a single state representation.
    *
    * @param states the various states to combine

Deleted: components/mop/trunk/spi/src/main/java/org/gatein/mop/spi/content/GetState.java
===================================================================
--- components/mop/trunk/spi/src/main/java/org/gatein/mop/spi/content/GetState.java	2009-11-20 17:18:44 UTC (rev 744)
+++ components/mop/trunk/spi/src/main/java/org/gatein/mop/spi/content/GetState.java	2009-11-20 18:01:16 UTC (rev 745)
@@ -1,37 +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.gatein.mop.spi.content;
-
-/**
- * @author <a href="mailto:julien.viet at exoplatform.com">Julien Viet</a>
- * @version $Revision$
- */
-public class GetState<S> {
-
-  /** . */
-  private final S state;
-
-  public GetState(S state) {
-    this.state = state;
-  }
-
-  public S getState() {
-    return state;
-  }
-}



More information about the gatein-commits mailing list