All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.aerospike.mapper.tools.utils.ParserUtils Maven / Gradle / Ivy

package com.aerospike.mapper.tools.utils;

public class ParserUtils {
    private static final ParserUtils instance = new ParserUtils();

    public static ParserUtils getInstance() {
        return instance;
    }

    private ParserUtils() {
    }

    public String get(String value) {
        return parseString(value);
    }

    private String parseString(String value) {
        if (value == null || value.length() <= 3) {
            return value;
        }
        if ((value.startsWith("${") || value.startsWith("#{")) && value.endsWith("}")) {
            // Strip off the identifying tokens and split into value and default
            String[] values = value.substring(2, value.length() - 1).split(":");

            String translatedValue;
            if (value.startsWith("${")) {
                translatedValue = System.getProperty(values[0]);
            } else {
                translatedValue = System.getenv(values[0]);
            }

            if (translatedValue != null) {
                return translatedValue;
            }
            if (values.length > 1) {
                // A default was provided, use it.
                return values[1];
            }
            // No environment/property variable was found, no default, return null
            return null;
        }
        return value;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy