[exo-jcr-commits] exo-jcr SVN: r3729 - in jcr/branches/1.12.x: exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/initializer and 1 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Mon Dec 27 06:03:48 EST 2010


Author: areshetnyak
Date: 2010-12-27 06:03:47 -0500 (Mon, 27 Dec 2010)
New Revision: 3729

Modified:
   jcr/branches/1.12.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/BackupWorkspaceInitializer.java
   jcr/branches/1.12.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/SysViewWorkspaceInitializer.java
   jcr/branches/1.12.x/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/initializer/RemoteWorkspaceInitializer.java
   jcr/branches/1.12.x/exo.jcr.component.ext/src/test/java/org/exoplatform/services/jcr/ext/backup/AbstractBackupUseCasesTest.java
Log:
JCR-1558 : Get FileCleaner form FileCleanerHolder in SysViewWorkspaceInitializer.

Modified: jcr/branches/1.12.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/BackupWorkspaceInitializer.java
===================================================================
--- jcr/branches/1.12.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/BackupWorkspaceInitializer.java	2010-12-27 10:48:16 UTC (rev 3728)
+++ jcr/branches/1.12.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/BackupWorkspaceInitializer.java	2010-12-27 11:03:47 UTC (rev 3729)
@@ -40,6 +40,7 @@
 import org.exoplatform.services.jcr.impl.storage.JCRInvalidItemStateException;
 import org.exoplatform.services.jcr.impl.storage.JCRItemExistsException;
 import org.exoplatform.services.jcr.impl.util.io.FileCleaner;
+import org.exoplatform.services.jcr.impl.util.io.FileCleanerHolder;
 import org.exoplatform.services.jcr.impl.util.io.SpoolFile;
 import org.exoplatform.services.jcr.observation.ExtendedEvent;
 
@@ -74,8 +75,6 @@
 {
    private final String restoreDir;
 
-   private FileCleaner fileCleaner;
-   
    /**
     * Temporary directory;
     */
@@ -84,13 +83,12 @@
    public BackupWorkspaceInitializer(WorkspaceEntry config, RepositoryEntry repConfig,
       CacheableWorkspaceDataManager dataManager, NamespaceRegistryImpl namespaceRegistry,
       LocationFactory locationFactory, NodeTypeManagerImpl nodeTypeManager, ValueFactoryImpl valueFactory,
-      AccessManager accessManager) throws RepositoryConfigurationException, PathNotFoundException, RepositoryException
+            AccessManager accessManager, FileCleanerHolder cleanerHolder) throws RepositoryConfigurationException,
+            PathNotFoundException, RepositoryException
    {
       super(config, repConfig, dataManager, namespaceRegistry, locationFactory, nodeTypeManager, valueFactory,
-         accessManager);
+               accessManager, cleanerHolder);
 
-      this.fileCleaner = valueFactory.getFileCleaner();
-
       restoreDir = restorePath;
 
       String fullBackupPath = getFullBackupPath();

Modified: jcr/branches/1.12.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/SysViewWorkspaceInitializer.java
===================================================================
--- jcr/branches/1.12.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/SysViewWorkspaceInitializer.java	2010-12-27 10:48:16 UTC (rev 3728)
+++ jcr/branches/1.12.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/SysViewWorkspaceInitializer.java	2010-12-27 11:03:47 UTC (rev 3729)
@@ -43,6 +43,7 @@
 import org.exoplatform.services.jcr.impl.dataflow.persistent.CacheableWorkspaceDataManager;
 import org.exoplatform.services.jcr.impl.util.JCRDateFormat;
 import org.exoplatform.services.jcr.impl.util.io.FileCleaner;
+import org.exoplatform.services.jcr.impl.util.io.FileCleanerHolder;
 import org.exoplatform.services.jcr.impl.util.io.SpoolFile;
 import org.exoplatform.services.jcr.storage.WorkspaceDataContainer;
 import org.exoplatform.services.log.ExoLogger;
@@ -99,7 +100,7 @@
    /**
     * Cleaner should be started! .
     */
-   private final FileCleaner fileCleaner;
+   protected final FileCleaner fileCleaner;
 
    protected String restorePath;
 
@@ -389,7 +390,8 @@
    public SysViewWorkspaceInitializer(WorkspaceEntry config, RepositoryEntry repConfig,
       CacheableWorkspaceDataManager dataManager, NamespaceRegistryImpl namespaceRegistry,
       LocationFactory locationFactory, NodeTypeManagerImpl nodeTypeManager, ValueFactoryImpl valueFactory,
-      AccessManager accessManager) throws RepositoryConfigurationException, PathNotFoundException, RepositoryException
+            AccessManager accessManager, FileCleanerHolder cleanerHolder) throws RepositoryConfigurationException,
+            PathNotFoundException, RepositoryException
    {
 
       this.workspaceName = config.getName();
@@ -399,7 +401,7 @@
       this.namespaceRegistry = namespaceRegistry;
       this.locationFactory = locationFactory;
 
-      this.fileCleaner = valueFactory.getFileCleaner();
+      this.fileCleaner = cleanerHolder.getFileCleaner();
       this.maxBufferSize =
          config.getContainer().getParameterInteger(WorkspaceDataContainer.MAXBUFFERSIZE_PROP,
             WorkspaceDataContainer.DEF_MAXBUFFERSIZE);
@@ -441,7 +443,7 @@
    public SysViewWorkspaceInitializer(WorkspaceEntry config, RepositoryEntry repConfig,
       CacheableWorkspaceDataManager dataManager, NamespaceRegistryImpl namespaceRegistry,
       LocationFactory locationFactory, NodeTypeManagerImpl nodeTypeManager, ValueFactoryImpl valueFactory,
-      AccessManager accessManager, String restorePath) throws RepositoryException
+      AccessManager accessManager, String restorePath, FileCleanerHolder cleanerHolder) throws RepositoryException
    {
 
       this.workspaceName = config.getName();
@@ -451,7 +453,7 @@
       this.namespaceRegistry = namespaceRegistry;
       this.locationFactory = locationFactory;
 
-      this.fileCleaner = valueFactory.getFileCleaner();
+      this.fileCleaner = cleanerHolder.getFileCleaner();
       this.maxBufferSize =
          config.getContainer().getParameterInteger(WorkspaceDataContainer.MAXBUFFERSIZE_PROP,
             WorkspaceDataContainer.DEF_MAXBUFFERSIZE);

Modified: jcr/branches/1.12.x/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/initializer/RemoteWorkspaceInitializer.java
===================================================================
--- jcr/branches/1.12.x/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/initializer/RemoteWorkspaceInitializer.java	2010-12-27 10:48:16 UTC (rev 3728)
+++ jcr/branches/1.12.x/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/initializer/RemoteWorkspaceInitializer.java	2010-12-27 11:03:47 UTC (rev 3729)
@@ -30,6 +30,7 @@
 import org.exoplatform.services.jcr.impl.core.nodetype.NodeTypeManagerImpl;
 import org.exoplatform.services.jcr.impl.core.value.ValueFactoryImpl;
 import org.exoplatform.services.jcr.impl.dataflow.persistent.CacheableWorkspaceDataManager;
+import org.exoplatform.services.jcr.impl.util.io.FileCleanerHolder;
 
 import java.io.File;
 
@@ -51,10 +52,11 @@
    public RemoteWorkspaceInitializer(WorkspaceEntry config, RepositoryEntry repConfig,
       CacheableWorkspaceDataManager dataManager, NamespaceRegistryImpl namespaceRegistry,
       LocationFactory locationFactory, NodeTypeManagerImpl nodeTypeManager, ValueFactoryImpl valueFactory,
-      AccessManager accessManager) throws RepositoryConfigurationException, PathNotFoundException, RepositoryException
+            AccessManager accessManager, FileCleanerHolder cleanerHolder) throws RepositoryConfigurationException,
+            PathNotFoundException, RepositoryException
    {
       super(config, repConfig, dataManager, namespaceRegistry, locationFactory, nodeTypeManager, valueFactory,
-         accessManager, null);
+               accessManager, cleanerHolder);
 
       if (!isWorkspaceInitialized())
       {

Modified: jcr/branches/1.12.x/exo.jcr.component.ext/src/test/java/org/exoplatform/services/jcr/ext/backup/AbstractBackupUseCasesTest.java
===================================================================
--- jcr/branches/1.12.x/exo.jcr.component.ext/src/test/java/org/exoplatform/services/jcr/ext/backup/AbstractBackupUseCasesTest.java	2010-12-27 10:48:16 UTC (rev 3728)
+++ jcr/branches/1.12.x/exo.jcr.component.ext/src/test/java/org/exoplatform/services/jcr/ext/backup/AbstractBackupUseCasesTest.java	2010-12-27 11:03:47 UTC (rev 3729)
@@ -32,6 +32,7 @@
 
 import javax.jcr.Node;
 import javax.jcr.RepositoryException;
+import javax.jcr.Session;
 import javax.jcr.Value;
 import javax.jcr.lock.Lock;
 
@@ -155,6 +156,8 @@
       ws1TestRoot.getNode("node_5").remove();
       ws1TestRoot.addNode("node #3").setProperty("exo:data", "property #3");
       ws1TestRoot.addNode("node #5").setProperty("exo:extraData", "property #5");
+      
+      ws1TestRoot.addNode("binary_data").setProperty("data", new FileInputStream(createBLOBTempFile(500)));
 
       ws1TestRoot.save(); // log here via listener
 
@@ -862,6 +865,13 @@
          Thread.sleep(50);
       }
 
+      //will be saved in incremental backup
+      Session wsSession = getReposityToBackup().login(credentials, "ws");
+      wsSession.getRootNode().getNode("backupTest").addNode("binary_data")
+               .setProperty("data",
+               new FileInputStream(createBLOBTempFile(500)));
+      wsSession.save();
+
       // stop fullBackup
 
       backup.stopBackup(bch);
@@ -893,6 +903,12 @@
                Node ws1backTestRoot = back1.getRootNode().getNode("backupTest");
                assertEquals("Restored content should be same", "property-5", ws1backTestRoot.getNode("node_5")
                         .getProperty("exo:data").getString());
+               
+               if (wsName.equals("ws"))
+               {
+                  assertNotNull(ws1backTestRoot.getNode("binary_data"));
+                  assertNotNull(ws1backTestRoot.getNode("binary_data").getProperty("data"));
+               }
             }
             catch (Exception e)
             {



More information about the exo-jcr-commits mailing list