in oak-api/src/main/java/org/apache/jackrabbit/oak/api/Type.java [184:201]
public static Type<?> fromTag(int tag, boolean array) {
switch (tag) {
case PropertyType.STRING: return array ? STRINGS : STRING;
case PropertyType.BINARY: return array ? BINARIES : BINARY;
case PropertyType.LONG: return array ? LONGS : LONG;
case PropertyType.DOUBLE: return array ? DOUBLES : DOUBLE;
case PropertyType.DATE: return array ? DATES: DATE;
case PropertyType.BOOLEAN: return array ? BOOLEANS: BOOLEAN;
case PropertyType.NAME: return array ? NAMES : NAME;
case PropertyType.PATH: return array ? PATHS: PATH;
case PropertyType.REFERENCE: return array ? REFERENCES : REFERENCE;
case PropertyType.WEAKREFERENCE: return array ? WEAKREFERENCES : WEAKREFERENCE;
case PropertyType.URI: return array ? URIS: URI;
case PropertyType.DECIMAL: return array ? DECIMALS : DECIMAL;
case PropertyType.UNDEFINED: return array ? UNDEFINEDS : UNDEFINED;
default: throw new IllegalArgumentException("Invalid type tag: " + tag);
}
}