Class XQueryBaseComponent

java.lang.Object
org.pentaho.platform.engine.core.system.PentahoBase
org.pentaho.platform.engine.services.PentahoMessenger
org.pentaho.platform.engine.services.solution.ComponentBase
org.pentaho.platform.plugin.action.xml.xquery.XQueryBaseComponent
All Implemented Interfaces:
Serializable, org.pentaho.commons.connection.IDisposable, org.pentaho.platform.api.data.IPreparedComponent, org.pentaho.platform.api.engine.IAuditable, org.pentaho.platform.api.engine.IComponent, org.pentaho.platform.api.engine.ILogger, org.pentaho.platform.api.engine.IParameterResolver
Direct Known Subclasses:
XQueryLookupRule

public abstract class XQueryBaseComponent extends org.pentaho.platform.engine.services.solution.ComponentBase implements org.pentaho.platform.api.data.IPreparedComponent
XQueryBaseComponent provides a mechanism to run xqueries within the Pentaho BI Platform.

TODO: In regards to IPreparedComponent, implement a method for choosing the datasource on the fly

See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected org.pentaho.commons.connection.IPentahoConnection
    reference to connection object
    protected boolean
    keeps track of ownership of connection

    Fields inherited from class org.pentaho.platform.engine.services.solution.ComponentBase

    COMPONENT_EXECUTE_FAIL, debug, MISSING_SESSION, UNKNOWN_COMPONENT_ID

    Fields inherited from class org.pentaho.platform.engine.core.system.PentahoBase

    EMPTYLOGID, loggingLevel, LOGID_MASK1, LOGID_MASK2, LOGID_SEPARATOR

    Fields inherited from interface org.pentaho.platform.api.engine.ILogger

    ACTIVITY_LOG, DEBUG, ERROR, FATAL, INFO, INSTANCE_LOG, SESSION_LOG, SOLUTION_LOG, TRACE, UNKNOWN, WARN

    Fields inherited from interface org.pentaho.platform.api.data.IPreparedComponent

    PREPARE_LATER_INTER_PREFIX, PREPARE_LATER_PLACEHOLDER, PREPARE_LATER_PREFIX, PREPARED_COMPONENT_NAME, PREPARED_OUTPUT_TYPE
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected String
     
    void
    disposes of the connection this is called by the runtime context if the object is used as an iprepared component
    void
     
    protected boolean
     
    org.pentaho.commons.connection.IPentahoResultSet
    executePrepared(Map preparedParams)
    implements the IPreparedComponent executePrepared, which allows other components to execute the prepared statement.
    protected org.pentaho.commons.connection.IPentahoConnection
     
    abstract org.apache.commons.logging.Log
     
    int
     
    org.pentaho.commons.connection.IPentahoResultSet
     
    boolean
     
    protected boolean
    prepareFinalQuery(String rawQuery, String[] columnTypes)
     
    protected boolean
    Determines if the action should attempt to retrieve the columns types
    protected boolean
    runFinalQuery(org.pentaho.commons.connection.IPentahoConnection localConnection, String rawQuery, String[] columnTypes)
     
    protected boolean
    runQuery(org.pentaho.commons.connection.IPentahoConnection localConnection, String rawQuery)
     
    void
    setMaxRows(int value)
     
    org.pentaho.commons.connection.IPentahoConnection
    implements IPreparedComponents shareConnection, allowing other xquery components to access the connection
    protected boolean
     
    abstract boolean
     

    Methods inherited from class org.pentaho.platform.engine.services.solution.ComponentBase

    addTempParameter, addTempParameterObject, applyInputsToFormat, audit, createFeedbackParameter, createFeedbackParameter, createFeedbackParameter, createFeedbackParameter, createFeedbackParameter, createFeedbackParameter, createFeedbackParameter, createNewInstance, execute, feedbackAllowed, getActionDefinition, getActionName, getActionTitle, getComponentDefinition, getComponentDefinition, getContentOutputItem, getDefaultOutputStream, getFeedbackOutputStream, getId, getInitFailMessage, getInitOk, getInputBooleanValue, getInputLongValue, getInputNames, getInputParameter, getInputStream, getInputStringValue, getInputStringValue, getInputValue, getInstanceId, getLogId, getObjectName, getOutputContentItem, getOutputContentItem, getOutputItem, getOutputItem, getOutputNames, getOutputPreference, getProcessId, getResource, getResourceAsString, getResourceDataSource, getResourceInputStream, getResourceNames, getRuntimeContext, getSession, getSetting, getSolutionName, getSolutionPath, getStringSetting, inputMissingError, isDefinedInput, isDefinedOutput, isDefinedResource, isPromptPending, outputMissingError, promptNeeded, promptNow, resolveParameter, resourceComponentSettingError, resourceMissingError, saveSetting, setActionDefinition, setActionName, setComponentDefinition, setComponentDefinitionMap, setFeedbackMimeType, setInstanceId, setOutputMimeType, setOutputMimeType, setOutputValue, setProcessId, setRuntimeContext, setSession, validate

    Methods inherited from class org.pentaho.platform.engine.services.PentahoMessenger

    debug, debug, error, error, error, fatal, fatal, getMessages, getUserString, info, info, setMessages, trace, trace, warn, warn

    Methods inherited from class org.pentaho.platform.engine.core.system.PentahoBase

    genLogIdFromInfo, genLogIdFromInfo, genLogIdFromSession, getLoggingLevel, setLoggingLevel, setLogId

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.pentaho.platform.api.engine.IAuditable

    getId, getObjectName

    Methods inherited from interface org.pentaho.platform.api.engine.IComponent

    execute, getActionDefinition, getActionName, getComponentDefinition, getInstanceId, getMessages, getProcessId, getRuntimeContext, getSession, setActionDefinition, setActionName, setComponentDefinition, setComponentDefinitionMap, setInstanceId, setMessages, setProcessId, setRuntimeContext, setSession, validate

    Methods inherited from interface org.pentaho.platform.api.engine.ILogger

    debug, debug, error, error, fatal, fatal, getLoggingLevel, info, info, setLoggingLevel, trace, trace, warn, warn
  • Field Details

    • connection

      protected org.pentaho.commons.connection.IPentahoConnection connection
      reference to connection object
    • connectionOwner

      protected boolean connectionOwner
      keeps track of ownership of connection
  • Constructor Details

    • XQueryBaseComponent

      public XQueryBaseComponent()
  • Method Details

    • validateSystemSettings

      public abstract boolean validateSystemSettings()
      Specified by:
      validateSystemSettings in class org.pentaho.platform.engine.services.solution.ComponentBase
    • getLogger

      public abstract org.apache.commons.logging.Log getLogger()
      Specified by:
      getLogger in class org.pentaho.platform.engine.core.system.PentahoBase
    • getResultSet

      public org.pentaho.commons.connection.IPentahoResultSet getResultSet()
    • validateAction

      protected boolean validateAction()
      Specified by:
      validateAction in class org.pentaho.platform.engine.services.solution.ComponentBase
    • done

      public void done()
      Specified by:
      done in interface org.pentaho.platform.api.engine.IComponent
      Specified by:
      done in class org.pentaho.platform.engine.services.solution.ComponentBase
    • executeAction

      protected boolean executeAction()
      Specified by:
      executeAction in class org.pentaho.platform.engine.services.solution.ComponentBase
    • runQuery

      protected boolean runQuery(org.pentaho.commons.connection.IPentahoConnection localConnection, String rawQuery)
    • prepareFinalQuery

      protected boolean prepareFinalQuery(String rawQuery, String[] columnTypes)
    • runFinalQuery

      protected boolean runFinalQuery(org.pentaho.commons.connection.IPentahoConnection localConnection, String rawQuery, String[] columnTypes)
    • createTempXMLFile

      protected String createTempXMLFile(String xmlString)
    • getConnection

      protected org.pentaho.commons.connection.IPentahoConnection getConnection()
    • init

      public boolean init()
      Specified by:
      init in interface org.pentaho.platform.api.engine.IComponent
      Specified by:
      init in class org.pentaho.platform.engine.services.solution.ComponentBase
    • shareConnection

      public org.pentaho.commons.connection.IPentahoConnection shareConnection()
      implements IPreparedComponents shareConnection, allowing other xquery components to access the connection
      Specified by:
      shareConnection in interface org.pentaho.platform.api.data.IPreparedComponent
      Returns:
      shared connection
    • executePrepared

      public org.pentaho.commons.connection.IPentahoResultSet executePrepared(Map preparedParams)
      implements the IPreparedComponent executePrepared, which allows other components to execute the prepared statement.
      Specified by:
      executePrepared in interface org.pentaho.platform.api.data.IPreparedComponent
      Parameters:
      preparedParams - lookup for prepared parameters
      Returns:
      pentaho result set
    • retrieveColumnTypes

      protected boolean retrieveColumnTypes()
      Determines if the action should attempt to retrieve the columns types
    • getMaxRows

      public int getMaxRows()
    • setMaxRows

      public void setMaxRows(int value)
    • dispose

      public void dispose()
      disposes of the connection this is called by the runtime context if the object is used as an iprepared component
      Specified by:
      dispose in interface org.pentaho.commons.connection.IDisposable
      Specified by:
      dispose in interface org.pentaho.platform.api.data.IPreparedComponent