package com.github.pgelinas.jackson.javax.json;
import java.util.*;
import javax.json.JsonValue.ValueType;
import com.fasterxml.jackson.core.*;
public final class JacksonValueUtils {
private JacksonValueUtils() {}
private static EnumMap<JsonToken, ValueType> _tokenToValueType;
static {
_tokenToValueType = new EnumMap<JsonToken, ValueType>(JsonToken.class);
_tokenToValueType.put(JsonToken.START_ARRAY, ValueType.ARRAY);
_tokenToValueType.put(JsonToken.START_OBJECT, ValueType.OBJECT);
_tokenToValueType.put(JsonToken.VALUE_FALSE, ValueType.FALSE);
_tokenToValueType.put(JsonToken.VALUE_TRUE, ValueType.TRUE);
_tokenToValueType.put(JsonToken.VALUE_NULL, ValueType.NULL);
_tokenToValueType.put(JsonToken.VALUE_NUMBER_FLOAT, ValueType.NUMBER);
_tokenToValueType.put(JsonToken.VALUE_NUMBER_INT, ValueType.NUMBER);
_tokenToValueType.put(JsonToken.VALUE_STRING, ValueType.STRING);
}
public static ValueType getValueType(JacksonValue<?> value) {
return _tokenToValueType.get(value.delegate().asToken());
}
protected static boolean isEquals(JacksonValue<?> thisValue, Object obj) {
if (thisValue == obj) return true;
if (obj == null) return false;
if (thisValue.getClass() != obj.getClass()) return false;
JacksonValue<?> other = (JacksonValue<?>) obj;
if (thisValue.delegate() == null) {
if (other.delegate() != null) return false;
} else if (!thisValue.delegate().equals(other.delegate())) return false;
return true;
}
}