public AppConfigGlobalModelContext()

in pytheas-core/src/main/java/com/netflix/explorers/AppConfigGlobalModelContext.java [69:110]


    public AppConfigGlobalModelContext(@Named("explorerAppName") String appName) {
        final String propertiesFileName = appName + "-explorers.properties";

        try {
            ConfigurationManager.loadPropertiesFromResources(propertiesFileName);
        } catch (IOException e) {
            LOG.error(String.format("Exception loading properties file - %s, Explorers application may not work correctly ",
                     propertiesFileName));
        }

        AbstractConfiguration configuration = ConfigurationManager.getConfigInstance();

        environmentName     = configuration.getString(PROPERTY_ENVIRONMENT_NAME);
        currentRegion       = configuration.getString(PROPERTY_CURRENT_REGION);
        applicationVersion  = (String) configuration.getProperty(PROPERTY_APPLICATION_VERSION);
        applicationName     = (String) configuration.getProperty(PROPERTY_APPLICATION_NAME);
        isLocal             = configuration.getBoolean(PROPERTY_IS_LOCAL, false);
        homePageUrl         = configuration.getString(PROPERTY_HOME_PAGE);
        defaultPort         = configuration.getShort(PROPERTY_DEFAULT_PORT, (short) 8080);
        dataCenter          = configuration.getString(PROPERTY_DATA_CENTER);
        defaultExplorerName = configuration.getString(PROPERTY_DEFAULT_EXPLORER);

        try {
            Iterator<String> dcKeySet = configuration.getKeys(PROPERTIES_PREFIX + ".dc");
            while (dcKeySet.hasNext()) {
                String dcKey = dcKeySet.next();
                String key  = StringUtils.substringBefore(dcKey, ".");
                String attr = StringUtils.substringAfter (dcKey,  ".");

                CrossLink link = links.get(key);
                if (link == null) {
                    link = new CrossLink();
                    links.put(key,  link);
                }

                BeanUtils.setProperty(link, attr, configuration.getProperty(dcKey));
            }
        } catch (Exception e) {
            LOG.error("Exception in constructing links map ", e);
            throw new RuntimeException(e);
        }
    }