1 5 package com.nightlabs.ipanema.test.util; 6 7 import javax.security.auth.login.AppConfigurationEntry ; 8 import javax.security.auth.login.Configuration ; 9 10 14 public class IpanemaSecurityConfiguration extends Configuration 15 { 16 private static IpanemaSecurityConfiguration configInstance = null; 17 private IpanemaSecurityConfigurationEntry configurationEntry; 18 19 20 public IpanemaSecurityConfiguration() 21 { 22 configurationEntry = new IpanemaSecurityConfigurationEntry("ipanema", "org.jboss.security.ClientLoginModule"); 23 } 24 25 public AppConfigurationEntry [] getAppConfigurationEntry(String name) 26 { 27 if(name.equals(configurationEntry.getApplicationName())) 28 return new AppConfigurationEntry [] {new AppConfigurationEntry ( 29 configurationEntry.getLoginModuleName(), 30 strToLoginModuleControlFlag(configurationEntry.getControlFlag()), 31 configurationEntry.getOptions() 32 )}; 33 else 34 return new AppConfigurationEntry [] {}; 35 } 36 37 private static AppConfigurationEntry.LoginModuleControlFlag strToLoginModuleControlFlag(String flag){ 38 if (flag.toLowerCase().equals(IpanemaSecurityConfigurationEntry.MODULE_CONTROL_FLAG_REQUIRED)) 39 return AppConfigurationEntry.LoginModuleControlFlag.REQUIRED; 40 else if (flag.toLowerCase().equals(IpanemaSecurityConfigurationEntry.MODULE_CONTROL_FLAG_REQUISITE)) 41 return AppConfigurationEntry.LoginModuleControlFlag.REQUISITE; 42 else if (flag.toLowerCase().equals(IpanemaSecurityConfigurationEntry.MODULE_CONTROL_FLAG_SUFFICIENT)) 43 return AppConfigurationEntry.LoginModuleControlFlag.SUFFICIENT; 44 else if (flag.toLowerCase().equals(IpanemaSecurityConfigurationEntry.MODULE_CONTROL_FLAG_OPTIONAL)) 45 return AppConfigurationEntry.LoginModuleControlFlag.OPTIONAL; 46 47 return AppConfigurationEntry.LoginModuleControlFlag.REQUIRED; 48 } 49 50 public void refresh() 51 { 52 } 53 54 public static void declareConfiguration() 55 { 56 if(configInstance == null) 57 configInstance = new IpanemaSecurityConfiguration(); 58 59 if (configInstance instanceof IpanemaSecurityConfiguration) 60 Configuration.setConfiguration(configInstance); 61 } 62 } 63 | Popular Tags |