Don't stop if there is an error merging one org.

Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/6e1f5ec5
Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/6e1f5ec5
Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/6e1f5ec5

Branch: refs/heads/1.x
Commit: 6e1f5ec5bffbfa7430d147fb19ce87e3fb8b874f
Parents: 8dd3891
Author: Dave Johnson <[email protected]>
Authored: Tue Jan 5 09:56:57 2016 -0500
Committer: Dave Johnson <[email protected]>
Committed: Tue Jan 5 09:56:57 2016 -0500

----------------------------------------------------------------------
 .../usergrid/tools/DuplicateOrgRepair.java      | 63 +++++++++++++-------
 1 file changed, 42 insertions(+), 21 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/usergrid/blob/6e1f5ec5/stack/tools/src/main/java/org/apache/usergrid/tools/DuplicateOrgRepair.java
----------------------------------------------------------------------
diff --git 
a/stack/tools/src/main/java/org/apache/usergrid/tools/DuplicateOrgRepair.java 
b/stack/tools/src/main/java/org/apache/usergrid/tools/DuplicateOrgRepair.java
index 9c0a592..a33ca0e 100644
--- 
a/stack/tools/src/main/java/org/apache/usergrid/tools/DuplicateOrgRepair.java
+++ 
b/stack/tools/src/main/java/org/apache/usergrid/tools/DuplicateOrgRepair.java
@@ -333,37 +333,58 @@ public class DuplicateOrgRepair extends ToolBase {
                 
                 if ( !org.equals( bestOrg )) {
                     
-                    Set<OrgUser> orgUsers = new HashSet<OrgUser>( 
manager.getOrgUsers( org ));
-                    
-                    for ( OrgUser user : orgUsers ) {
+                    Set<OrgUser> orgUsers = new HashSet<OrgUser>( 
manager.getOrgUsers( org ) );
+
+                    for (OrgUser user : orgUsers) {
                         if (dryRun) {
-                            Object[] args = new Object[] { 
+                            Object[] args = new Object[]{
                                     user.getName(), user.getId(), 
bestOrg.getName(), bestOrg.getId()};
-                            logger.info( "Would add user {}:{} to org {}:{}", 
args);
-                            args = new Object[] { 
+                            logger.info( "Would add user {}:{} to org {}:{}", 
args );
+                            args = new Object[]{
                                     user.getName(), user.getId(), 
org.getName(), org.getId()};
-                            logger.info( "Would remove user {}:{}  org {}:{}", 
args);
+                            logger.info( "Would remove user {}:{}  org {}:{}", 
args );
                         } else {
-                            manager.addUserToOrg( user, bestOrg );
-                            manager.removeUserFromOrg( user, org );
+                            try {
+                                manager.addUserToOrg( user, bestOrg );
+                            } catch ( Exception e ) {
+                                Object[] args = new Object[]{ 
+                                        user.getName(), user.getId(), 
bestOrg.getName(), bestOrg.getId()};
+                                logger.error( "Error adding user {}:{} to org 
{}:{}", args );
+                            }
+                            try {
+                                manager.removeUserFromOrg( user, org );
+                            } catch ( Exception e ) {
+                                Object[] args = new Object[]{ 
+                                        user.getName(), user.getId(), 
org.getName(), org.getId()};
+                                logger.info( "Error removing user {}:{}  org 
{}:{}", args );
+                            }
                         }
                     }
-                    
-                    Set<UUID> orgApps = new HashSet<UUID>( manager.getOrgApps( 
org ));
-                            
-                    for ( UUID appId : orgApps ) {
+
+                    Set<UUID> orgApps = new HashSet<UUID>( manager.getOrgApps( 
org ) );
+
+                    for (UUID appId : orgApps) {
                         if (dryRun) {
-                            Object[] args = new Object[] { 
-                                    appId, bestOrg.getName(), bestOrg.getId()};
-                            logger.info( "Would add app {} to org {}:{}", 
args);
-                            args = new Object[] { 
-                                    appId, org.getName(), org.getId()};
-                            logger.info( "Would remove app {} org {}:{}", 
args);
+                            Object[] args = new Object[]{ appId, 
bestOrg.getName(), bestOrg.getId()};
+                            logger.info( "Would add app {} to org {}:{}", args 
);
+                            args = new Object[]{ appId, org.getName(), 
org.getId()};
+                            logger.info( "Would remove app {} org {}:{}", args 
);
                         } else {
-                            manager.addAppToOrg( appId, bestOrg );
-                            manager.removeAppFromOrg( appId, org );
+                            try {
+                                manager.addAppToOrg( appId, bestOrg );
+                            } catch ( Exception e ) {
+                                Object[] args = new Object[]{ appId, 
bestOrg.getName(), bestOrg.getId()};
+                                logger.error( "Error adding app {} to org 
{}:{}", args );
+                            }
+                            try {
+                                manager.removeAppFromOrg( appId, org );
+                            } catch (Exception e  ) {
+                                Object[] args = new Object[]{ appId, 
org.getName(), org.getId()};
+                                logger.info( "Error removing app {} org 
{}:{}", args );
+                            }
                         }
                     }
+                    
                 }
             }
         }

Reply via email to