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

com.moon.core.json.JSONBoolean Maven / Gradle / Ivy

package com.moon.core.json;

import java.util.List;
import java.util.Map;
import java.util.function.BooleanSupplier;

/**
 * @author moonsky
 */
public enum JSONBoolean implements JSON, Comparable, BooleanSupplier {
    /**
     * true
     */
    TRUE(true),
    /**
     * false
     */
    FALSE(false);

    final Boolean value;

    JSONBoolean(boolean value) { this.value = value; }

    @Override
    public Map getMap(Object key) { throw new UnsupportedOperationException(); }

    @Override
    public List getList(Object key) { throw new UnsupportedOperationException(); }


    @Override
    @SuppressWarnings("unchecked")
    public  T get() { return (T) value; }

    @Override
    public JSONObject getJsonObject(Object key) { throw new UnsupportedOperationException(); }

    @Override
    public JSONArray getJsonArray(Object key) { throw new UnsupportedOperationException(); }

    @Override
    public int getIntValue(Object key) { throw new UnsupportedOperationException(); }

    @Override
    public Integer getInteger(Object key) { throw new UnsupportedOperationException(); }

    @Override
    public long getLongValue(Object key) { throw new UnsupportedOperationException(); }

    @Override
    public Long getLong(Object key) { throw new UnsupportedOperationException(); }

    @Override
    public double getDoubleValue(Object key) { throw new UnsupportedOperationException(); }

    @Override
    public Double getDouble(Object key) { throw new UnsupportedOperationException(); }

    @Override
    public String getString(Object key) { return toString(); }

    @Override
    public String toString() { return Boolean.toString(value); }

    @Override
    public boolean getAsBoolean() { return value; }

    public Boolean getBoolean() { return value; }
}