Class 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:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected org.pentaho.commons.connection.IPentahoConnection connection
      reference to connection object
      protected boolean connectionOwner
      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
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected String createTempXMLFile​(String xmlString)  
      void dispose()
      disposes of the connection this is called by the runtime context if the object is used as an iprepared component
      void done()  
      protected boolean executeAction()  
      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 getConnection()  
      abstract org.apache.commons.logging.Log getLogger()  
      int getMaxRows()  
      org.pentaho.commons.connection.IPentahoResultSet getResultSet()  
      boolean init()  
      protected boolean prepareFinalQuery​(String rawQuery, String[] columnTypes)  
      protected boolean retrieveColumnTypes()
      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 shareConnection()
      implements IPreparedComponents shareConnection, allowing other xquery components to access the connection
      protected boolean validateAction()  
      abstract boolean validateSystemSettings()  
      • 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 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 Detail

      • connection

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

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

      • XQueryBaseComponent

        public XQueryBaseComponent()
    • Method Detail

      • 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