All Superinterfaces:
Call, Cloneable, Serializable
All Known Implementing Classes:
QueryStringInteraction, SQLCall, XQueryInteraction

public interface QueryStringCall extends Call
INTERNAL: Purpose: Used to define query string calls. These include SQLCall, XQueryInteraction which reuse translation behavior through this interface.
Since:
OracleAS TopLink 10g (10.0.3)
  • Method Details

    • getParameters

      List<Object> getParameters()
      The parameters are the values in order of occurance in the SQL statement. This is lazy initialized to conserv space on calls that have no parameters.
    • getParameterTypes

      List<DatasourceCall.ParameterType> getParameterTypes()
      The parameter types determine if the parameter is a modify, translation or litteral type.
    • hasParameters

      boolean hasParameters()
      The parameters are the values in order of occurance in call. This is lazy initialized to conserv space on calls that have no parameters.
    • prepare

      void prepare(AbstractSession session)
      Allow pre-printing of the query/SQL string for fully bound calls, to save from reprinting. This should call translateCustomQuery() in the call implementation.
    • translate

      void translate(AbstractRecord translationRow, AbstractRecord modifyRow, AbstractSession session)
      Allow the call to translate from the translation for predefined calls. This should call translateQueryString() in the call implementation.
    • getQueryString

      String getQueryString()
      Return the query string of the call. This must be overwritten by subclasses that support query language translation (SQLCall, XQueryCall).
    • setQueryString

      void setQueryString(String queryString)
      Set the query string of the call. This must be overwritten by subclasses that support query language translation (SQLCall, XQueryCall).
    • translateCustomQuery

      void translateCustomQuery()
      Parse the query string for # markers for custom query based on a query language. This is used by SQLCall and XQuery call, but can be reused by other query languages.
    • appendLiteral

      void appendLiteral(Writer writer, Object literal)
      All values are printed as ? to allow for parameter binding or translation during the execute of the call.
    • appendTranslation

      void appendTranslation(Writer writer, DatabaseField modifyField)
      All values are printed as ? to allow for parameter binding or translation during the execute of the call.
    • appendModify

      void appendModify(Writer writer, DatabaseField modifyField)
      All values are printed as ? to allow for parameter binding or translation during the execute of the call.
    • appendParameter

      void appendParameter(Writer writer, Object parameter, boolean shouldBind, AbstractSession session)
      Add the parameter. If using binding bind the parameter otherwise let the platform print it. The platform may also decide to bind the value.
    • translateQueryString

      void translateQueryString(AbstractRecord translationRow, AbstractRecord modifyRow, AbstractSession session)
      Allow the call to translate from the translation for predefined calls.
    • isQueryStringCall

      boolean isQueryStringCall()
      Should return true.