org.jooq.util
Class AbstractRoutineDefinition

java.lang.Object
  extended by org.jooq.util.AbstractDefinition
      extended by org.jooq.util.AbstractRoutineDefinition
All Implemented Interfaces:
Definition, RoutineDefinition
Direct Known Subclasses:
DB2RoutineDefinition, H2RoutineDefinition, HSQLDBRoutineDefinition, MySQLRoutineDefinition, OracleRoutineDefinition, PostgresRoutineDefinition, SQLServerRoutineDefinition, SybaseRoutineDefinition

public abstract class AbstractRoutineDefinition
extends AbstractDefinition
implements RoutineDefinition

Author:
Lukas Eder

Field Summary
protected  List<ParameterDefinition> allParameters
           
protected  List<ParameterDefinition> inParameters
           
protected  List<ParameterDefinition> outParameters
           
protected static Pattern PARAMETER_PATTERN
           
protected  ParameterDefinition returnValue
           
protected static Pattern TYPE_PATTERN
           
 
Constructor Summary
AbstractRoutineDefinition(SchemaDefinition schema, PackageDefinition pkg, String name, String comment, String overload)
           
 
Method Summary
protected  void addParameter(InOutDefinition inOut, ParameterDefinition parameter)
           
 List<ParameterDefinition> getAllParameters()
          A list of all IN, OUT, and INOUT parameter column definitions
 List<Definition> getDefinitionPath()
           
 List<ParameterDefinition> getInParameters()
          A list of IN or INOUT parameter column definitions
 List<ParameterDefinition> getOutParameters()
          A list of OUT or INOUT parameter column definitions
 PackageDefinition getPackage()
           
 DataTypeDefinition getReturnType()
           
 ParameterDefinition getReturnValue()
           
protected abstract  void init0()
           
 boolean isSQLUsable()
           
 
Methods inherited from class org.jooq.util.AbstractDefinition
create, equals, getComment, getConnection, getDatabase, getDialect, getInputName, getName, getOutputName, getOverload, getQualifiedInputName, getQualifiedName, getQualifiedOutputName, getSchema, hashCode, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.jooq.util.Definition
getComment, getDatabase, getInputName, getName, getOutputName, getOverload, getQualifiedInputName, getQualifiedName, getQualifiedOutputName, getSchema
 

Field Detail

PARAMETER_PATTERN

protected static final Pattern PARAMETER_PATTERN

TYPE_PATTERN

protected static final Pattern TYPE_PATTERN

inParameters

protected List<ParameterDefinition> inParameters

outParameters

protected List<ParameterDefinition> outParameters

returnValue

protected ParameterDefinition returnValue

allParameters

protected List<ParameterDefinition> allParameters
Constructor Detail

AbstractRoutineDefinition

public AbstractRoutineDefinition(SchemaDefinition schema,
                                 PackageDefinition pkg,
                                 String name,
                                 String comment,
                                 String overload)
Method Detail

getDefinitionPath

public List<Definition> getDefinitionPath()
Specified by:
getDefinitionPath in interface Definition
Returns:
A path of definitions for this definition, e.g. [schema].[package].[routine].[parameter]

init0

protected abstract void init0()
                       throws SQLException
Throws:
SQLException

getPackage

public final PackageDefinition getPackage()
Specified by:
getPackage in interface RoutineDefinition
Returns:
The routine's package. null if the routine is not in a package

getInParameters

public final List<ParameterDefinition> getInParameters()
Description copied from interface: RoutineDefinition
A list of IN or INOUT parameter column definitions

Specified by:
getInParameters in interface RoutineDefinition

getOutParameters

public final List<ParameterDefinition> getOutParameters()
Description copied from interface: RoutineDefinition
A list of OUT or INOUT parameter column definitions

Specified by:
getOutParameters in interface RoutineDefinition

getAllParameters

public final List<ParameterDefinition> getAllParameters()
Description copied from interface: RoutineDefinition
A list of all IN, OUT, and INOUT parameter column definitions

Specified by:
getAllParameters in interface RoutineDefinition

getReturnValue

public final ParameterDefinition getReturnValue()
Specified by:
getReturnValue in interface RoutineDefinition
Returns:
The return value column definition

getReturnType

public final DataTypeDefinition getReturnType()
Specified by:
getReturnType in interface RoutineDefinition
Returns:
The return value simple Java type

isSQLUsable

public final boolean isSQLUsable()
Specified by:
isSQLUsable in interface RoutineDefinition
Returns:
Whether this routine can be used in SQL (a function without OUT parameters)

addParameter

protected final void addParameter(InOutDefinition inOut,
                                  ParameterDefinition parameter)


Copyright © 2012. All Rights Reserved.