Class FieldChecker
java.lang.Object
com.google.appengine.api.search.checkers.FieldChecker
Provides checks for Field names, language code, and values: text, HTML, atom
or date.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic String
Checks whether an atom is valid.static Date
Checks whether a date is within range.static String
checkExpression
(String expression) Checks whether a field expression is not null and is parsable.static String
checkFieldName
(String name) Checks whether a field name is valid.static String
checkFieldName
(String name, String fieldName) Checks whether a field name is valid.static String
Checks whether a html is valid.static Double
checkNumber
(Double value) Checks whether a number is valid.static String
checkPrefix
(String prefix) Checks whether a prefix field is valid.static String
checkSortExpression
(String expression) Checks whether a sort bexpression is not null and is parsable.static String
Checks whether a text is valid.static com.google.apphosting.api.search.DocumentPb.Field
checkValid
(com.google.apphosting.api.search.DocumentPb.Field field) checkVector
(List<Double> vector) Checks whether a vector field is valid.static Locale
parseLocale
(String locale) Returns aLocale
parsed from the given locale string.
-
Constructor Details
-
FieldChecker
public FieldChecker()
-
-
Method Details
-
checkFieldName
Checks whether a field name is valid. The field name length must be between 1 andSearchApiLimits.MAXIMUM_NAME_LENGTH
and it should matchSearchApiLimits.FIELD_NAME_PATTERN
.- Parameters:
name
- the field name to check- Returns:
- the checked field name
- Throws:
IllegalArgumentException
- if the field name is null or empty or is longer than SearchApiLimits#MAXIMUM_NAME_LENGTH or it doesn't match #FIELD_NAME_PATTERN.
-
checkFieldName
Checks whether a field name is valid. The field name length must be between 1 andSearchApiLimits.MAXIMUM_NAME_LENGTH
and it should matchSearchApiLimits.FIELD_NAME_PATTERN
.- Parameters:
name
- the field name to checkfieldName
- the name of the Java field name of the class where name is checked- Returns:
- the checked field name
- Throws:
IllegalArgumentException
- if the field name is null or empty or is longer than Field.MAXIMUM_NAME_LENGTH or it doesn't match #FIELD_NAME_PATTERN.
-
checkText
Checks whether a text is valid. A text can be null, or a string between 0 and SearchApiLimits.MAXIMUM_TEXT_LENGTH in length.- Parameters:
text
- the text to check- Returns:
- the checked text
- Throws:
IllegalArgumentException
- if text is too long
-
checkHTML
Checks whether a html is valid. A html can be null or a string between 0 and SearchApiLimits.MAXIMUM_TEXT_LENGTH in length.- Parameters:
html
- the html to check- Returns:
- the checked html
- Throws:
IllegalArgumentException
- if html is too long
-
checkAtom
Checks whether an atom is valid. An atom can be null or a string between 1 and SearchApiLimits.MAXIMUM_ATOM_LENGTH in length.- Parameters:
atom
- the atom to check- Returns:
- the checked atom
- Throws:
IllegalArgumentException
- if atom is too long
-
checkPrefix
Checks whether a prefix field is valid. A prefix field can be null or a string between 1 and SearchApiLimits.MAXIMUM_PREFIX_LENGTH in length.- Parameters:
prefix
- the prefix to check- Returns:
- the checked prefix
- Throws:
IllegalArgumentException
- if prefix is too long
-
checkVector
Checks whether a vector field is valid. A vector field can be an array of any number with size less than SearchApiLimits.VECTOR_FIELD_MAX_SIZE.- Parameters:
vector
- the vector to check- Throws:
IllegalArgumentException
- if vector is too long.
-
checkNumber
Checks whether a number is valid. A number can be null or a value betweenSearchApiLimits.MINIMUM_NUMBER_VALUE
andSearchApiLimits.MAXIMUM_NUMBER_VALUE
, inclusive.- Parameters:
value
- the value to check- Returns:
- the checked number
- Throws:
IllegalArgumentException
- if number is out of range
-
checkDate
Checks whether a date is within range. Date is nullable.- Parameters:
date
- the date to check- Returns:
- the checked date
- Throws:
IllegalArgumentException
- if date is out of range
-
checkExpression
Checks whether a field expression is not null and is parsable.- Parameters:
expression
- the expression to check- Returns:
- the checked expression
- Throws:
IllegalArgumentException
- if the expression is null, or cannot be parsed
-
checkSortExpression
Checks whether a sort bexpression is not null and is parsable.- Parameters:
expression
- the expression to check- Returns:
- the checked expression
- Throws:
IllegalArgumentException
- if the expression is null, or cannot be parsed
-
checkValid
public static com.google.apphosting.api.search.DocumentPb.Field checkValid(com.google.apphosting.api.search.DocumentPb.Field field) -
parseLocale
Returns aLocale
parsed from the given locale string.- Parameters:
locale
- a string representation of aLocale
- Returns:
- a
Locale
parsed from the given locale string - Throws:
IllegalArgumentException
- if the locale cannot be parsed
-