com.ibatis.sqlmap.engine.builder.xml
Class XmlSqlMapClientBuilder

java.lang.Object
  extended bycom.ibatis.sqlmap.engine.builder.xml.XmlSqlMapClientBuilder

public class XmlSqlMapClientBuilder
extends java.lang.Object

NOT THREAD SAFE. USE SEPARATE INSTANCES PER THREAD.


Nested Class Summary
private static class XmlSqlMapClientBuilder.SimpleErrorHandler
          ********************************** ******* SimpleErrorHandler ******* **********************************
 
Field Summary
private  ExtendedSqlMapClient client
           
private  java.lang.String currentNamespace
           
private  ErrorContext errorCtx
           
private  java.util.Properties globalProps
           
private static java.lang.String NODE_CACHE_MODEL
           
private static java.lang.String NODE_DATA_SOURCE
           
private static java.lang.String NODE_DELETE
           
private static java.lang.String NODE_FLUSH_INTERVAL
           
private static java.lang.String NODE_FLUSH_ON_EXECUTE
           
private static java.lang.String NODE_INSERT
           
private static java.lang.String NODE_PARAMETER_MAP
           
private static java.lang.String NODE_PROCEDURE
           
private static java.lang.String NODE_PROPERTIES
           
private static java.lang.String NODE_PROPERTY
           
private static java.lang.String NODE_RESULT_MAP
           
private static java.lang.String NODE_SELECT
           
private static java.lang.String NODE_SELECT_KEY
           
private static java.lang.String NODE_SETTINGS
           
private static java.lang.String NODE_SQL_MAP
           
private static java.lang.String NODE_STATEMENT
           
private static java.lang.String NODE_TX_MANAGER
           
private static java.lang.String NODE_TYPE_ALIAS
           
private static java.lang.String NODE_TYPE_HANDLER
           
private static java.lang.String NODE_UPDATE
           
private static java.lang.String PARAMETER_TOKEN
           
private static Probe PROBE
           
private  XmlConverter sqlMapConfigConv
           
private  XmlConverter sqlMapConv
           
private  java.util.HashMap typeAliases
           
private  boolean useStatementNamespaces
           
private  boolean validationEnabled
           
 
Constructor Summary
XmlSqlMapClientBuilder()
           
 
Method Summary
private  void addNameValuePairProperty(org.w3c.dom.Node child, java.util.Properties modelProperties)
           
private  void applyInlineParameterMap(GeneralStatement statement, java.lang.String sqlStatement)
           
private  java.lang.String applyNamespace(java.lang.String id)
           
 SqlMapClient buildSqlMap(java.io.Reader reader)
           
 SqlMapClient buildSqlMap(java.io.Reader reader, java.util.Properties props)
           
 SqlMapClient buildSqlMap(java.io.Reader reader, java.util.Properties props, XmlConverter sqlMapConfigConverter, XmlConverter sqlMapConverter)
           
 SqlMapClient buildSqlMap(java.io.Reader reader, XmlConverter sqlMapConfigConverter, XmlConverter sqlMapConverter)
           
private  SelectKeyStatement findAndParseSelectKeyStatement(org.w3c.dom.Node n, GeneralStatement insertStatement)
           
private  org.w3c.dom.Document getDoc(java.io.Reader reader)
           
 boolean isValidationEnabled()
           
private  java.util.Properties parseAttributes(org.w3c.dom.Node n)
           
private  void parseCacheModel(org.w3c.dom.Node n)
           
private  javax.sql.DataSource parseDataSource(org.w3c.dom.Node n)
           
private  void parseDelete(org.w3c.dom.Node n)
           
private  boolean parseDynamicTags(org.w3c.dom.Node n, DynamicParent dynamic, java.lang.StringBuffer sqlBuffer, boolean isDynamic, boolean postParseRequired)
           
private  MappedStatement parseGeneralStatement(org.w3c.dom.Node n, GeneralStatement statement)
           
private  void parseGlobalProperties(org.w3c.dom.Node n)
           
private static SqlText parseInlineParameterMap(TypeHandlerFactory typeHandlerFactory, java.lang.Class parameterClass, java.lang.String sqlStatement)
           
static SqlText parseInlineParameterMap(TypeHandlerFactory typeHandlerFactory, java.lang.String sqlStatement)
           
private  void parseInsert(org.w3c.dom.Node n)
           
private  void parseParameterMap(org.w3c.dom.Node n)
           
private  void parseProcedure(org.w3c.dom.Node n)
           
private  java.lang.String parsePropertyTokens(java.lang.String string)
           
private  void parseResultMap(org.w3c.dom.Node n)
           
private  void parseSelect(org.w3c.dom.Node n)
           
private  SelectKeyStatement parseSelectKey(org.w3c.dom.Node n, GeneralStatement insertStatement)
           
private  void parseSettings(org.w3c.dom.Node n)
           
private  void parseSqlMap(org.w3c.dom.Node n)
           
private  SqlMapClient parseSqlMapConfig(org.w3c.dom.Node n)
           
private  void parseSqlMapRef(org.w3c.dom.Node n)
           
private  void parseStatement(org.w3c.dom.Node n)
           
private  void parseTransactionManager(org.w3c.dom.Node n)
           
private  void parseTypeAliasNode(org.w3c.dom.Node child)
           
private  void parseTypeHandlerNode(org.w3c.dom.Node child)
           
private  void parseUpdate(org.w3c.dom.Node n)
           
private  void processSqlStatement(org.w3c.dom.Node n, GeneralStatement statement)
           
private  void putTypeAlias(java.lang.String alias, java.lang.String value)
           
private  java.lang.String resolveAlias(java.lang.String string)
           
private static TypeHandler resolveTypeHandler(TypeHandlerFactory typeHandlerFactory, java.lang.Class clazz, java.lang.String propertyName, java.lang.String javaType, java.lang.String jdbcType)
           
private static TypeHandler resolveTypeHandler(TypeHandlerFactory typeHandlerFactory, java.lang.Class clazz, java.lang.String propertyName, java.lang.String javaType, java.lang.String jdbcType, boolean useSetterToResolve)
           
 void setValidationEnabled(boolean validationEnabled)
           
private  void wireUpCacheModelListeners()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PROBE

private static final Probe PROBE

NODE_PROPERTIES

private static final java.lang.String NODE_PROPERTIES
See Also:
Constant Field Values

NODE_SETTINGS

private static final java.lang.String NODE_SETTINGS
See Also:
Constant Field Values

NODE_TX_MANAGER

private static final java.lang.String NODE_TX_MANAGER
See Also:
Constant Field Values

NODE_DATA_SOURCE

private static final java.lang.String NODE_DATA_SOURCE
See Also:
Constant Field Values

NODE_PROPERTY

private static final java.lang.String NODE_PROPERTY
See Also:
Constant Field Values

NODE_SQL_MAP

private static final java.lang.String NODE_SQL_MAP
See Also:
Constant Field Values

NODE_CACHE_MODEL

private static final java.lang.String NODE_CACHE_MODEL
See Also:
Constant Field Values

NODE_FLUSH_INTERVAL

private static final java.lang.String NODE_FLUSH_INTERVAL
See Also:
Constant Field Values

NODE_FLUSH_ON_EXECUTE

private static final java.lang.String NODE_FLUSH_ON_EXECUTE
See Also:
Constant Field Values

NODE_RESULT_MAP

private static final java.lang.String NODE_RESULT_MAP
See Also:
Constant Field Values

NODE_PARAMETER_MAP

private static final java.lang.String NODE_PARAMETER_MAP
See Also:
Constant Field Values

NODE_SELECT

private static final java.lang.String NODE_SELECT
See Also:
Constant Field Values

NODE_INSERT

private static final java.lang.String NODE_INSERT
See Also:
Constant Field Values

NODE_UPDATE

private static final java.lang.String NODE_UPDATE
See Also:
Constant Field Values

NODE_DELETE

private static final java.lang.String NODE_DELETE
See Also:
Constant Field Values

NODE_STATEMENT

private static final java.lang.String NODE_STATEMENT
See Also:
Constant Field Values

NODE_PROCEDURE

private static final java.lang.String NODE_PROCEDURE
See Also:
Constant Field Values

NODE_SELECT_KEY

private static final java.lang.String NODE_SELECT_KEY
See Also:
Constant Field Values

NODE_TYPE_ALIAS

private static final java.lang.String NODE_TYPE_ALIAS
See Also:
Constant Field Values

NODE_TYPE_HANDLER

private static final java.lang.String NODE_TYPE_HANDLER
See Also:
Constant Field Values

PARAMETER_TOKEN

private static final java.lang.String PARAMETER_TOKEN
See Also:
Constant Field Values

validationEnabled

private boolean validationEnabled

errorCtx

private ErrorContext errorCtx

client

private ExtendedSqlMapClient client

sqlMapConv

private XmlConverter sqlMapConv

sqlMapConfigConv

private XmlConverter sqlMapConfigConv

globalProps

private java.util.Properties globalProps

useStatementNamespaces

private boolean useStatementNamespaces

currentNamespace

private java.lang.String currentNamespace

typeAliases

private java.util.HashMap typeAliases
Constructor Detail

XmlSqlMapClientBuilder

public XmlSqlMapClientBuilder()
Method Detail

isValidationEnabled

public boolean isValidationEnabled()

setValidationEnabled

public void setValidationEnabled(boolean validationEnabled)

buildSqlMap

public SqlMapClient buildSqlMap(java.io.Reader reader,
                                java.util.Properties props,
                                XmlConverter sqlMapConfigConverter,
                                XmlConverter sqlMapConverter)

buildSqlMap

public SqlMapClient buildSqlMap(java.io.Reader reader,
                                XmlConverter sqlMapConfigConverter,
                                XmlConverter sqlMapConverter)

buildSqlMap

public SqlMapClient buildSqlMap(java.io.Reader reader,
                                java.util.Properties props)

buildSqlMap

public SqlMapClient buildSqlMap(java.io.Reader reader)

parseSqlMapConfig

private SqlMapClient parseSqlMapConfig(org.w3c.dom.Node n)
                                throws java.io.IOException
Throws:
java.io.IOException

parseGlobalProperties

private void parseGlobalProperties(org.w3c.dom.Node n)

parseSettings

private void parseSettings(org.w3c.dom.Node n)

parseTransactionManager

private void parseTransactionManager(org.w3c.dom.Node n)

parseDataSource

private javax.sql.DataSource parseDataSource(org.w3c.dom.Node n)

parseSqlMapRef

private void parseSqlMapRef(org.w3c.dom.Node n)
                     throws java.io.IOException
Throws:
java.io.IOException

parseSqlMap

private void parseSqlMap(org.w3c.dom.Node n)

parseProcedure

private void parseProcedure(org.w3c.dom.Node n)

parseSelect

private void parseSelect(org.w3c.dom.Node n)

parseInsert

private void parseInsert(org.w3c.dom.Node n)

parseUpdate

private void parseUpdate(org.w3c.dom.Node n)

parseDelete

private void parseDelete(org.w3c.dom.Node n)

parseStatement

private void parseStatement(org.w3c.dom.Node n)

parseGeneralStatement

private MappedStatement parseGeneralStatement(org.w3c.dom.Node n,
                                              GeneralStatement statement)

parseSelectKey

private SelectKeyStatement parseSelectKey(org.w3c.dom.Node n,
                                          GeneralStatement insertStatement)

processSqlStatement

private void processSqlStatement(org.w3c.dom.Node n,
                                 GeneralStatement statement)

parseDynamicTags

private boolean parseDynamicTags(org.w3c.dom.Node n,
                                 DynamicParent dynamic,
                                 java.lang.StringBuffer sqlBuffer,
                                 boolean isDynamic,
                                 boolean postParseRequired)

findAndParseSelectKeyStatement

private SelectKeyStatement findAndParseSelectKeyStatement(org.w3c.dom.Node n,
                                                          GeneralStatement insertStatement)

applyInlineParameterMap

private void applyInlineParameterMap(GeneralStatement statement,
                                     java.lang.String sqlStatement)

parseInlineParameterMap

public static SqlText parseInlineParameterMap(TypeHandlerFactory typeHandlerFactory,
                                              java.lang.String sqlStatement)

parseInlineParameterMap

private static SqlText parseInlineParameterMap(TypeHandlerFactory typeHandlerFactory,
                                               java.lang.Class parameterClass,
                                               java.lang.String sqlStatement)

parseResultMap

private void parseResultMap(org.w3c.dom.Node n)

parseParameterMap

private void parseParameterMap(org.w3c.dom.Node n)

parseTypeHandlerNode

private void parseTypeHandlerNode(org.w3c.dom.Node child)

parseCacheModel

private void parseCacheModel(org.w3c.dom.Node n)

applyNamespace

private java.lang.String applyNamespace(java.lang.String id)

wireUpCacheModelListeners

private void wireUpCacheModelListeners()

getDoc

private org.w3c.dom.Document getDoc(java.io.Reader reader)

resolveTypeHandler

private static TypeHandler resolveTypeHandler(TypeHandlerFactory typeHandlerFactory,
                                              java.lang.Class clazz,
                                              java.lang.String propertyName,
                                              java.lang.String javaType,
                                              java.lang.String jdbcType)

resolveTypeHandler

private static TypeHandler resolveTypeHandler(TypeHandlerFactory typeHandlerFactory,
                                              java.lang.Class clazz,
                                              java.lang.String propertyName,
                                              java.lang.String javaType,
                                              java.lang.String jdbcType,
                                              boolean useSetterToResolve)

resolveAlias

private java.lang.String resolveAlias(java.lang.String string)

parseTypeAliasNode

private void parseTypeAliasNode(org.w3c.dom.Node child)

putTypeAlias

private void putTypeAlias(java.lang.String alias,
                          java.lang.String value)

addNameValuePairProperty

private void addNameValuePairProperty(org.w3c.dom.Node child,
                                      java.util.Properties modelProperties)

parseAttributes

private java.util.Properties parseAttributes(org.w3c.dom.Node n)

parsePropertyTokens

private java.lang.String parsePropertyTokens(java.lang.String string)