Class XQueryInteraction
java.lang.Object
org.eclipse.persistence.internal.databaseaccess.DatasourceCall
org.eclipse.persistence.eis.interactions.EISInteraction
org.eclipse.persistence.eis.interactions.MappedInteraction
org.eclipse.persistence.eis.interactions.XMLInteraction
org.eclipse.persistence.eis.interactions.XQueryInteraction
- All Implemented Interfaces:
Serializable
,Cloneable
,org.eclipse.persistence.internal.databaseaccess.QueryStringCall
,Call
public class XQueryInteraction
extends XMLInteraction
implements org.eclipse.persistence.internal.databaseaccess.QueryStringCall
Defines the specification for a call to a JCA interaction that uses XQuery.
Translates the XQuery from the query arguments.
Builds the input and output XML records.
- See Also:
- Author:
- James
-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.persistence.internal.databaseaccess.DatasourceCall
org.eclipse.persistence.internal.databaseaccess.DatasourceCall.ParameterType
-
Field Summary
Fields inherited from class org.eclipse.persistence.eis.interactions.XMLInteraction
inputRootElementName, outputRootElementName
Fields inherited from class org.eclipse.persistence.eis.interactions.MappedInteraction
argumentNames, inputResultPath
Fields inherited from class org.eclipse.persistence.eis.interactions.EISInteraction
arguments, functionName, inputRecordName, inputRow, interactionSpec, outputArgumentNames, outputArguments, outputResultPath, properties
Fields inherited from class org.eclipse.persistence.internal.databaseaccess.DatasourceCall
EXECUTE_UPDATE, isNativeConnectionRequired, isPrepared, NO_RETURN, outputCursors, parameterBindings, parameters, parameterTypes, query, RETURN_CURSOR, RETURN_MANY_ROWS, RETURN_ONE_ROW, returnType, shouldProcessTokenInQuotes, usesBinding
-
Constructor Summary
ConstructorDescriptionDefault constructor.XQueryInteraction
(String xQueryString) Construct the interaction with the XQuery string. -
Method Summary
Modifier and TypeMethodDescriptionprotected char
INTERNAL: Return the character to use for the argument marker.createInputDOM
(EISAccessor accessor) Create a DOM for this interaction.getLogString
(org.eclipse.persistence.internal.databaseaccess.Accessor accessor) Return the string for logging purposes.INTERNAL: Return the query string.PUBLIC: Return the XQuery string.boolean
Should return true.void
prepare
(org.eclipse.persistence.internal.sessions.AbstractSession session) INTERNAL: Translate the custom query markers.void
setQueryString
(String queryString) INTERNAL: Set the query string.void
setXQueryString
(String xQueryString) PUBLIC: Set the XQuery string.void
translate
(org.eclipse.persistence.internal.sessions.AbstractRecord translationRow, org.eclipse.persistence.internal.sessions.AbstractRecord modifyRow, org.eclipse.persistence.internal.sessions.AbstractSession session) INTERNAL: Allow the call to translate the XQuery arguments.protected String
INTERNAL: Return the characters that represent non-arguments names.Methods inherited from class org.eclipse.persistence.eis.interactions.XMLInteraction
buildRow, buildRows, createField, createInputRecord, createXMLRecord, getInputRootElementName, getOutputRootElementName, setInputRootElementName, setOutputRootElementName
Methods inherited from class org.eclipse.persistence.eis.interactions.MappedInteraction
addArgument, addArgument, addArgumentValue, createTranslationRecord, getArgumentNames, getInputResultPath, setArgumentNames, setInputResultPath
Methods inherited from class org.eclipse.persistence.eis.interactions.EISInteraction
addOutputArgument, addOutputArgument, createRecordElement, getArguments, getFunctionName, getInputRecordName, getInputRow, getInteractionSpec, getOutputArgumentNames, getOutputArguments, getOutputResultPath, getProperties, getProperty, hasArguments, hasOutputArguments, isEISInteraction, setArguments, setFunctionName, setInputRecordName, setInputRow, setInteractionSpec, setOutputArgumentNames, setOutputArguments, setOutputResultPath, setProperties, setProperty, toString
Methods inherited from class org.eclipse.persistence.internal.databaseaccess.DatasourceCall
appendIn, appendIn, appendIn, appendInOut, appendInOut, appendInOut, appendInOut, appendInOut, appendLiteral, appendLiteral, appendLiteral, appendModify, appendModify, appendModify, appendOut, appendOut, appendOut, appendOutCursor, appendOutCursor, appendParameter, appendTranslation, appendTranslation, appendTranslation, areManyRowsReturned, buildNewQueryMechanism, buildQueryMechanism, clone, createInOutParameter, getOutputCursors, getParameterBindings, getParameters, getParameterTypes, getQuery, getReturnType, getValueForInOutParameter, getValueForInParameter, hasOutputCursors, hasParameters, isCursorReturned, isExecuteUpdate, isFinished, isJPQLCall, isNativeConnectionRequired, isNothingReturned, isOneRowReturned, isOutputParameterType, isPrepared, isReturnSet, isSQLCall, isStoredFunctionCall, isStoredPLSQLFunctionCall, isStoredPLSQLProcedureCall, isStoredProcedureCall, isUsesBindingSet, returnCursor, returnManyRows, returnNothing, returnOneRow, setExecuteUpdate, setIsNativeConnectionRequired, setIsPrepared, setParameterBindings, setParameters, setParameterTypes, setQuery, setReturnType, setUsesBinding, translateCustomQuery, translatePureSQLCustomQuery, translateQueryString, translateQueryStringAndBindParameters, translateQueryStringForParameterizedIN, usesBinding, usesBinding, usesBinding
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.eclipse.persistence.queries.Call
buildNewQueryMechanism, buildQueryMechanism, clone, isFinished, isNothingReturned, isOneRowReturned
Methods inherited from interface org.eclipse.persistence.internal.databaseaccess.QueryStringCall
appendLiteral, appendModify, appendParameter, appendTranslation, getParameterBindings, getParameters, getParameterTypes, hasParameters, translateCustomQuery, translateQueryString
-
Field Details
-
xQueryString
-
-
Constructor Details
-
XQueryInteraction
public XQueryInteraction()Default constructor. -
XQueryInteraction
Construct the interaction with the XQuery string.
-
-
Method Details
-
getXQueryString
PUBLIC: Return the XQuery string. -
setXQueryString
PUBLIC: Set the XQuery string. -
getQueryString
INTERNAL: Return the query string.- Specified by:
getQueryString
in interfaceorg.eclipse.persistence.internal.databaseaccess.QueryStringCall
- Overrides:
getQueryString
in classorg.eclipse.persistence.internal.databaseaccess.DatasourceCall
-
setQueryString
INTERNAL: Set the query string.- Specified by:
setQueryString
in interfaceorg.eclipse.persistence.internal.databaseaccess.QueryStringCall
- Overrides:
setQueryString
in classorg.eclipse.persistence.internal.databaseaccess.DatasourceCall
-
translate
public void translate(org.eclipse.persistence.internal.sessions.AbstractRecord translationRow, org.eclipse.persistence.internal.sessions.AbstractRecord modifyRow, org.eclipse.persistence.internal.sessions.AbstractSession session) INTERNAL: Allow the call to translate the XQuery arguments.- Specified by:
translate
in interfaceorg.eclipse.persistence.internal.databaseaccess.QueryStringCall
- Overrides:
translate
in classEISInteraction
-
createInputDOM
Create a DOM for this interaction. Convert the database row or arguments into an XML DOM tree. Handles arguments different as the XQuery and input can both have parameters.- Overrides:
createInputDOM
in classXMLInteraction
-
prepare
public void prepare(org.eclipse.persistence.internal.sessions.AbstractSession session) INTERNAL: Translate the custom query markers.- Specified by:
prepare
in interfaceorg.eclipse.persistence.internal.databaseaccess.QueryStringCall
- Overrides:
prepare
in classXMLInteraction
-
getLogString
Return the string for logging purposes.- Specified by:
getLogString
in interfaceCall
- Overrides:
getLogString
in classXMLInteraction
-
argumentMarker
protected char argumentMarker()INTERNAL: Return the character to use for the argument marker. ? is used in SQL, however other query languages such as XQuery need to use other markers.- Overrides:
argumentMarker
in classorg.eclipse.persistence.internal.databaseaccess.DatasourceCall
-
whitespace
INTERNAL: Return the characters that represent non-arguments names.- Overrides:
whitespace
in classorg.eclipse.persistence.internal.databaseaccess.DatasourceCall
-
isQueryStringCall
public boolean isQueryStringCall()Description copied from interface:org.eclipse.persistence.internal.databaseaccess.QueryStringCall
Should return true.- Specified by:
isQueryStringCall
in interfaceorg.eclipse.persistence.internal.databaseaccess.QueryStringCall
- Overrides:
isQueryStringCall
in classorg.eclipse.persistence.internal.databaseaccess.DatasourceCall
-