[exo-jcr-commits] exo-jcr SVN: r2113 - in jcr/trunk/exo.jcr.component.ext/src: test/java/org/exoplatform/services/jcr/ext/backup and 1 other directory.

do-not-reply at jboss.org do-not-reply at jboss.org
Thu Mar 25 06:50:18 EDT 2010


Author: areshetnyak
Date: 2010-03-25 06:50:17 -0400 (Thu, 25 Mar 2010)
New Revision: 2113

Modified:
   jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/impl/RepositoryBackupChainImpl.java
   jcr/trunk/exo.jcr.component.ext/src/test/java/org/exoplatform/services/jcr/ext/backup/TestBackupManager.java
Log:
EXOJCR-549 : The implementation backup/restore whole repository.

Modified: jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/impl/RepositoryBackupChainImpl.java
===================================================================
--- jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/impl/RepositoryBackupChainImpl.java	2010-03-25 10:10:58 UTC (rev 2112)
+++ jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/backup/impl/RepositoryBackupChainImpl.java	2010-03-25 10:50:17 UTC (rev 2113)
@@ -110,18 +110,36 @@
    {
       if (state != FINISHED)
       {
+         for (BackupChain bc : workspaceBackups)
+         {
+            System.out.println( repositoryBackupId + " : " + getState(bc.getFullBackupState()));
+         }
+         
          int fullBackupsState =-1;
          int incrementalBackupsState = -1;
 
          for (BackupChain bc : workspaceBackups)
          {
             fullBackupsState = bc.getFullBackupState();
-
-            if (bc.getBackupConfig().getBackupType() == BackupManager.FULL_AND_INCREMENTAL)
+            
+            if (fullBackupsState != BackupJob.FINISHED)
             {
-               incrementalBackupsState = bc.getIncrementalBackupState();
+               break;
             }
          }
+         
+         for (BackupChain bChein : workspaceBackups)
+         {
+            if (bChein.getBackupConfig().getBackupType() == BackupManager.FULL_AND_INCREMENTAL)
+            {
+               incrementalBackupsState = bChein.getIncrementalBackupState();
+               
+               if (incrementalBackupsState == BackupJob.WORKING )
+               {
+                  break;
+               }
+            }
+         }
 
          if (config.getBackupType() == BackupManager.FULL_BACKUP_ONLY)
          {
@@ -218,4 +236,19 @@
       return config;
    }
 
+   private String getState(int type)
+   {
+      String state = "UNDEFINED STATE";
+
+      if (type == BackupJob.FINISHED)
+         state = "FINISHED";
+      else if (type == BackupJob.STARTING)
+         state = "STARTING";
+      else if (type == BackupJob.WAITING)
+         state = "WAITING";
+      else if (type == BackupJob.WORKING)
+         state = "WORKING";
+
+      return state;
+   }
 }

Modified: jcr/trunk/exo.jcr.component.ext/src/test/java/org/exoplatform/services/jcr/ext/backup/TestBackupManager.java
===================================================================
--- jcr/trunk/exo.jcr.component.ext/src/test/java/org/exoplatform/services/jcr/ext/backup/TestBackupManager.java	2010-03-25 10:10:58 UTC (rev 2112)
+++ jcr/trunk/exo.jcr.component.ext/src/test/java/org/exoplatform/services/jcr/ext/backup/TestBackupManager.java	2010-03-25 10:50:17 UTC (rev 2113)
@@ -46,7 +46,7 @@
 public class TestBackupManager extends AbstractBackupTestCase
 {
 
-   /*public void testFullBackupRestore() throws Exception
+   public void testFullBackupRestore() throws Exception
    {
       // backup
       File backDir = new File("target/backup/ws1");
@@ -201,11 +201,11 @@
          fail("There are no backup files in " + backDir.getAbsolutePath());
    }
 
-   *//**
+   /**
     * With BLOBs, locks, copy and move
     * 
     * @throws Exception
-    *//*
+    */
    public void testIncrementalBackupRestore2() throws Exception
    {
       // full backup with BLOBs & incremental with BLOBs
@@ -737,7 +737,7 @@
       }
       else
          fail("There are no backup files in " + backDir.getAbsolutePath());
-   }*/
+   }
    
    
    public void testRepositoryFullBackupRestore() throws Exception



More information about the exo-jcr-commits mailing list