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

com.peersafe.base.core.runtime.Value Maven / Gradle / Ivy

The newest version!
package com.peersafe.base.core.runtime;

import org.json.JSONArray;
import org.json.JSONObject;

import java.util.List;
import java.util.Map;

public enum Value {
    UNKNOWN,
    STRING,
    JSON_OBJECT,
    JSON_ARRAY,
    LIST,
    MAP,
    NUMBER,
    BYTE,
    DOUBLE,
    FLOAT,
    INTEGER,
    LONG,
    BYTE_ARRAY,
    SHORT, BOOLEAN;

    static public Value typeOf (Object object) {
        if (object instanceof String) {
            return STRING;
        }
        else if (object instanceof Number) {
            if (object instanceof Byte) {
                return BYTE;
            }
            else if (object instanceof Double) {
                return DOUBLE;
            }
            else if (object instanceof Float) {
                return FLOAT;
            }
            else if (object instanceof Integer) {
                return INTEGER;
            }
            else if (object instanceof Long) {
                return LONG;
            }
            else if (object instanceof Short) {
                return SHORT;
            }
            return NUMBER;
        }
        else if (object instanceof JSONObject) {
            return JSON_OBJECT;
        }
        else if (object instanceof JSONArray) {
            return JSON_ARRAY;
        }
        else if (object instanceof Map) {
            return MAP;
        }
        else if (object instanceof Boolean) {
            return BOOLEAN;
        }
        else if (object instanceof List) {
            return LIST;
        }
        else if (object instanceof byte[]) {
            return BYTE_ARRAY;
        }
        else {
            return UNKNOWN;
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy