public static Value column2Value()

in neo4jwriter/src/main/java/com/alibaba/datax/plugin/writer/neo4jwriter/adapter/ValueAdapter.java [24:78]


    public static Value column2Value(final Column column, final Neo4jProperty neo4JProperty) {

        String typeStr = neo4JProperty.getType();
        PropertyType type = PropertyType.fromStrIgnoreCase(typeStr);
        if (column.asString() == null) {
            return NullValue.NULL;
        }

        switch (type) {
            case NULL:
                return NullValue.NULL;
            case MAP:
                return Values.value(JSON.parseObject(column.asString(), Map.class));
            case BOOLEAN:
                return Values.value(column.asBoolean());
            case STRING:
                return Values.value(column.asString());
            case INTEGER:
            case LONG:
                return Values.value(column.asLong());
            case SHORT:
                return Values.value(Short.valueOf(column.asString()));
            case FLOAT:
            case DOUBLE:
                return Values.value(column.asDouble());
            case BYTE_ARRAY:
                return Values.value(parseArrayType(neo4JProperty, column.asString(), Byte::valueOf));
            case CHAR_ARRAY:
                return Values.value(parseArrayType(neo4JProperty, column.asString(), (s) -> s.charAt(0)));
            case BOOLEAN_ARRAY:
                return Values.value(parseArrayType(neo4JProperty, column.asString(), Boolean::valueOf));
            case STRING_ARRAY:
            case Object_ARRAY:
            case LIST:
                return Values.value(parseArrayType(neo4JProperty, column.asString(), Function.identity()));
            case LONG_ARRAY:
                return Values.value(parseArrayType(neo4JProperty, column.asString(), Long::valueOf));
            case INT_ARRAY:
                return Values.value(parseArrayType(neo4JProperty, column.asString(), Integer::valueOf));
            case SHORT_ARRAY:
                return Values.value(parseArrayType(neo4JProperty, column.asString(), Short::valueOf));
            case DOUBLE_ARRAY:
            case FLOAT_ARRAY:
                return Values.value(parseArrayType(neo4JProperty, column.asString(), Double::valueOf));
            case LOCAL_DATE:
                return Values.value(DateAdapter.localDate(column.asString(), neo4JProperty));
            case LOCAL_TIME:
                return Values.value(DateAdapter.localTime(column.asString(), neo4JProperty));
            case LOCAL_DATE_TIME:
                return Values.value(DateAdapter.localDateTime(column.asString(), neo4JProperty));
            default:
                return Values.value(column.getRawData());

        }
    }