gluu
公開メンバ関数 | 限定公開メンバ関数 | 静的関数 | 非公開メンバ関数 | 非公開変数類 | 静的非公開変数類 | 全メンバ一覧
org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration > クラステンプレートabstract
org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration > の継承関係図
Inheritance graph
org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration > 連携図
Collaboration graph

公開メンバ関数

void destroy ()
 
FileConfiguration loadLdapConfiguration (String ldapConfigurationFileName, boolean mandatory)
 
FileConfiguration getLdapConfiguration ()
 
String getCryptoConfigurationSalt ()
 
getAppConfiguration ()
 

限定公開メンバ関数

 Configuration ()
 
String getDefaultLdapConfigurationFileName ()
 
abstract String getLdapConfigurationFileName ()
 
abstract Class< L > getAppConfigurationType ()
 
abstract String getApplicationConfigurationPropertyName ()
 

静的関数

 [static initializer]
 

非公開メンバ関数

void create ()
 
FileConfiguration loadLdapConfiguration ()
 
String loadCryptoConfigurationSalt ()
 
String confDir ()
 
boolean createFromLdap ()
 
loadConfigurationFromLdap (String... returnAttributes)
 
PersistenceEntryManager createLdapEntryManager ()
 
void destroyLdapEntryManager (final PersistenceEntryManager ldapEntryManager)
 

非公開変数類

final Logger logger = LoggerFactory.getLogger(Configuration.class)
 
String confDir
 
String saltFilePath
 
FileConfiguration ldapConfiguration
 
appConfiguration
 
String cryptoConfigurationSalt
 
PersistenceEntryManager ldapEntryManager
 
long ldapFileLastModifiedTime
 
AtomicBoolean isActive
 

静的非公開変数類

static final String BASE_DIR
 
static final String DIR = BASE_DIR + File.separator + "conf" + File.separator
 
static final String SALT_FILE_NAME = "salt"
 

詳解

Base OpenId configuration

著者
Yuriy Movchan
バージョン
0.1, 11/02/2015

構築子と解体子

◆ Configuration()

68  {
69  this.isActive = new AtomicBoolean(true);
70  try {
71  create();
72  } finally {
73  this.isActive.set(false);
74  }
75  }
AtomicBoolean isActive
Definition: Configuration.java:66
void create()
Definition: Configuration.java:77

関数詳解

◆ [static initializer]()

org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.[static initializer] ( )
inlinestaticpackage

◆ confDir()

String org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.confDir ( )
inlineprivate
156  {
157  final String confDir = getLdapConfiguration().getString("confDir");
158  if (StringUtils.isNotBlank(confDir)) {
159  return confDir;
160  }
161 
162  return DIR;
163  }
FileConfiguration getLdapConfiguration()
Definition: Configuration.java:214
static final String DIR
Definition: Configuration.java:49
String confDir()
Definition: Configuration.java:156

◆ create()

void org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.create ( )
inlineprivate
77  {
79 
80  this.confDir = confDir();
82 
84 
86 
87  if (!createFromLdap()) {
88  logger.error("Failed to load configuration from Ldap. Please fix it!!!.");
89  throw new ConfigurationException("Failed to load configuration from Ldap.");
90  } else {
91  logger.info("Configuration loaded successfully.");
92  }
93  }
FileConfiguration ldapConfiguration
Definition: Configuration.java:56
FileConfiguration loadLdapConfiguration()
Definition: Configuration.java:101
boolean createFromLdap()
Definition: Configuration.java:165
static final String SALT_FILE_NAME
Definition: Configuration.java:51
String loadCryptoConfigurationSalt()
Definition: Configuration.java:145
String confDir()
Definition: Configuration.java:156
final Logger logger
Definition: Configuration.java:32
PersistenceEntryManager createLdapEntryManager()
Definition: Configuration.java:193
PersistenceEntryManager ldapEntryManager
Definition: Configuration.java:61
String cryptoConfigurationSalt
Definition: Configuration.java:59
String saltFilePath
Definition: Configuration.java:54

◆ createFromLdap()

boolean org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.createFromLdap ( )
inlineprivate
165  {
166  logger.info("Loading configuration from Ldap...");
167  try {
168  final L ldapConf = loadConfigurationFromLdap();
169  if (ldapConf != null) {
170  this.appConfiguration = (C) ldapConf.getApplication();
171  return true;
172  }
173  } catch (Exception ex) {
174  logger.error(ex.getMessage(), ex);
175  }
176 
177  return false;
178  }
C appConfiguration
Definition: Configuration.java:57
L loadConfigurationFromLdap(String... returnAttributes)
Definition: Configuration.java:180
final Logger logger
Definition: Configuration.java:32

◆ createLdapEntryManager()

PersistenceEntryManager org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.createLdapEntryManager ( )
inlineprivate
193  {
194  Properties connectionProperties = (Properties) this.ldapConfiguration.getProperties();
195  Properties decryptedConnectionProperties = PropertiesDecrypter.decryptProperties(connectionProperties, this.cryptoConfigurationSalt);
196 
197  LdapEntryManagerFactory ldapEntryManagerFactory = new LdapEntryManagerFactory();
198  PersistenceEntryManager ldapEntryManager = ldapEntryManagerFactory.createEntryManager(decryptedConnectionProperties);
199 
200  logger.debug("Created LdapEntryManager: {}", ldapEntryManager);
201 
202  return ldapEntryManager;
203  }
FileConfiguration ldapConfiguration
Definition: Configuration.java:56
final Logger logger
Definition: Configuration.java:32
PersistenceEntryManager ldapEntryManager
Definition: Configuration.java:61
String cryptoConfigurationSalt
Definition: Configuration.java:59

◆ destroy()

void org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.destroy ( )
inline
95  {
96  if (this.ldapEntryManager != null) {
98  }
99  }
PersistenceEntryManager ldapEntryManager
Definition: Configuration.java:61
void destroyLdapEntryManager(final PersistenceEntryManager ldapEntryManager)
Definition: Configuration.java:205

◆ destroyLdapEntryManager()

void org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.destroyLdapEntryManager ( final PersistenceEntryManager  ldapEntryManager)
inlineprivate
205  {
206  boolean result = ldapEntryManager.destroy();
207  if (result) {
208  logger.debug("Destoyed LdapEntryManager: {}", ldapEntryManager);
209  } else {
210  logger.error("Failed to destoy LdapEntryManager: {}", ldapEntryManager);
211  }
212  }
final Logger logger
Definition: Configuration.java:32
PersistenceEntryManager ldapEntryManager
Definition: Configuration.java:61

◆ getAppConfiguration()

C org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.getAppConfiguration ( )
inline
226  {
227  return appConfiguration;
228  }
C appConfiguration
Definition: Configuration.java:57

◆ getAppConfigurationType()

abstract Class<L> org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.getAppConfigurationType ( )
abstractprotected

◆ getApplicationConfigurationPropertyName()

abstract String org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.getApplicationConfigurationPropertyName ( )
abstractprotected

◆ getCryptoConfigurationSalt()

String org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.getCryptoConfigurationSalt ( )
inline
218  {
220  }
String cryptoConfigurationSalt
Definition: Configuration.java:59

◆ getDefaultLdapConfigurationFileName()

String org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.getDefaultLdapConfigurationFileName ( )
inlineprotected
222  {
223  return "ox-ldap.properties";
224  }

◆ getLdapConfiguration()

FileConfiguration org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.getLdapConfiguration ( )
inline
214  {
215  return ldapConfiguration;
216  }
FileConfiguration ldapConfiguration
Definition: Configuration.java:56

◆ getLdapConfigurationFileName()

abstract String org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.getLdapConfigurationFileName ( )
abstractprotected

◆ loadConfigurationFromLdap()

L org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.loadConfigurationFromLdap ( String...  returnAttributes)
inlineprivate
180  {
181  try {
182  final String dn = getLdapConfiguration().getString(getApplicationConfigurationPropertyName());
183 
184  final L ldapConf = this.ldapEntryManager.find(getAppConfigurationType(), dn, returnAttributes);
185  return ldapConf;
186  } catch (BasePersistenceException ex) {
187  logger.error(ex.getMessage());
188  }
189 
190  return null;
191  }
FileConfiguration getLdapConfiguration()
Definition: Configuration.java:214
abstract Class< L > getAppConfigurationType()
abstract String getApplicationConfigurationPropertyName()
final Logger logger
Definition: Configuration.java:32
PersistenceEntryManager ldapEntryManager
Definition: Configuration.java:61

◆ loadCryptoConfigurationSalt()

String org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.loadCryptoConfigurationSalt ( )
inlineprivate
145  {
146  try {
147  FileConfiguration cryptoConfiguration = new FileConfiguration(this.saltFilePath);
148 
149  return cryptoConfiguration.getString("encodeSalt");
150  } catch (Exception ex) {
151  logger.error("Failed to load configuration from {}", saltFilePath, ex);
152  throw new ConfigurationException("Failed to load configuration from " + saltFilePath, ex);
153  }
154  }
final Logger logger
Definition: Configuration.java:32
String saltFilePath
Definition: Configuration.java:54

◆ loadLdapConfiguration() [1/2]

FileConfiguration org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.loadLdapConfiguration ( )
inlineprivate
101  {
102  String ldapConfigurationFileName = getLdapConfigurationFileName();
103  FileConfiguration fileConfiguration = loadLdapConfiguration(ldapConfigurationFileName, false);
104  if (fileConfiguration == null) {
105  ldapConfigurationFileName = getDefaultLdapConfigurationFileName();
106  fileConfiguration = loadLdapConfiguration(ldapConfigurationFileName, true);
107  }
108 
109  return fileConfiguration;
110  }
FileConfiguration loadLdapConfiguration()
Definition: Configuration.java:101
String getDefaultLdapConfigurationFileName()
Definition: Configuration.java:222

◆ loadLdapConfiguration() [2/2]

FileConfiguration org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.loadLdapConfiguration ( String  ldapConfigurationFileName,
boolean  mandatory 
)
inline
112  {
113  try {
114  if (StringHelper.isEmpty(ldapConfigurationFileName)) {
115  if (mandatory) {
116  throw new ConfigurationException("Failed to load Ldap configuration file!");
117  } else {
118  return null;
119  }
120  }
121 
122  String ldapConfigurationFilePath = DIR + ldapConfigurationFileName;
123 
124  FileConfiguration ldapConfiguration = new FileConfiguration(ldapConfigurationFilePath);
125  if (ldapConfiguration.isLoaded()) {
126  File ldapFile = new File(ldapConfigurationFilePath);
127  if (ldapFile.exists()) {
128  this.ldapFileLastModifiedTime = ldapFile.lastModified();
129  }
130 
131  return ldapConfiguration;
132  }
133  } catch (Exception ex) {
134  logger.error(ex.getMessage(), ex);
135  throw new ConfigurationException("Failed to load Ldap configuration from " + ldapConfigurationFileName, ex);
136  }
137 
138  if (mandatory) {
139  throw new ConfigurationException("Failed to load Ldap configuration from " + ldapConfigurationFileName);
140  }
141 
142  return null;
143  }
FileConfiguration ldapConfiguration
Definition: Configuration.java:56
static final String DIR
Definition: Configuration.java:49
final Logger logger
Definition: Configuration.java:32
long ldapFileLastModifiedTime
Definition: Configuration.java:64

メンバ詳解

◆ appConfiguration

C org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.appConfiguration
private

◆ BASE_DIR

final String org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.BASE_DIR
staticprivate

◆ confDir

◆ cryptoConfigurationSalt

String org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.cryptoConfigurationSalt
private

◆ DIR

final String org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.DIR = BASE_DIR + File.separator + "conf" + File.separator
staticprivate

◆ isActive

AtomicBoolean org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.isActive
private

◆ ldapConfiguration

FileConfiguration org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.ldapConfiguration
private

◆ ldapEntryManager

PersistenceEntryManager org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.ldapEntryManager
private

◆ ldapFileLastModifiedTime

long org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.ldapFileLastModifiedTime
private

◆ logger

final Logger org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.logger = LoggerFactory.getLogger(Configuration.class)
private

◆ SALT_FILE_NAME

final String org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.SALT_FILE_NAME = "salt"
staticprivate

◆ saltFilePath

String org.gluu.oxauth.client.conf.Configuration< C extends AppConfiguration, L extends LdapAppConfiguration >.saltFilePath
private

このクラス詳解は次のファイルから抽出されました: