You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@chemistry.apache.org by je...@apache.org on 2010/02/23 08:54:16 UTC
svn commit: r915230 - in
/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-inmemory:
pom.xml src/main/java/org/apache/opencmis/inmemory/server/ServiceFactory.java
Author: jens
Date: Tue Feb 23 07:54:15 2010
New Revision: 915230
URL: http://svn.apache.org/viewvc?rev=915230&view=rev
Log:
Integrate ServiceWrapper from server utils to inmemory server
Modified:
incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-inmemory/pom.xml
incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-inmemory/src/main/java/org/apache/opencmis/inmemory/server/ServiceFactory.java
Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-inmemory/pom.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-inmemory/pom.xml?rev=915230&r1=915229&r2=915230&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-inmemory/pom.xml (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-inmemory/pom.xml Tue Feb 23 07:54:15 2010
@@ -83,6 +83,11 @@
<version>${version}</version>
<type>war</type>
</dependency>
+ <dependency>
+ <groupId>org.opencmis</groupId>
+ <artifactId>opencmis-server-support</artifactId>
+ <version>${version}</version>
+ </dependency>
</dependencies>
</project>
Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-inmemory/src/main/java/org/apache/opencmis/inmemory/server/ServiceFactory.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-inmemory/src/main/java/org/apache/opencmis/inmemory/server/ServiceFactory.java?rev=915230&r1=915229&r2=915230&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-inmemory/src/main/java/org/apache/opencmis/inmemory/server/ServiceFactory.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-inmemory/src/main/java/org/apache/opencmis/inmemory/server/ServiceFactory.java Tue Feb 23 07:54:15 2010
@@ -18,8 +18,8 @@
*/
package org.apache.opencmis.inmemory.server;
+import java.math.BigInteger;
import java.util.ArrayList;
-import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -46,18 +46,28 @@
import org.apache.opencmis.server.spi.CmisObjectService;
import org.apache.opencmis.server.spi.CmisRepositoryService;
import org.apache.opencmis.server.spi.CmisVersioningService;
+import org.apache.opencmis.server.support.DiscoveryServiceWrapper;
+import org.apache.opencmis.server.support.NavigationServiceWrapper;
+import org.apache.opencmis.server.support.ObjectServiceWrapper;
+import org.apache.opencmis.server.support.RepositoryServiceWrapper;
+import org.apache.opencmis.server.support.VersioningServiceWrapper;
import org.apache.opencmis.util.repository.ObjectGenerator;
public class ServiceFactory extends AbstractServicesFactory {
private static final Log LOG = LogFactory.getLog(ServiceFactory.class.getName());
+ private static final BigInteger DEFAULT_MAX_ITEMS_OBJECTS = BigInteger.valueOf(1000);
+ private static final BigInteger DEFAULT_MAX_ITEMS_TYPES = BigInteger.valueOf(100);
+ private static final BigInteger DEFAULT_DEPTH_OBJECTS = BigInteger.valueOf(2);
+ private static final BigInteger DEFAULT_DEPTH_TYPES = BigInteger.valueOf(-1);
+
private StoreManager fStoreManager; // singleton root of everything
- private InMemoryRepositoryService fRepositoryService;
- private InMemoryNavigationService fNavigationService;
- private InMemoryObjectService fObjectService;
- private InMemoryVersioningService fVersioningService;
- private InMemoryDiscoveryService fDiscoveryService;
+ private CmisRepositoryService fRepositoryService;
+ private CmisNavigationService fNavigationService;
+ private CmisObjectService fObjectService;
+ private CmisVersioningService fVersioningService;
+ private CmisDiscoveryService fDiscoveryService;
public StoreManager getStoreManager() {
return fStoreManager;
@@ -93,19 +103,24 @@
}
}
-// if (repositoryId != null) {
-// String repoInfoCreatorClassName = parameters.get(ConfigConstants.REPOSITORY_INFO_CREATOR_CLASS);
-// fStoreManager.initRepositoryInfo(repositoryId, repoInfoCreatorClassName);
-// }
-
- // initialize services
- fRepositoryService = new InMemoryRepositoryService(fStoreManager);
- fNavigationService = new InMemoryNavigationService(fStoreManager);
- fObjectService = new InMemoryObjectService(fStoreManager);
- fVersioningService = new InMemoryVersioningService(fStoreManager, fObjectService.getObjectService());
- // Begin temporary implementation for discover service
- fDiscoveryService = new InMemoryDiscoveryService(fStoreManager, fRepositoryService.getRepositoryService(), fNavigationService.getNavigationService());
- // End temporary implementation
+ InMemoryRepositoryService repSvc = new InMemoryRepositoryService(fStoreManager);
+ InMemoryNavigationService navSvc = new InMemoryNavigationService(fStoreManager);
+ InMemoryObjectService objSvc = new InMemoryObjectService(fStoreManager);
+ InMemoryVersioningService verSvc = new InMemoryVersioningService(fStoreManager, objSvc
+ .getObjectService());
+ InMemoryDiscoveryService disSvc = new InMemoryDiscoveryService(fStoreManager, repSvc
+ .getRepositoryService(), navSvc.fNavigationService);
+
+ // Initialize services, use the service wrappers to provide suitable default parameters and
+ // paging sets
+ fRepositoryService = new RepositoryServiceWrapper(repSvc,
+ DEFAULT_MAX_ITEMS_TYPES, DEFAULT_DEPTH_TYPES);
+ fNavigationService = new NavigationServiceWrapper(navSvc,
+ DEFAULT_MAX_ITEMS_OBJECTS, DEFAULT_DEPTH_OBJECTS);
+ fObjectService = new ObjectServiceWrapper(objSvc,
+ DEFAULT_MAX_ITEMS_OBJECTS);
+ fVersioningService = new VersioningServiceWrapper(verSvc);
+ fDiscoveryService = new DiscoveryServiceWrapper(disSvc, DEFAULT_MAX_ITEMS_OBJECTS);
// With some special configuration settings fill the repository with some documents and folders if is empty
if (!allAvailableRepositories.contains(repositoryId))