Package org.apache.openjpa.kernel
Class Filters
java.lang.Object
org.apache.openjpa.kernel.Filters
Helper methods for dealing with query filters.
- Author:
- Abe White
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic Object
Add the given values.static List<ClassMetaData>
addAccessPathMetaDatas
(List<ClassMetaData> metas, ClassMetaData[] path) Add the given access path metadatas to the full path list, making sure to maintain only base metadatas in the list.static boolean
canConvert
(Class<?> c1, Class<?> c2, boolean strict) Return whether an instance of the first class can be converted to an instance of the second.static String
Removes the first and last string if they are the terminal sequence in the given string.static Object
static Object
Convert the given value to the given type.static Object
convertToMatchMethodArgument
(Object o, Method method) Convert the given value to match the given (presumably a setter) method argument type.static Object
Divide the given values.static Object
getDefaultForNull
(Class<?> nType) static AggregateListener
hintToAggregateListener
(Object hint, ClassLoader loader) Convert the user-given hint value to an aggregate listener.static AggregateListener[]
hintToAggregateListeners
(Object hint, ClassLoader loader) Convert the user-given hint value to an array of aggregate listeners.static FilterListener
hintToFilterListener
(Object hint, ClassLoader loader) Convert the user-given hint value to a filter listener.static FilterListener[]
hintToFilterListeners
(Object hint, ClassLoader loader) Convert the user-given hint value to an array of filter listeners.static Object
hintToGetter
(Object target, String hintKey) Return the value of the property named by the hint key.static void
hintToSetter
(Object target, String hintKey, Object value) Set the value of the property named by the hint key.static boolean
Affirms if the given String is enclosed in {}.static boolean
isTemporalType
(Class<?> c) Affirms if the given class is Data, Time or Timestamp.static Object
Mod the given values.static Object
Multiply the given values.parseDeclaration
(String dec, char split, String decType) Parses the given declarations into a list of type, name, type, name...static Object
Parses the given string assuming it is a JDBC key expression.static Class<?>
Given two types, return type they should both be converted to before performing any operations between them.splitExpressions
(String str, char split, int expected) Split the given expression list into distinct expressions.static Object
Subtract the given values.static Class<?>
Return the correct primitive type for the given class, if it is a wrapper.static Class<?>
Return the correct wrapper type for the given class.
-
Constructor Details
-
Filters
public Filters()
-
-
Method Details
-
wrap
Return the correct wrapper type for the given class. -
unwrap
Return the correct primitive type for the given class, if it is a wrapper. -
promote
Given two types, return type they should both be converted to before performing any operations between them. -
canConvert
Return whether an instance of the first class can be converted to an instance of the second. -
convertToMatchMethodArgument
Convert the given value to match the given (presumably a setter) method argument type.- Parameters:
o
- given valuemethod
- a presumably setter method- Returns:
- the same value if the method does not have one and only one input argument.
-
convert
-
convert
Convert the given value to the given type.- Parameters:
o
- the given valuetype
- the target type
-
add
Add the given values. -
subtract
Subtract the given values. -
multiply
Multiply the given values. -
divide
Divide the given values. -
mod
Mod the given values. -
parseDeclaration
Parses the given declarations into a list of type, name, type, name... Returns null if no declarations. Assumes declaration is not an empty string and is already trimmed (valid assumptions given the checks made in our setters).- Parameters:
decType
- the type of declaration being parsed, for use in error messages
-
splitExpressions
Split the given expression list into distinct expressions. Assumes the given string is not null or of zero length and is already trimmed (valid assumptions given the checks in our setters and before this method call). -
addAccessPathMetaDatas
public static List<ClassMetaData> addAccessPathMetaDatas(List<ClassMetaData> metas, ClassMetaData[] path) Add the given access path metadatas to the full path list, making sure to maintain only base metadatas in the list. The given list may be null. -
hintToAggregateListener
Convert the user-given hint value to an aggregate listener. The hint can be an aggregate listener instance or class name. -
hintToAggregateListeners
Convert the user-given hint value to an array of aggregate listeners. The hint can be an aggregate listener, aggregate listener array, collection, or comma-separated class names. -
hintToFilterListener
Convert the user-given hint value to a filter listener. The hint can be a filter listener instance or class name. -
hintToFilterListeners
Convert the user-given hint value to an array of filter listeners. The hint can be a filter listener, filter listener array, collection, or comma-separated class names. -
hintToGetter
Return the value of the property named by the hint key. -
hintToSetter
Set the value of the property named by the hint key. -
parseJDBCTemporalSyntax
Parses the given string assuming it is a JDBC key expression. Extracts the data portion and based on the key, calls static java.sql.Date/Time/Timestamp.valueOf(String) method to convert to a java.sql.Date/Time/Timestamp instance. -
isJDBCTemporalSyntax
Affirms if the given String is enclosed in {}. -
clip
Removes the first and last string if they are the terminal sequence in the given string.- Parameters:
s
- a string to be examinedfirst
- the characters in the beginning of the given stringlast
- the characters in the end of the given stringfail
- if true throws exception if the given string does not have the given terminal sequences.- Returns:
- the string with terminal sequences removed.
-
isTemporalType
Affirms if the given class is Data, Time or Timestamp. -
getDefaultForNull
-