Package com.tibco.patterns.qbp

## Class RlinkCompoundQueryBuilder

- java.lang.Object
- - com.netrics.likeit.ANetricsCompoundQueryBuilder
  - - com.tibco.patterns.qbp.AQBPCompoundQueryBuilder
    - - com.tibco.patterns.qbp.RlinkCompoundQueryBuilder

-     public class RlinkCompoundQueryBuilder
      extends AQBPCompoundQueryBuilder

  This class implements a compound query builder based on an Rlink query. This uses an RlinkBuilderConfig configuration object to implement a compound record matching query that uses a Learn model to score the set of features. Each feature corresponds to a query against fields from a single table of the compound record.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.netrics.likeit.ANetricsCompoundQueryBuilder

      `com.netrics.likeit.ANetricsCompoundQueryBuilder.FeatureDef`

  - ### Field Summary

    - ### Fields inherited from class com.tibco.patterns.qbp.AQBPCompoundQueryBuilder

      `file_mgr`

    - ### Fields inherited from class com.netrics.likeit.ANetricsCompoundQueryBuilder

      `features`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `RlinkCompoundQueryBuilder()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `com.netrics.likeit.NetricsQuery` | `getQuery()` | Generate the Rlink compound matching query.
    `com.netrics.likeit.NetricsQuery` | `getQuery​(com.netrics.likeit.NetricsQuery[] features_real)` | Generate the Rlink compound matching query for a given set of features.
    `java.lang.Object` | `setConfiguration​(java.io.File config_file)` | Configure this object from a configuration file.
    `java.lang.Object` | `setConfiguration​(java.io.InputStream config_stream)` | Configure this object from an input stream.
    `void` | `setConfiguration​(java.lang.Object config_object)` | Configure this RLink query generator from an RlinkBuilderConfig object.
    `protected void` | `setConfiguration​(java.lang.Object config_object, java.util.List<com.netrics.likeit.ANetricsCompoundQueryBuilder.FeatureDef> ext_features, AQBPLogger logger)` | Configure this RLink query generator from an RlinkBuilderConfig object and a set of features.
    `java.lang.Object` | `setConfiguration​(java.lang.String config_src)` | Configure this object from a configuration source.

    - ### Methods inherited from class com.tibco.patterns.qbp.AQBPCompoundQueryBuilder

      `getBuilderClassObject, setBuilderConfig, setFileMgr`

    - ### Methods inherited from class com.netrics.likeit.ANetricsCompoundQueryBuilder

      `addDefaultItem, changeItemName, getCurInputFieldNames, getCurItemName, getCurJoinedFieldNames, getCurJoinedFieldNames, getCurOutputFieldNames, getCurrentInputTableNames, getCurrentOutputTableNames, getDefaultItemNames, getDefaultTableNames, getDfltInputNames, getDfltOutputNames, getFeatureQueryletLists, getFeatureQuerylets, getJoinConfig, getUsedItemTypes, setDefaultValue, setFeatures, setFieldValuesFromList, setFieldValuesFromMap, setFieldValuesFromRecord, setInputFieldName, setInputFieldNames, setInputFieldOrdering, setInputTableName, setInputTableNames, setOutputFieldName, setOutputFieldNames, setOutputTableName, setQueryConfiguration, setSearchOpts, setTables`

    - ### Methods inherited from class java.lang.Object

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

- - ### Constructor Detail

    - #### RlinkCompoundQueryBuilder

          public RlinkCompoundQueryBuilder()

  - ### Method Detail

    - #### setConfiguration

          public java.lang.Object setConfiguration​(java.io.InputStream config_stream)
                                            throws java.lang.IllegalArgumentException,
                                                   java.lang.UnsupportedOperationException,
                                                   java.lang.IllegalStateException

      Configure this object from an input stream. This expects to read from the input stream a valid RlinkBuilderConfig item. The RlinkBuilderConfig defines the compound record matching query to be generated.
      Overrides:
        `setConfiguration` in class `com.netrics.likeit.ANetricsCompoundQueryBuilder`
      Parameters:
        `config_stream` - this must be an open stream containing a valid XML RlinkBuilderConfig item.
      Throws:
        `java.lang.IllegalArgumentException` - if config_stream is null, or does not contain a valid RlinkBuilderConfig element as the top level item.
        `java.lang.IllegalStateException` - if this object is already initialized.
        `java.lang.UnsupportedOperationException`

    - #### setConfiguration

          public java.lang.Object setConfiguration​(java.lang.String config_src)
                                            throws java.lang.IllegalArgumentException,
                                                   java.lang.UnsupportedOperationException,
                                                   java.lang.IllegalStateException

      Configure this object from a configuration source. This reads configuration data from a data source. The source is opened with the current file manager. The default manager expects a source to be a standard file name or path. The data source is expected to contain a valid RlinkBuilderConfig item. The RlinkBuilderConfig defines the compound record matching query to be generated.
      Overrides:
        `setConfiguration` in class `com.netrics.likeit.ANetricsCompoundQueryBuilder`
      Parameters:
        `config_src` - this must be source containing a valid RlinkBuilderConfig XML element.
      Throws:
        `java.lang.IllegalArgumentException` - if config_src is null, is not an existing, readable source, or does not contain an RlinkBuilderConfig XML element as the top level item.
        `java.lang.IllegalStateException` - if this object is already initialized.
        `java.lang.UnsupportedOperationException`

    - #### setConfiguration

          protected void setConfiguration​(java.lang.Object config_object,
                                          java.util.List<com.netrics.likeit.ANetricsCompoundQueryBuilder.FeatureDef> ext_features,
                                          AQBPLogger logger)
                                   throws AQBPLogger.QBPConfigException,
                                          java.lang.IllegalStateException

      Configure this RLink query generator from an RlinkBuilderConfig object and a set of features. This method is used by the GeneralCompoundQueryBuilder class to link this builder to its own set of features. This call does not attempt to instantiate the actual feature classes defined in the configuration. Instead it uses the features from the given list.
      Specified by:
        `setConfiguration` in class `AQBPCompoundQueryBuilder`
      Parameters:
        `config_object` - this must be a valid RlinkBuilderConfig object.
        `ext_features` - the features for this object. The list must match the length of the features defined in the config_object.
        `logger` - error are reported through this logger. If logger is null an AQBPLogger.QBPConfigException is thrown on the first configuration error.
      Throws:
        `java.lang.IllegalStateException` - if this object is already initialized.
        `AQBPLogger.QBPConfigException` - if config_object is null, not a RlinkBuilderConfig object, or is not a valid configuration.

    - #### setConfiguration

          public void setConfiguration​(java.lang.Object config_object)
                                throws java.lang.UnsupportedOperationException,
                                       java.lang.IllegalArgumentException,
                                       java.lang.IllegalStateException

      Configure this RLink query generator from an RlinkBuilderConfig object. The RlinkBuilderConfig object defines the compound record matching query to be generated.
      Overrides:
        `setConfiguration` in class `com.netrics.likeit.ANetricsCompoundQueryBuilder`
      Parameters:
        `config_object` - this must be a valid RlinkBuilderConfig object.
      Throws:
        `java.lang.IllegalStateException` - if this object is already initialized.
        `java.lang.IllegalArgumentException` - if config_object is null, not a RlinkBuilderConfig object, or is not a valid configuration.
        `java.lang.UnsupportedOperationException`

    - #### setConfiguration

          public java.lang.Object setConfiguration​(java.io.File config_file)
                                            throws java.lang.IllegalArgumentException,
                                                   java.lang.UnsupportedOperationException,
                                                   java.lang.IllegalStateException

      Configure this object from a configuration file. This expects to read from the given file a valid RlinkBuilderConfig item. The RlinkBuilderConfig defines the compound record matching query to be generated.
      Overrides:
        `setConfiguration` in class `com.netrics.likeit.ANetricsCompoundQueryBuilder`
      Parameters:
        `config_file` - this must be an XML file containing a valid RlinkBuilderConfig description.
      Throws:
        `java.lang.IllegalArgumentException` - if config_file is null, is not an existing, readable file, or does not contain a valid RlinkBuilderConfig XML element as the top level item.
        `java.lang.IllegalStateException` - if this object is already initialized.
        `java.lang.UnsupportedOperationException`

    - #### getQuery

          public com.netrics.likeit.NetricsQuery getQuery​(com.netrics.likeit.NetricsQuery[] features_real)
                                                   throws java.lang.IllegalStateException,
                                                          java.lang.Exception

      Generate the Rlink compound matching query for a given set of features. This method is used by GeneralCompoundQueryBuilder to generate an RLink compound query from the GeneralCompoundQueryBuilder's set of features. This RlinkCompoundQueryBuilder uses the given features, instead of its own, to build a compound query using the RLink operator.
      Specified by:
        `getQuery` in class `AQBPCompoundQueryBuilder`
      Parameters:
        `features_real` - array of query objects for features. This must match the feature list for this builder.
      Returns:
        the complete compound query.
      Throws:
        `java.lang.IllegalArgumentException` - if features_real is null or the incorrect length.
        `java.lang.IllegalStateException` - if this object is not initialized, or the field data is not set.
        `java.lang.Exception` - if this object is corrupted.

    - #### getQuery

          public com.netrics.likeit.NetricsQuery getQuery()
                                                   throws java.lang.IllegalStateException,
                                                          java.lang.Exception

      Generate the Rlink compound matching query. This creates the compound matching query. The top level is an Rlink of the feature queries.
      Specified by:
        `getQuery` in class `com.netrics.likeit.ANetricsCompoundQueryBuilder`
      Throws:
        `java.lang.IllegalStateException` - if this object is not initialized, or the field data is not set.
        `java.lang.Exception` - if this object is corrupted.