org.apache.directory.shared.ldap.codec.search
Class ConnectorFilter

java.lang.Object
  extended by org.apache.directory.shared.ldap.codec.search.Filter
      extended by org.apache.directory.shared.ldap.codec.search.ConnectorFilter
Direct Known Subclasses:
AndFilter, NotFilter, OrFilter

public abstract class ConnectorFilter
extends Filter

This Filter abstract class is used to store a set of filters used by OR/AND/NOT filters.

Author:
Apache Directory Project

Field Summary
protected  List<Filter> filterSet
          The set of filters used by And/Or filters
protected  int filtersLength
          The filters length
 
Fields inherited from class org.apache.directory.shared.ldap.codec.search.Filter
parent, parentTlvId
 
Constructor Summary
ConnectorFilter()
          The constructor.
ConnectorFilter(int tlvId)
          The constructor.
 
Method Summary
 void addFilter(Filter filter)
          Add a new Filter to the list.
 int computeLength()
          Compute the ConnectorFilter length Length(ConnectorFilter) = sum(filterSet.computeLength())
 ByteBuffer encode(ByteBuffer buffer)
          Encode the ConnectorFilter message to a PDU.
 List<Filter> getFilterSet()
          Get the list of filters stored in the composite filter
 String toString()
          Return a string compliant with RFC 2254 representing a composite filter, one of AND, OR and NOT
 
Methods inherited from class org.apache.directory.shared.ldap.codec.search.Filter
getParent, getParentTlvId, getTlvId, setParent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

filterSet

protected List<Filter> filterSet
The set of filters used by And/Or filters


filtersLength

protected int filtersLength
The filters length

Constructor Detail

ConnectorFilter

public ConnectorFilter(int tlvId)
The constructor. We wont initialize the ArrayList as it may not be used.


ConnectorFilter

public ConnectorFilter()
The constructor. We wont initialize the ArrayList as it may not be used.

Method Detail

addFilter

public void addFilter(Filter filter)
               throws DecoderException
Add a new Filter to the list.

Parameters:
filter - The filter to add
Throws:
DecoderException

getFilterSet

public List<Filter> getFilterSet()
Get the list of filters stored in the composite filter

Returns:
And array of filters

computeLength

public int computeLength()
Compute the ConnectorFilter length Length(ConnectorFilter) = sum(filterSet.computeLength())

Specified by:
computeLength in class Filter

encode

public ByteBuffer encode(ByteBuffer buffer)
                  throws EncoderException
Encode the ConnectorFilter message to a PDU. ConnectorFilter : filter.encode() ... filter.encode()

Specified by:
encode in class Filter
Parameters:
buffer - The buffer where to put the PDU
Returns:
The PDU.
Throws:
EncoderException

toString

public String toString()
Return a string compliant with RFC 2254 representing a composite filter, one of AND, OR and NOT

Overrides:
toString in class Object
Returns:
The composite filter string


Copyright © 2003-2011 The Apache Software Foundation. All Rights Reserved.