static boolean isBooleanOptionSet()

in ttl2-compatible/src/main/java/com/alibaba/ttl/threadpool/agent/TtlAgentHelper.java [24:46]


    static boolean isBooleanOptionSet(
        @Nullable final Map<String, String> kvs, @NonNull String key,
        boolean defaultValueIfKeyAbsent, boolean defaultValueIfValueAbsent
    ) {
        final String value;

        final Properties properties = System.getProperties();
        if (properties.containsKey(key)) {
            value = properties.getProperty(key).trim();
        } else {
            if (kvs == null) return defaultValueIfKeyAbsent;

            final boolean containsKey = kvs.containsKey(key);
            if (!containsKey) return defaultValueIfKeyAbsent;

            value = kvs.get(key).trim();
        }

        // if value is blank
        if (value.isEmpty()) return defaultValueIfValueAbsent;

        return !"false".equalsIgnoreCase(value);
    }