Interface QueryStringCall

  • 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)
    Author:
    James Sutherland
    • Method Detail

      • getParameters

        List 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 literal type.
      • getParameterBindings

        List<Boolean> getParameterBindings()
        The parameter binding behavior
      • 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.
      • isQueryStringCall

        boolean isQueryStringCall()
        Should return true.