Oracle® Fusion Middleware C++ API Reference for Oracle Coherence
12c (12.2.1.2.0)

E77779-01

LikeFilter Class Reference

#include <coherence/util/filter/LikeFilter.hpp>

Inherits ComparisonFilter.

List of all members.


Detailed Description

Filter which compares the result of a method invocation with a value for pattern match.

A pattern can include regular characters and wildcard characters '_' and ''.

During pattern matching, regular characters must exactly match the characters in an evaluated string. Wildcard character '_' (underscore) can be matched with any single character, and wildcard character '' can be matched with any string fragment of zero or more characters.

Author:
djl 2008.07.24

Public Types

typedef spec::Handle Handle
 LikeFilter Handle definition.
typedef spec::View View
 LikeFilter View definition.
typedef spec::Holder Holder
 LikeFilter Holder definition.

Public Member Functions

virtual size32_t calculateEffectiveness (Map::View vMapIndexes, Set::View vSetKeys) const
 
virtual Filter::View applyIndex (Map::View vMapIndexes, Set::Handle hSetKeys) const
 
virtual void readExternal (PofReader::Handle hIn)
 
virtual void writeExternal (PofWriter::Handle hOut) const
 
virtual String::View getPattern () const
 Obtain the filter's pattern string.
virtual bool isIgnoreCase () const
 Check whether or not the filter is case incensitive.
virtual wchar16_t getEscapeChar () const
 Obtain the escape character that is used for escaping '' and '_' in the pattern or zero if there is no escape.
COH_INLINE void showPlan (std::ostream &out) const
 Display the execution plan that the LikeFilter has selected.
virtual String::View formatPlan () const
 Return the execution plan that the LikeFilter has selected.

Protected Member Functions

 LikeFilter ()
 Default constructor (necessary for the PortableObject interface).
 LikeFilter (ValueExtractor::View vExtractor, String::View vsPattern, wchar16_t chEscape=(wchar16_t) 0, bool fIgnoreCase=false)
 Construct a LikeFilter for pattern match.
virtual bool evaluateExtracted (Object::View vExtracted) const
 Evaluate the specified extracted value.

Parameters:
vExtracted an extracted value to evaluate

virtual void buildPlan ()
 Build a plan for processing the LIKE functionality.
virtual bool isMatch (String::View vsValue) const
 Check the passed String value to see if it matches the pattern that this filter was constructed with.

Constructor & Destructor Documentation

LikeFilter ( ValueExtractor::View  vExtractor,
String::View  vsPattern,
wchar16_t  chEscape = (wchar16_t) 0,
bool  fIgnoreCase = false 
) [protected]

Construct a LikeFilter for pattern match.

Parameters:
vExtractor the ValueExtractor to use by this filter
vsPattern the string pattern to compare the result with
chEscape the escape character for escaping '' and '_'
fIgnoreCase true to be case-insensitive


Member Function Documentation

virtual String::View getPattern (  )  const [virtual]

Obtain the filter's pattern string.

Returns:
the pattern string

virtual bool isIgnoreCase (  )  const [virtual]

Check whether or not the filter is case incensitive.

Returns:
true iff case insensitivity is specifically enabled

virtual wchar16_t getEscapeChar (  )  const [virtual]

Obtain the escape character that is used for escaping '' and '_' in the pattern or zero if there is no escape.

Returns:
the escape character

COH_INLINE void showPlan ( std::ostream &  out  )  const [inline]

Display the execution plan that the LikeFilter has selected.

Parameters:
out the ostream to display the plan on

virtual String::View formatPlan (  )  const [virtual]

Return the execution plan that the LikeFilter has selected.

Returns:
the plan

virtual bool isMatch ( String::View  vsValue  )  const [protected, virtual]

Check the passed String value to see if it matches the pattern that this filter was constructed with.

Parameters:
vsValue the String value to match against this filter's pattern
Returns:
true iff the passed String value is LIKE this filter's pattern


The documentation for this class was generated from the following file:
Copyright © 2000, 2016, Oracle and/or its affiliates. All rights reserved.