public class org.apache.ibatis.executor.statement.RoutingStatementHandler extends java.lang.Object implements org.apache.ibatis.executor.statement.StatementHandler
{
private final org.apache.ibatis.executor.statement.StatementHandler delegate;
public void <init>(org.apache.ibatis.executor.Executor, org.apache.ibatis.mapping.MappedStatement, java.lang.Object, org.apache.ibatis.session.RowBounds, org.apache.ibatis.session.ResultHandler, org.apache.ibatis.mapping.BoundSql)
{
org.apache.ibatis.executor.statement.PreparedStatementHandler v;
org.apache.ibatis.mapping.StatementType v, v;
org.apache.ibatis.session.RowBounds v;
org.apache.ibatis.mapping.BoundSql v;
int[] v;
int v, v;
java.lang.String v;
org.apache.ibatis.executor.Executor v;
org.apache.ibatis.executor.ExecutorException v;
org.apache.ibatis.session.ResultHandler v;
org.apache.ibatis.executor.statement.RoutingStatementHandler v;
org.apache.ibatis.executor.statement.CallableStatementHandler v;
org.apache.ibatis.mapping.MappedStatement v;
java.lang.Object v;
org.apache.ibatis.executor.statement.SimpleStatementHandler v;
v := @this: org.apache.ibatis.executor.statement.RoutingStatementHandler;
v := @parameter: org.apache.ibatis.executor.Executor;
v := @parameter: org.apache.ibatis.mapping.MappedStatement;
v := @parameter: java.lang.Object;
v := @parameter: org.apache.ibatis.session.RowBounds;
v := @parameter: org.apache.ibatis.session.ResultHandler;
v := @parameter: org.apache.ibatis.mapping.BoundSql;
specialinvoke v.<java.lang.Object: void <init>()>();
v = <org.apache.ibatis.executor.statement.RoutingStatementHandler$1: int[] $SwitchMap$org$apache$ibatis$mapping$StatementType>;
v = virtualinvoke v.<org.apache.ibatis.mapping.MappedStatement: org.apache.ibatis.mapping.StatementType getStatementType()>();
v = virtualinvoke v.<org.apache.ibatis.mapping.StatementType: int ordinal()>();
v = v[v];
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
default: goto label;
};
label:
v = new org.apache.ibatis.executor.statement.SimpleStatementHandler;
specialinvoke v.<org.apache.ibatis.executor.statement.SimpleStatementHandler: void <init>(org.apache.ibatis.executor.Executor,org.apache.ibatis.mapping.MappedStatement,java.lang.Object,org.apache.ibatis.session.RowBounds,org.apache.ibatis.session.ResultHandler,org.apache.ibatis.mapping.BoundSql)>(v, v, v, v, v, v);
v.<org.apache.ibatis.executor.statement.RoutingStatementHandler: org.apache.ibatis.executor.statement.StatementHandler delegate> = v;
goto label;
label:
v = new org.apache.ibatis.executor.statement.PreparedStatementHandler;
specialinvoke v.<org.apache.ibatis.executor.statement.PreparedStatementHandler: void <init>(org.apache.ibatis.executor.Executor,org.apache.ibatis.mapping.MappedStatement,java.lang.Object,org.apache.ibatis.session.RowBounds,org.apache.ibatis.session.ResultHandler,org.apache.ibatis.mapping.BoundSql)>(v, v, v, v, v, v);
v.<org.apache.ibatis.executor.statement.RoutingStatementHandler: org.apache.ibatis.executor.statement.StatementHandler delegate> = v;
goto label;
label:
v = new org.apache.ibatis.executor.statement.CallableStatementHandler;
specialinvoke v.<org.apache.ibatis.executor.statement.CallableStatementHandler: void <init>(org.apache.ibatis.executor.Executor,org.apache.ibatis.mapping.MappedStatement,java.lang.Object,org.apache.ibatis.session.RowBounds,org.apache.ibatis.session.ResultHandler,org.apache.ibatis.mapping.BoundSql)>(v, v, v, v, v, v);
v.<org.apache.ibatis.executor.statement.RoutingStatementHandler: org.apache.ibatis.executor.statement.StatementHandler delegate> = v;
goto label;
label:
v = new org.apache.ibatis.executor.ExecutorException;
v = virtualinvoke v.<org.apache.ibatis.mapping.MappedStatement: org.apache.ibatis.mapping.StatementType getStatementType()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.ibatis.mapping.StatementType)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Unknown statement type: \u0001");
specialinvoke v.<org.apache.ibatis.executor.ExecutorException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
public java.sql.Statement prepare(java.sql.Connection, java.lang.Integer) throws java.sql.SQLException
{
org.apache.ibatis.executor.statement.StatementHandler v;
org.apache.ibatis.executor.statement.RoutingStatementHandler v;
java.sql.Connection v;
java.sql.Statement v;
java.lang.Integer v;
v := @this: org.apache.ibatis.executor.statement.RoutingStatementHandler;
v := @parameter: java.sql.Connection;
v := @parameter: java.lang.Integer;
v = v.<org.apache.ibatis.executor.statement.RoutingStatementHandler: org.apache.ibatis.executor.statement.StatementHandler delegate>;
v = interfaceinvoke v.<org.apache.ibatis.executor.statement.StatementHandler: java.sql.Statement prepare(java.sql.Connection,java.lang.Integer)>(v, v);
return v;
}
public void parameterize(java.sql.Statement) throws java.sql.SQLException
{
java.sql.Statement v;
org.apache.ibatis.executor.statement.StatementHandler v;
org.apache.ibatis.executor.statement.RoutingStatementHandler v;
v := @this: org.apache.ibatis.executor.statement.RoutingStatementHandler;
v := @parameter: java.sql.Statement;
v = v.<org.apache.ibatis.executor.statement.RoutingStatementHandler: org.apache.ibatis.executor.statement.StatementHandler delegate>;
interfaceinvoke v.<org.apache.ibatis.executor.statement.StatementHandler: void parameterize(java.sql.Statement)>(v);
return;
}
public void batch(java.sql.Statement) throws java.sql.SQLException
{
java.sql.Statement v;
org.apache.ibatis.executor.statement.StatementHandler v;
org.apache.ibatis.executor.statement.RoutingStatementHandler v;
v := @this: org.apache.ibatis.executor.statement.RoutingStatementHandler;
v := @parameter: java.sql.Statement;
v = v.<org.apache.ibatis.executor.statement.RoutingStatementHandler: org.apache.ibatis.executor.statement.StatementHandler delegate>;
interfaceinvoke v.<org.apache.ibatis.executor.statement.StatementHandler: void batch(java.sql.Statement)>(v);
return;
}
public int update(java.sql.Statement) throws java.sql.SQLException
{
org.apache.ibatis.executor.statement.StatementHandler v;
org.apache.ibatis.executor.statement.RoutingStatementHandler v;
int v;
java.sql.Statement v;
v := @this: org.apache.ibatis.executor.statement.RoutingStatementHandler;
v := @parameter: java.sql.Statement;
v = v.<org.apache.ibatis.executor.statement.RoutingStatementHandler: org.apache.ibatis.executor.statement.StatementHandler delegate>;
v = interfaceinvoke v.<org.apache.ibatis.executor.statement.StatementHandler: int update(java.sql.Statement)>(v);
return v;
}
public java.util.List query(java.sql.Statement, org.apache.ibatis.session.ResultHandler) throws java.sql.SQLException
{
org.apache.ibatis.executor.statement.StatementHandler v;
java.util.List v;
org.apache.ibatis.executor.statement.RoutingStatementHandler v;
java.sql.Statement v;
org.apache.ibatis.session.ResultHandler v;
v := @this: org.apache.ibatis.executor.statement.RoutingStatementHandler;
v := @parameter: java.sql.Statement;
v := @parameter: org.apache.ibatis.session.ResultHandler;
v = v.<org.apache.ibatis.executor.statement.RoutingStatementHandler: org.apache.ibatis.executor.statement.StatementHandler delegate>;
v = interfaceinvoke v.<org.apache.ibatis.executor.statement.StatementHandler: java.util.List query(java.sql.Statement,org.apache.ibatis.session.ResultHandler)>(v, v);
return v;
}
public org.apache.ibatis.cursor.Cursor queryCursor(java.sql.Statement) throws java.sql.SQLException
{
org.apache.ibatis.executor.statement.StatementHandler v;
org.apache.ibatis.executor.statement.RoutingStatementHandler v;
java.sql.Statement v;
org.apache.ibatis.cursor.Cursor v;
v := @this: org.apache.ibatis.executor.statement.RoutingStatementHandler;
v := @parameter: java.sql.Statement;
v = v.<org.apache.ibatis.executor.statement.RoutingStatementHandler: org.apache.ibatis.executor.statement.StatementHandler delegate>;
v = interfaceinvoke v.<org.apache.ibatis.executor.statement.StatementHandler: org.apache.ibatis.cursor.Cursor queryCursor(java.sql.Statement)>(v);
return v;
}
public org.apache.ibatis.mapping.BoundSql getBoundSql()
{
org.apache.ibatis.executor.statement.StatementHandler v;
org.apache.ibatis.executor.statement.RoutingStatementHandler v;
org.apache.ibatis.mapping.BoundSql v;
v := @this: org.apache.ibatis.executor.statement.RoutingStatementHandler;
v = v.<org.apache.ibatis.executor.statement.RoutingStatementHandler: org.apache.ibatis.executor.statement.StatementHandler delegate>;
v = interfaceinvoke v.<org.apache.ibatis.executor.statement.StatementHandler: org.apache.ibatis.mapping.BoundSql getBoundSql()>();
return v;
}
public org.apache.ibatis.executor.parameter.ParameterHandler getParameterHandler()
{
org.apache.ibatis.executor.statement.StatementHandler v;
org.apache.ibatis.executor.statement.RoutingStatementHandler v;
org.apache.ibatis.executor.parameter.ParameterHandler v;
v := @this: org.apache.ibatis.executor.statement.RoutingStatementHandler;
v = v.<org.apache.ibatis.executor.statement.RoutingStatementHandler: org.apache.ibatis.executor.statement.StatementHandler delegate>;
v = interfaceinvoke v.<org.apache.ibatis.executor.statement.StatementHandler: org.apache.ibatis.executor.parameter.ParameterHandler getParameterHandler()>();
return v;
}
}