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 ()
 
C 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 ()
 
L loadConfigurationFromLdap (String... returnAttributes)
 
PersistenceEntryManager createLdapEntryManager ()
 
void destroyLdapEntryManager (final PersistenceEntryManager ldapEntryManager)
 

非公開変数類

final Logger logger = LoggerFactory.getLogger(Configuration.class)
 
String confDir
 
String saltFilePath
 
FileConfiguration ldapConfiguration
 
C 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

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