An RFC 1960-based Filter. More...

Public Member Functions | |
| LDAPFilter () | |
Creates in invalid LDAPFilter object.  More... | |
| LDAPFilter (const std::string &filter) | |
Creates a LDAPFilter object.  More... | |
| LDAPFilter (const LDAPFilter &other) | |
| ~LDAPFilter () | |
| operator bool_type () const | |
| bool | Match (const ServiceReferenceBase &reference) const | 
| Filter using a service's properties.  More... | |
| bool | Match (const ServiceProperties &dictionary) const | 
Filter using a ServiceProperties object with case insensitive key lookup.  More... | |
| bool | MatchCase (const ServiceProperties &dictionary) const | 
Filter using a ServiceProperties.  More... | |
| std::string | ToString () const | 
Returns this LDAPFilter's filter string.  More... | |
| bool | operator== (const LDAPFilter &other) const | 
Compares this LDAPFilter to another LDAPFilter.  More... | |
| LDAPFilter & | operator= (const LDAPFilter &filter) | 
Protected Attributes | |
| SharedDataPointer< LDAPFilterData > | d | 
An RFC 1960-based Filter.
A LDAPFilter can be used numerous times to determine if the match argument matches the filter string that was used to create the LDAPFilter. 
Some examples of LDAP filters are:
| LDAPFilter::LDAPFilter | ( | ) | 
Creates in invalid LDAPFilter object. 
Test the validity by using the boolean conversion operator.
Calling methods on an invalid LDAPFilter will result in undefined behavior. 
| LDAPFilter::LDAPFilter | ( | const std::string & | filter | ) | 
Creates a LDAPFilter object. 
This LDAPFilter object may be used to match a ServiceReference object or a ServiceProperties object.
If the filter cannot be parsed, an std::invalid_argument will be thrown with a human readable message where the filter became unparsable.
| filter | The filter string. | 
LDAPFilter object encapsulating the filter string. | std::invalid_argument | If filter contains an invalid filter string that cannot be parsed.  | 
| LDAPFilter::LDAPFilter | ( | const LDAPFilter & | other | ) | 
| LDAPFilter::~LDAPFilter | ( | ) | 
| bool LDAPFilter::Match | ( | const ServiceReferenceBase & | reference | ) | const | 
Filter using a service's properties.
This LDAPFilter is executed using the keys and values of the referenced service's properties. The keys are looked up in a case insensitive manner.
| reference | The reference to the service whose properties are used in the match. | 
true if the service's properties match this LDAPFilter false otherwise. | bool LDAPFilter::Match | ( | const ServiceProperties & | dictionary | ) | const | 
Filter using a ServiceProperties object with case insensitive key lookup. 
This LDAPFilter is executed using the specified ServiceProperties's keys and values. The keys are looked up in a case insensitive manner.
| dictionary | The ServiceProperties whose key/value pairs are used in the match.  | 
true if the ServiceProperties's values match this filter; false otherwise. | bool LDAPFilter::MatchCase | ( | const ServiceProperties & | dictionary | ) | const | 
Filter using a ServiceProperties. 
This LDAPFilter is executed using the specified ServiceProperties's keys and values. The keys are looked up in a normal manner respecting case.
| dictionary | The ServiceProperties whose key/value pairs are used in the match.  | 
true if the ServiceProperties's values match this filter; false otherwise. | LDAPFilter::operator bool_type | ( | ) | const | 
| LDAPFilter& LDAPFilter::operator= | ( | const LDAPFilter & | filter | ) | 
| bool LDAPFilter::operator== | ( | const LDAPFilter & | other | ) | const | 
Compares this LDAPFilter to another LDAPFilter. 
This implementation returns the result of calling this->ToString() == other.ToString().
| other | The object to compare against this LDAPFilter.  | 
this->ToString() == other.ToString(). | std::string LDAPFilter::ToString | ( | ) | const | 
Returns this LDAPFilter's filter string. 
The filter string is normalized by removing whitespace which does not affect the meaning of the filter.
LDAPFilter's filter string. 
      
  | 
  protected |