Package com.sas.services.information.metadata

# Class KeywordFilter

java.lang.Object
com.sas.services.information.Filter
com.sas.services.information.metadata.KeywordFilter

All Implemented Interfaces:
  `FilterInterface`, `Serializable`

Direct Known Subclasses:
  `ApplicationFilter`, `ChannelFilter`, `ContentFilter`, `PackageFilter`, `RemarksFilter`, `StoredProcessFilter`, `StoredProcessReportFilter`

public class KeywordFilter extends Filter
This class extends the Filter class by adding the ability to search by keyword.

Since:
  1.0
See Also:
  - Serialized Form

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected ArrayList<String>`
  `_keywords`
  The list of keywords to search for.

  ### Fields inherited from class com.sas.services.information.Filter

  `_component`

  ### Fields inherited from interface com.sas.services.information.FilterInterface

  `BASE_SCOPE, FILTERCOMPONENT_UNSUPPORTED, FLAG_OVERRIDE, ONELEVEL_SCOPE, PROTOCOL_DAV, PROTOCOL_HIBERNATE, PROTOCOL_IPOD, PROTOCOL_LDAP, PROTOCOL_OMI, SUBTREE_SCOPE`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `KeywordFilter()`
  Default constructor
  `KeywordFilter(String key, int relation, String value)`
  Construct a new filter with a provided condition.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addKeyword(String keyword)`
  Add a keyword to the list to look for.
  `protected String`
  `getKeywordSelectString()`
  Get the XMLSelect string with just the keywords part.
  `String`
  `getXMLSelectString()`
  Get the whole XMLSelect string for this filter.
  `void`
  `removeKeyword(String keyword)`
  Remove a keyword from the list to look for.

  ### Methods inherited from class com.sas.services.information.Filter

  `addProtocol, addSearchOption, component2JCRXPath, component2Select, getDAVBase, getDAVBasicSearchString, getDAVScope, getDAVSQLString, getDAVType, getExplicitSearchString, getFilterComponent, getFilterString, getJCRType, getJCRXPathString, getName, getOMRFlags, getOMROption, getOMRRepository, getOMRSearchString, getOMRTemplate, getOMRType, getProtocols, getRdbmsTable, getSearchOptions, getType, getXPathString, removeProtocol, removeSearchOption, setDAVBase, setDAVScope, setExplicitSearchString, setFilterComponent, setName, setOMRFlags, setOMROption, setOMRRepository, setOMRTemplate, setProtocols, setRdbmsTable, setType, toString`

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

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

- ## Field Details

  - ### _keywords

    protected ArrayList<String> _keywords
    The list of keywords to search for.

- ## Constructor Details

  - ### KeywordFilter

    public KeywordFilter()
    Default constructor

  - ### KeywordFilter

    public KeywordFilter(String key, int relation, String value)
    Construct a new filter with a provided condition.

    Parameters:
      `key` - The key to compare.
      `relation` - The relationship between the key and value (usually `FilterComponent.EQUALS`).
      `value` - The value for comparison.

- ## Method Details

  - ### addKeyword

    public void addKeyword(String keyword)
    Add a keyword to the list to look for.

    Parameters:
      `keyword` - the keyword to add to the list.

  - ### removeKeyword

    public void removeKeyword(String keyword)
    Remove a keyword from the list to look for.

    Parameters:
      `keyword` - The keyword to remove from the list.

  - ### getKeywordSelectString

    protected String getKeywordSelectString()
    Get the XMLSelect string with just the keywords part. This is a convenience for the subclasses that are building more complicated searches.

    Returns:
      The keywords portion of an XMLSelect string.

  - ### getXMLSelectString

    public String getXMLSelectString()
    Get the whole XMLSelect string for this filter.

    Specified by:
      `getXMLSelectString` in interface `FilterInterface`
    Overrides:
      `getXMLSelectString` in class `Filter`
    Returns:
      The XMLSelect string.