gluu
公開メンバ関数 | 非公開メンバ関数 | 非公開変数類 | 静的非公開変数類 | 全メンバ一覧
org.gluu.credmanager.conf.MainSettingsProducer クラス
org.gluu.credmanager.conf.MainSettingsProducer 連携図
Collaboration graph

公開メンバ関数

MainSettings instance ()
 

非公開メンバ関数

String getGluuBase ()
 
File getConfigFile (String baseDir)
 

非公開変数類

Logger logger
 

静的非公開変数類

static final String DEFAULT_GLUU_BASE = "/etc/gluu"
 
static final String CONF_FILE_RELATIVE_PATH = "conf/cred-manager2.json"
 

詳解

著者
jgomer

関数詳解

◆ getConfigFile()

File org.gluu.credmanager.conf.MainSettingsProducer.getConfigFile ( String  baseDir)
inlineprivate

Returns a reference to the configuration file of the application (cred-manager.json)

引数
baseDirPath to configuration file without the CONF_FILE_RELATIVE_PATH part
戻り値
A File object
47  {
48  Path path = Paths.get(baseDir, CONF_FILE_RELATIVE_PATH);
49  return Files.exists(path) ? path.toFile() : null;
50  }
static final String CONF_FILE_RELATIVE_PATH
Definition: MainSettingsProducer.java:32

◆ getGluuBase()

String org.gluu.credmanager.conf.MainSettingsProducer.getGluuBase ( )
inlineprivate
37  {
38  String candidateGluuBase = System.getProperty("gluu.base");
39  return (candidateGluuBase != null || Utils.onWindows()) ? candidateGluuBase : DEFAULT_GLUU_BASE;
40  }
static final String DEFAULT_GLUU_BASE
Definition: MainSettingsProducer.java:30

◆ instance()

MainSettings org.gluu.credmanager.conf.MainSettingsProducer.instance ( )
inline
53  {
54 
55  MainSettings settings = null;
56  logger.info("init. Obtaining global settings");
57 
58  String gluuBase = getGluuBase();
59  logger.info("init. Gluu base inferred was {}", gluuBase);
60 
61  if (gluuBase != null) {
62  //Get a reference to the config-file
63  File srcConfigFile = getConfigFile(gluuBase);
64 
65  if (srcConfigFile == null) {
66  logger.error("init. Cannot read configuration file {}", CONF_FILE_RELATIVE_PATH);
67  } else {
68  try {
69  ObjectMapper mapper = new ObjectMapper();
70  mapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
71  //Parses config file in a Configs instance
72  settings = mapper.readValue(srcConfigFile, MainSettings.class);
73  settings.setSourceFile(srcConfigFile);
74 
75  List<String> enabledMethods = settings.getEnabledMethods();
76  Map<String, String> acrPluginMapping = settings.getAcrPluginMap();
77  if (Utils.isNotEmpty(enabledMethods)) {
78 
79  if (Utils.isEmpty(acrPluginMapping)) {
80  //If acr plugin mapping does not exist and deprecated "enabled_methods" property does, migrate data
81  acrPluginMapping = new HashMap<>();
82  for (String acr : enabledMethods) {
83  acrPluginMapping.put(acr, null);
84  }
85  settings.setAcrPluginMap(acrPluginMapping);
86  }
87  //Dismiss "enabled_methods" contents
88  settings.setEnabledMethods(null);
89  settings.save();
90  }
91  } catch (Exception e) {
92  logger.error("Error parsing configuration file {}", CONF_FILE_RELATIVE_PATH);
93  logger.error(e.getMessage(), e);
94  }
95  }
96  }
97  return settings;
98 
99  }
File getConfigFile(String baseDir)
Definition: MainSettingsProducer.java:47
static final String CONF_FILE_RELATIVE_PATH
Definition: MainSettingsProducer.java:32
Logger logger
Definition: MainSettingsProducer.java:35
String getGluuBase()
Definition: MainSettingsProducer.java:37

メンバ詳解

◆ CONF_FILE_RELATIVE_PATH

final String org.gluu.credmanager.conf.MainSettingsProducer.CONF_FILE_RELATIVE_PATH = "conf/cred-manager2.json"
staticprivate

◆ DEFAULT_GLUU_BASE

final String org.gluu.credmanager.conf.MainSettingsProducer.DEFAULT_GLUU_BASE = "/etc/gluu"
staticprivate

◆ logger

Logger org.gluu.credmanager.conf.MainSettingsProducer.logger
private

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