Class AutoModuleQuery

java.lang.Object
org.seasar.doma.jdbc.query.AbstractQuery
org.seasar.doma.jdbc.query.AutoModuleQuery
All Implemented Interfaces:
ModuleQuery, Query
Direct Known Subclasses:
AutoFunctionQuery, AutoProcedureQuery

public abstract class AutoModuleQuery extends AbstractQuery implements ModuleQuery
An abstract base class for queries that call database modules.

This class provides common functionality for queries that call database stored procedures and functions. It handles parameter binding, module name qualification, and SQL generation.

  • Field Details

    • sql

      protected CallableSql sql
      The callable SQL for this module query.
    • catalogName

      protected String catalogName
      The catalog name of the module.
    • schemaName

      protected String schemaName
      The schema name of the module.
    • moduleName

      protected String moduleName
      The name of the module.
    • qualifiedName

      protected String qualifiedName
      The qualified name of the module.
    • isQuoteRequired

      protected boolean isQuoteRequired
      Whether quotes are required for identifiers.
    • parameters

      protected final List<SqlParameter> parameters
      The parameters for the module call.
    • sqlLogType

      protected SqlLogType sqlLogType
      The SQL log type for this module query.
  • Constructor Details

    • AutoModuleQuery

      public AutoModuleQuery()
  • Method Details

    • prepareQualifiedName

      protected void prepareQualifiedName()
      Prepares the qualified name of the module.

      This method builds the fully qualified name of the module using catalog, schema, and module names, applying quotes if required.

    • prepareOptions

      protected void prepareOptions()
      Prepares the options for this module query.

      This method sets default values for query timeout if not already set.

    • complete

      public void complete()
      Completes this query after execution. This method must be called after the query is executed.
      Specified by:
      complete in interface Query
    • setCatalogName

      public void setCatalogName(String catalogName)
      Sets the catalog name of the module.
      Parameters:
      catalogName - the catalog name
    • setSchemaName

      public void setSchemaName(String schemaName)
      Sets the schema name of the module.
      Parameters:
      schemaName - the schema name
    • setModuleName

      protected void setModuleName(String moduleName)
      Sets the name of the module.
      Parameters:
      moduleName - the module name
    • setQuoteRequired

      public void setQuoteRequired(boolean isQuoteRequired)
      Sets whether quotes are required for identifiers.
      Parameters:
      isQuoteRequired - true if quotes are required
    • setSqlLogType

      public void setSqlLogType(SqlLogType sqlLogType)
      Sets the SQL log type for this module query.
      Parameters:
      sqlLogType - the SQL log type
    • addParameter

      public void addParameter(SqlParameter parameter)
      Adds a parameter to this module query.
      Parameters:
      parameter - the parameter to add
    • getQualifiedName

      public String getQualifiedName()
      Returns the qualified name of the database module.
      Specified by:
      getQualifiedName in interface ModuleQuery
      Returns:
      the qualified name
    • getSql

      public CallableSql getSql()
      Returns the callable SQL for this module query.
      Specified by:
      getSql in interface ModuleQuery
      Specified by:
      getSql in interface Query
      Returns:
      the callable SQL
    • getSqlLogType

      public SqlLogType getSqlLogType()
      Returns the SQL log type for this module query.
      Specified by:
      getSqlLogType in interface ModuleQuery
      Returns:
      the SQL log type