Example usage for org.apache.ibatis.type TypeHandlerRegistry getUnknownTypeHandler

List of usage examples for org.apache.ibatis.type TypeHandlerRegistry getUnknownTypeHandler

Introduction

In this page you can find the example usage for org.apache.ibatis.type TypeHandlerRegistry getUnknownTypeHandler.

Prototype

public TypeHandler<Object> getUnknownTypeHandler() 

Source Link

Usage

From source file:com.ibatis.sqlmap.engine.builder.InlineParameterMapParser.java

License:Apache License

private ParameterMapping oldParseMapping(String token, Class<?> parameterClass,
        TypeHandlerRegistry typeHandlerRegistry) {
    if (token.indexOf(PARAM_DELIM) > -1) {
        StringTokenizer paramParser = new StringTokenizer(token, PARAM_DELIM, true);
        int n1 = paramParser.countTokens();
        if (n1 == 3) {
            String name = paramParser.nextToken();
            paramParser.nextToken(); //ignore ":"
            String type = paramParser.nextToken();
            TypeHandler<?> handler;
            if (parameterClass == null) {
                handler = typeHandlerRegistry.getUnknownTypeHandler();
            } else {
                handler = resolveTypeHandler(parameterClass, name, null, JdbcType.valueOf(type));
            }//from www.  jav  a2s .co m
            ParameterMapping.Builder mapping = new ParameterMapping.Builder(configuration, name, handler);
            mapping.jdbcType(JdbcType.valueOf(type));
            return mapping.build();
        } else if (n1 >= 5) {
            throw new UnsupportedOperationException("iBATIS 3 does not support null value substitution.");
        } else {
            throw new SqlMapException("Incorrect inline parameter map format: " + token);
        }
    } else {
        TypeHandler<?> handler;
        if (parameterClass == null) {
            handler = typeHandlerRegistry.getUnknownTypeHandler();
        } else {
            handler = resolveTypeHandler(parameterClass, token, null, null);
        }
        ParameterMapping.Builder mapping = new ParameterMapping.Builder(configuration, token, handler);
        return mapping.build();
    }
}