Package org.apache.felix.utils.resource
Class SimpleFilter
- java.lang.Object
-
- org.apache.felix.utils.resource.SimpleFilter
-
public class SimpleFilter extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description static intANDstatic intAPPROXprivate static java.util.concurrent.ConcurrentHashMap<java.lang.String,java.lang.String>COMMON_STRINGSStrings which are commonly found in filter specification.static intEQstatic intGTEstatic intLTEstatic intMATCH_ALLstatic SimpleFilterMATCH_ALL_FILTERprivate java.lang.Stringnamestatic intNOTprivate intopstatic intORstatic intPRESENTstatic intSUBSTRINGprivate java.lang.Objectvalue
-
Constructor Summary
Constructors Constructor Description SimpleFilter(java.lang.String name, java.lang.Object value, int op)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static booleancompareSubstring(java.util.List<java.lang.String> pieces, java.lang.String s)static SimpleFilterconvert(java.util.Map<java.lang.String,java.lang.Object> attrs)Converts a attribute map to a filter.java.lang.StringgetName()intgetOperation()java.lang.ObjectgetValue()static SimpleFilterparse(java.lang.String filter)static java.util.List<java.lang.String>parseSubstring(java.lang.String value)private static java.lang.StringreuseCommonString(java.lang.String str)private static intskipWhitespace(java.lang.String s, int startIdx)private static SimpleFiltersubfilter(java.lang.String filter, int startIdx, int endIdx)private static java.lang.StringtoDecodedString(java.lang.String s, int startIdx, int endIdx)private static voidtoEncodedString(java.lang.StringBuilder sb, java.lang.Object o)java.lang.StringtoString()private voidtoString(java.lang.StringBuilder sb)private static voidtoString(java.lang.StringBuilder sb, java.util.List<?> list)static voidunparseSubstring(java.lang.StringBuilder sb, java.util.List<?> pieces)
-
-
-
Field Detail
-
MATCH_ALL
public static final int MATCH_ALL
- See Also:
- Constant Field Values
-
AND
public static final int AND
- See Also:
- Constant Field Values
-
OR
public static final int OR
- See Also:
- Constant Field Values
-
NOT
public static final int NOT
- See Also:
- Constant Field Values
-
EQ
public static final int EQ
- See Also:
- Constant Field Values
-
LTE
public static final int LTE
- See Also:
- Constant Field Values
-
GTE
public static final int GTE
- See Also:
- Constant Field Values
-
SUBSTRING
public static final int SUBSTRING
- See Also:
- Constant Field Values
-
PRESENT
public static final int PRESENT
- See Also:
- Constant Field Values
-
APPROX
public static final int APPROX
- See Also:
- Constant Field Values
-
COMMON_STRINGS
private static final java.util.concurrent.ConcurrentHashMap<java.lang.String,java.lang.String> COMMON_STRINGS
Strings which are commonly found in filter specification. We use this map as an interner.
-
MATCH_ALL_FILTER
public static final SimpleFilter MATCH_ALL_FILTER
-
name
private final java.lang.String name
-
value
private final java.lang.Object value
-
op
private final int op
-
-
Method Detail
-
getName
public java.lang.String getName()
-
getValue
public java.lang.Object getValue()
-
getOperation
public int getOperation()
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
toString
private void toString(java.lang.StringBuilder sb)
-
reuseCommonString
private static java.lang.String reuseCommonString(java.lang.String str)
-
toString
private static void toString(java.lang.StringBuilder sb, java.util.List<?> list)
-
toDecodedString
private static java.lang.String toDecodedString(java.lang.String s, int startIdx, int endIdx)
-
toEncodedString
private static void toEncodedString(java.lang.StringBuilder sb, java.lang.Object o)
-
parse
public static SimpleFilter parse(java.lang.String filter)
-
subfilter
private static SimpleFilter subfilter(java.lang.String filter, int startIdx, int endIdx)
-
parseSubstring
public static java.util.List<java.lang.String> parseSubstring(java.lang.String value)
-
unparseSubstring
public static void unparseSubstring(java.lang.StringBuilder sb, java.util.List<?> pieces)
-
compareSubstring
public static boolean compareSubstring(java.util.List<java.lang.String> pieces, java.lang.String s)
-
skipWhitespace
private static int skipWhitespace(java.lang.String s, int startIdx)
-
convert
public static SimpleFilter convert(java.util.Map<java.lang.String,java.lang.Object> attrs)
Converts a attribute map to a filter. The filter is created by iterating over the map's entry set. If ordering of attributes is important (e.g., for hitting attribute indices), then the map's entry set should iterate in the desired order. Equality testing is assumed for all attribute types other than version ranges, which are handled appropriated. If the attribute map is empty, then a filter that matches anything is returned.- Parameters:
attrs- Map of attributes to convert to a filter.- Returns:
- A filter corresponding to the attributes.
-
-