You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by ol...@apache.org on 2012/07/08 18:12:07 UTC

svn commit: r1358771 - /archiva/redback/redback-core/trunk/redback-integrations/redback-struts2/redback-struts2-integration/src/main/java/org/apache/archiva/redback/struts2/interceptor/ForceAdminUserInterceptor.java

Author: olamy
Date: Sun Jul  8 16:12:07 2012
New Revision: 1358771

URL: http://svn.apache.org/viewvc?rev=1358771&view=rev
Log:
ensure closing stream

Modified:
    archiva/redback/redback-core/trunk/redback-integrations/redback-struts2/redback-struts2-integration/src/main/java/org/apache/archiva/redback/struts2/interceptor/ForceAdminUserInterceptor.java

Modified: archiva/redback/redback-core/trunk/redback-integrations/redback-struts2/redback-struts2-integration/src/main/java/org/apache/archiva/redback/struts2/interceptor/ForceAdminUserInterceptor.java
URL: http://svn.apache.org/viewvc/archiva/redback/redback-core/trunk/redback-integrations/redback-struts2/redback-struts2-integration/src/main/java/org/apache/archiva/redback/struts2/interceptor/ForceAdminUserInterceptor.java?rev=1358771&r1=1358770&r2=1358771&view=diff
==============================================================================
--- archiva/redback/redback-core/trunk/redback-integrations/redback-struts2/redback-struts2-integration/src/main/java/org/apache/archiva/redback/struts2/interceptor/ForceAdminUserInterceptor.java (original)
+++ archiva/redback/redback-core/trunk/redback-integrations/redback-struts2/redback-struts2-integration/src/main/java/org/apache/archiva/redback/struts2/interceptor/ForceAdminUserInterceptor.java Sun Jul  8 16:12:07 2012
@@ -21,20 +21,21 @@ package org.apache.archiva.redback.strut
 
 import com.opensymphony.xwork2.ActionInvocation;
 import com.opensymphony.xwork2.interceptor.Interceptor;
-import org.apache.archiva.redback.integration.checks.security.AdminAutoCreateCheck;
-import org.apache.archiva.redback.users.User;
-import org.apache.archiva.redback.users.UserNotFoundException;
-import org.apache.commons.lang.StringUtils;
-import org.apache.struts2.ServletActionContext;
 import org.apache.archiva.redback.authentication.PasswordBasedAuthenticationDataSource;
 import org.apache.archiva.redback.configuration.UserConfiguration;
+import org.apache.archiva.redback.integration.checks.security.AdminAutoCreateCheck;
+import org.apache.archiva.redback.integration.util.AutoLoginCookies;
 import org.apache.archiva.redback.role.RoleManager;
 import org.apache.archiva.redback.role.RoleManagerException;
 import org.apache.archiva.redback.system.SecuritySession;
 import org.apache.archiva.redback.system.SecuritySystem;
 import org.apache.archiva.redback.system.SecuritySystemConstants;
+import org.apache.archiva.redback.users.User;
 import org.apache.archiva.redback.users.UserManager;
-import org.apache.archiva.redback.integration.util.AutoLoginCookies;
+import org.apache.archiva.redback.users.UserNotFoundException;
+import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang.StringUtils;
+import org.apache.struts2.ServletActionContext;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.context.annotation.Scope;
@@ -52,7 +53,6 @@ import java.util.Properties;
  * EnvironmentCheckInterceptor
  *
  * @author <a href="mailto:joakim@erdfelt.com">Joakim Erdfelt</a>
- *
  */
 @Controller( "redbackForceAdminUserInterceptor" )
 @Scope( "prototype" )
@@ -66,20 +66,20 @@ public class ForceAdminUserInterceptor
     private static boolean checked = false;
 
     /**
-     *  role-hint="configurable"
+     * role-hint="configurable"
      */
     @Inject
     @Named( value = "userManager#configurable" )
     private UserManager userManager;
 
     /**
-     *  role-hint="default"
+     * role-hint="default"
      */
     @Inject
     private RoleManager roleManager;
 
     /**
-     *  role-hint="default"
+     * role-hint="default"
      */
     @Inject
     private UserConfiguration config;
@@ -155,26 +155,32 @@ public class ForceAdminUserInterceptor
             String forceAdminFilePath = System.getProperty( AdminAutoCreateCheck.FORCE_ADMIN_FILE_PATH );
             if ( StringUtils.isBlank( forceAdminFilePath ) )
             {
-                log.info( AdminAutoCreateCheck.FORCE_ADMIN_FILE_PATH + " system props is empty don't use an auto creation admin " );
+                log.info( AdminAutoCreateCheck.FORCE_ADMIN_FILE_PATH
+                              + " system props is empty don't use an auto creation admin " );
                 return null;
             }
             File file = new File( forceAdminFilePath );
             if ( !file.exists() )
             {
-                log.warn( "file set in sysprops " + AdminAutoCreateCheck.FORCE_ADMIN_FILE_PATH + " not exists skip admin auto creation" );
+                log.warn( "file set in sysprops " + AdminAutoCreateCheck.FORCE_ADMIN_FILE_PATH
+                              + " not exists skip admin auto creation" );
                 return null;
             }
             Properties properties = new Properties();
-            FileInputStream fis = null;
+            FileInputStream fis = new FileInputStream( file );
             try
             {
-                properties.load( new FileInputStream( file ) );
+                properties.load( fis );
             }
             catch ( Exception e )
             {
                 log.warn( "error loading properties from file " + forceAdminFilePath + " skip admin auto creation" );
                 return null;
             }
+            finally
+            {
+                IOUtils.closeQuietly( fis );
+            }
 
             // ensure we have all properties
             String password = properties.getProperty( AdminAutoCreateCheck.ADMIN_PASSWORD_KEY );
@@ -195,7 +201,8 @@ public class ForceAdminUserInterceptor
 
             if ( StringUtils.isBlank( fullName ) )
             {
-                log.warn( "property " + AdminAutoCreateCheck.ADMIN_FULL_NAME_KEY + " not set skip auto admin creation" );
+                log.warn(
+                    "property " + AdminAutoCreateCheck.ADMIN_FULL_NAME_KEY + " not set skip auto admin creation" );
                 return null;
             }