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 int
AND
static int
APPROX
private static java.util.concurrent.ConcurrentHashMap<java.lang.String,java.lang.String>
COMMON_STRINGS
Strings which are commonly found in filter specification.static int
EQ
static int
GTE
static int
LTE
static int
MATCH_ALL
static SimpleFilter
MATCH_ALL_FILTER
private java.lang.String
name
static int
NOT
private int
op
static int
OR
static int
PRESENT
static int
SUBSTRING
private java.lang.Object
value
-
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 boolean
compareSubstring(java.util.List<java.lang.String> pieces, java.lang.String s)
static SimpleFilter
convert(java.util.Map<java.lang.String,java.lang.Object> attrs)
Converts a attribute map to a filter.java.lang.String
getName()
int
getOperation()
java.lang.Object
getValue()
static SimpleFilter
parse(java.lang.String filter)
static java.util.List<java.lang.String>
parseSubstring(java.lang.String value)
private static java.lang.String
reuseCommonString(java.lang.String str)
private static int
skipWhitespace(java.lang.String s, int startIdx)
private static SimpleFilter
subfilter(java.lang.String filter, int startIdx, int endIdx)
private static java.lang.String
toDecodedString(java.lang.String s, int startIdx, int endIdx)
private static void
toEncodedString(java.lang.StringBuilder sb, java.lang.Object o)
java.lang.String
toString()
private void
toString(java.lang.StringBuilder sb)
private static void
toString(java.lang.StringBuilder sb, java.util.List<?> list)
static void
unparseSubstring(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:
toString
in 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.
-
-