org.opendaylight.tsdr.spi.util.ConfigFileUtil.java Source code

Java tutorial

Introduction

Here is the source code for org.opendaylight.tsdr.spi.util.ConfigFileUtil.java

Source

/*
 * Copyright (c) 2015 Cisco Systems, Inc. and others.  All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
 * and is available at http://www.eclipse.org/legal/epl-v10.html
 */
package org.opendaylight.tsdr.spi.util;

import java.io.File;
import java.io.IOException;
import java.util.Map;
import java.util.Properties;

import com.google.common.base.Charsets;
import com.google.common.collect.Maps;
import com.google.common.io.Files;

/**
 * @author <a href="mailto:saichler@cisco.com">Sharon Aicler</a>
 *         <p>
 *         Created: March 29, 2016
 */
public final class ConfigFileUtil {
    public static final String CONFIG_DIR = "." + File.separator + "etc" + File.separator;

    public static final String CASSANDRA_STORE_CONFIG_FILE = CONFIG_DIR + "tsdr-persistence-cassandra.properties";
    public static final String HBASE_STORE_CONFIG_FILE = CONFIG_DIR + "tsdr-persistence-hbase.properties";
    public static final String HSQLDB_STORE_CONFIG_FILE = CONFIG_DIR + "tsdr-persistence-hsqldb.properties";
    public static final String ELASTICSEARCH_STORE_CONFIG_FILE = CONFIG_DIR
            + "tsdr-persistence-elasticsearch.properties";

    public static final String METRIC_PERSISTENCE_PROPERTY = "metric-persistency";
    public static final String LOG_PERSISTENCE_PROPERTY = "log-persistency";
    public static final String BINARY_PERSISTENCE_PROPERTY = "binary-persistency";

    private ConfigFileUtil() {
        throw new AssertionError(); // Protection from reflection.
    }

    public static Map<String, String> loadConfig(String config) throws IOException {
        Properties properties = new Properties();
        properties.load(Files.asCharSource(new File(config), Charsets.UTF_8).openStream());
        return Maps.fromProperties(properties);
    }

    public static boolean isMetricPersistenceEnabled(Map<String, String> properties) {
        return Boolean.valueOf(properties.getOrDefault(METRIC_PERSISTENCE_PROPERTY, Boolean.FALSE.toString()));
    }

    public static boolean isLogPersistenceEnabled(Map<String, String> properties) {
        return Boolean.valueOf(properties.getOrDefault(LOG_PERSISTENCE_PROPERTY, Boolean.FALSE.toString()));
    }

    public static boolean isBinaryPersistenceEnabled(Map<String, String> properties) {
        return Boolean.valueOf(properties.getOrDefault(BINARY_PERSISTENCE_PROPERTY, Boolean.FALSE.toString()));
    }
}