@Autowired public StellarServiceImpl(CuratorFramework client) { this.client = client; try { ConfigurationsUtils.setupStellarStatically(this.client); } catch (Exception e) { throw new IllegalStateException("Unable to setup stellar statically: " + e.getMessage(), e); } }
public static void setupStellarStatically(CuratorFramework client) throws Exception { byte[] ret = null; try { ret = readGlobalConfigBytesFromZookeeper(client); } catch(KeeperException.NoNodeException nne) { //can't find the node } if(ret == null || ret.length == 0) { setupStellarStatically(client, Optional.empty()); } else { setupStellarStatically(client, Optional.of(new String(ret))); } }
/** * Writes config content for a specific config type to the provided print stream. Optionally * provide a config name in addition to the config type and it will only print the json for a * specific config, e.g. bro, yaf, snort, etc. * * @param out stream to use as output * @param client zk client * @param configType GLOBAL, PARSER, ENRICHMENT, etc. * @param configName Typically a sensor name like bro, snort, yaf, etc. * @throws Exception */ public static void dumpConfigs(PrintStream out, CuratorFramework client, ConfigurationType configType, Optional<String> configName) throws Exception { ConfigurationsUtils.visitConfigs(client, (type, name, data) -> { setupStellarStatically(client, Optional.ofNullable(data)); type.deserialize(data); out.println(type + " Config: " + name + System.lineSeparator() + data); }, configType, configName); }
public static void visitConfigs(CuratorFramework client, final ConfigurationVisitor callback) throws Exception { visitConfigs(client, (type, name, data) -> { setupStellarStatically(client, Optional.ofNullable(data)); callback.visit(type, name, data); }, GLOBAL, Optional.empty()); visitConfigs(client, callback, PARSER, Optional.empty()); visitConfigs(client, callback, INDEXING, Optional.empty()); visitConfigs(client, callback, ENRICHMENT, Optional.empty()); visitConfigs(client, callback, PROFILER, Optional.empty()); }
final byte[] globalConfig = readGlobalConfigFromFile(rootFilePath); if (globalConfig.length > 0) { setupStellarStatically(client, Optional.of(new String(globalConfig))); writeGlobalConfigToZookeeper(globalConfig, client);
final byte[] globalConfig = readGlobalConfigFromFile(globalConfigPath); if (globalConfig.length > 0) { setupStellarStatically(client, Optional.of(new String(globalConfig))); ConfigurationsUtils.writeGlobalConfigToZookeeper(readGlobalConfigFromFile(globalConfigPath), client);
ConfigurationsUtils.setupStellarStatically(zookeeperClient); if (zookeeperCache == null) { ConfigurationsUpdater<ProfilerConfigurations> updater = createUpdater();
ConfigurationsUtils.setupStellarStatically(client); if (cache == null) { ConfigurationsUpdater<CONFIG_T> updater = createUpdater();