public abstract class SearchComparator extends Object
Constructor and Description |
---|
SearchComparator(com.orchestranetworks.schema.SchemaNode schemaNode,
Locale locale) |
Modifier and Type | Method and Description |
---|---|
abstract SearchComparator |
cloneMatching(com.orchestranetworks.schema.SchemaNode newNode)
Clones the current algorithm.
|
boolean |
equals(Object obj) |
Locale |
getLocale() |
List<InputParameter> |
getParameter()
Returns a list of algorithm parameters.
|
com.orchestranetworks.schema.SchemaNode |
getSchemaNode() |
int |
hashCode() |
boolean |
isDateSupported()
Returns
true if the algorithm supports searching in date-type fields. |
boolean |
isFullTableScanRequired()
Searches only the most relevant records by default.
|
boolean |
isNullSupported()
Returns
true if the algorithm supports the comparison of null for the pivot record. |
boolean |
isNumericSupported()
Returns
true if the algorithm supports numeric field. |
String |
normalizeValue(String value)
Normalizes the value before any comparison.
|
void |
setParameter(List<InputParameter> parameters)
Sets parameters for algorithm.
|
public SearchComparator(com.orchestranetworks.schema.SchemaNode schemaNode, Locale locale)
public final Locale getLocale()
public final com.orchestranetworks.schema.SchemaNode getSchemaNode()
public abstract SearchComparator cloneMatching(com.orchestranetworks.schema.SchemaNode newNode)
newNode
- a key in the table targeted by the foreign key.public String normalizeValue(String value)
value
is changed into lower-case.
Can be overridden in subclasses to change this default behavior.public boolean isNumericSupported()
true
if the algorithm supports numeric field.
Default is true
. Can be overridden in subclasses.public boolean isDateSupported()
true
if the algorithm supports searching in date-type fields.
Default is true
. Can be overridden in subclasses.public boolean isNullSupported()
true
if the algorithm supports the comparison of null
for the pivot record.
Default is false
. Can be overridden in subclasses.public void setParameter(List<InputParameter> parameters)
public List<InputParameter> getParameter()
public boolean isFullTableScanRequired()
false
.