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@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@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@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@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@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@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@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;
- }
-}