public class OASelect<TYPE extends OAObject> extends Object implements Iterable<TYPE>
A property path is a dot (".") separated list of property names that are used to navigate from a root Class to a property value. To go from object to object, reference property names are used.
An OAFinder can be used to act as the datasource.
An OAFilter can be used to further filter the results.
Queries
OASelect select = new OASelect(); String query = OAConverter.toDataSourceString("dept", dept); // converts to dept.Id = 'MIS' String fname = "John"; query += " && (dept.manager.lastName like 'Jones%'"; query += " || (dept.manager.firstName == " + OAConvert.toDataSourceString(fname) + ")"; select.setWhere(query); select.setOrder("dept.name, Emp.LastName DESC, emp.firstName"); select.setPassthru(false); // needs to be converted to native query language select.setCountFirst(false); // dont need count select.setMax(250); // only select first 250 objects. (default=0 ALL) select.setFetchAmount(40); // amount of objects to read at a time (default=45) // or use params for where query query = "dept = ? && dept.manager.lastName like ? || dept.manager.firstname = ?"; Object[] params = new Object[] {dept, "Jones%", fname}; select.setWhere(query); select.setParams(params);
For more information about this package, see documentation.
Modifier and Type | Field and Description |
---|---|
protected int |
amountCount |
protected int |
amountRead |
protected boolean |
bAppend |
protected boolean |
bCancelled |
protected boolean |
bCountFirst |
protected boolean |
bHasBeenStarted |
protected boolean |
bPassthru |
protected boolean |
bRewind |
protected Class |
clazz |
static int |
defalutFetchAmount |
protected OAFilter<TYPE> |
dsFilter |
protected int |
fetchAmount |
protected OAFinder<?,TYPE> |
finder |
protected Hub<TYPE> |
hubSearch |
protected long |
lastReadTime |
protected int |
max |
protected OAFilter<TYPE> |
oaFilter |
protected String |
order |
protected Object[] |
params |
protected String |
propertyFromWhereObject |
OADataSourceIterator |
query |
protected String |
where |
protected OAObject |
whereObject |
Constructor and Description |
---|
OASelect()
Create a new OASelect that is not initialzed.
|
OASelect(Class<TYPE> c)
Create a new OASelect that is initialzed to query Objects for a Class.
|
OASelect(Class<TYPE> c,
boolean passthru,
String where,
String order)
Create a new OASelect that is initialzed to query Objects for a Class for a passthru query.
|
OASelect(Class<TYPE> c,
OAObject whereObject,
String order)
Create a new OASelect that is initialzed to query Objects for a Class.
|
OASelect(Class<TYPE> c,
String where,
Object[] params,
String order)
Create a new OASelect that is initialized to query Objects for a Class.
|
OASelect(Class<TYPE> c,
String where,
String order)
Create a new OASelect that is initialized to query Objects for a Class.
|
Modifier and Type | Method and Description |
---|---|
TYPE |
_next() |
protected void |
_select() |
void |
add(String whereClause,
Object[] params) |
void |
cancel()
Cancels and releases query Iterator from OADataSource.
|
void |
close() |
void |
execute(String command)
Used to send a "passThru" command to OADataSource.
|
protected void |
finalize() |
int |
getAmountRead()
Number of objects loaded so far.
|
boolean |
getAppend()
Flag to show if data should be append to existing collection (used by Hub).
|
int |
getCount()
Returns the amount of records that will be returned from select.
|
boolean |
getCountFirst()
Flag have a count performed before query is executed.
|
OADataSource |
getDataSource()
DataSource that will be used for query/select.
|
OAFilter<TYPE> |
getDataSourceFilter() |
String |
getDataSourceQuery() |
String |
getDataSourceQuery2() |
boolean |
getDirty() |
int |
getFetchAmount()
Set the amount of records to read at a time (Default = 45).
|
OAFilter<TYPE> |
getFilter() |
OAFinder<?,TYPE> |
getFinder() |
boolean |
getHasBeenSelected() |
OAFilter<TYPE> |
getHubFilter() |
int |
getId() |
long |
getLastReadTime() |
int |
getMax()
Maximum number of objects to load.
|
String |
getOrder() |
Object[] |
getParams() |
boolean |
getPassthru()
Flag to show if query should use OADataSource.selectPassthru() instead of OADataSource.select()
|
boolean |
getPassThru()
Flag to show if query should use OADataSource.selectPassthru() instead of OADataSource.select()
|
String |
getPropertyFromWhereObject()
Returns property from Where Object
|
boolean |
getRewind()
Flag to show if data should be rewound to beginning object (used by Hub).
|
Hub<TYPE> |
getSearchHub() |
Class |
getSelectClass()
Class of objects that are being selected.
|
String |
getSortBy() |
String |
getWhere()
Where clause to use for query.
|
Object |
getWhereObject()
WhereObject is used to build a where statement that will select all objects that have
have a reference to whereObject.
|
boolean |
hasBeenStarted() |
boolean |
hasMore()
Returns true if more objects are available to be loaded.
|
boolean |
isCancelled() |
boolean |
isCounted()
Flag to see if a count has been executed for this query/select.
|
boolean |
isSelectAll() |
boolean |
isSelectingNow() |
Iterator<TYPE> |
iterator() |
TYPE |
next()
Returns next object loaded from select, else null if no other objects are available.
|
void |
reset()
Calls reset(false)
|
void |
reset(boolean bClearOutValues)
Reset so that select can be used again
|
void |
select()
Used to perform select.
|
void |
select(String where)
Used to set where clause, and then perform select.
|
void |
select(String where,
Object[] params)
Used to set where clause, and then perform select.
|
void |
select(String where,
Object[] params,
String order)
Used to set where and order by clauses, and then perform select.
|
void |
select(String where,
String order)
Used to set where and order by clauses, and then perform select.
|
void |
setAppend(boolean b)
Flag to show if data should be append to existing collection (used by Hub).
|
void |
setCountFirst(boolean b)
Flag have a count performed before query is executed.
|
void |
setDataSourceFilter(OAFilter<TYPE> hfi) |
void |
setDirty(boolean b) |
void |
setFetchAmount(int fa)
Set the amount of records to read at a time (Default = 45).
|
void |
setFilter(OAFilter<TYPE> hfi) |
void |
setFinder(OAFinder<?,TYPE> finder) |
void |
setHasBeenSelected(boolean b) |
void |
setHubFilter(OAFilter<TYPE> hfi) |
void |
setMax(int x)
Maximum number of objects to load.
|
void |
setOrder(String s)
Sort order clause to use for query.
|
void |
setParams(Object[] params)
Values used to replace '?' in where clause.
|
void |
setPassthru(boolean b)
Flag to show if query should use OADataSource.selectPassthru() instead of OADataSource.select()
|
void |
setPassThru(boolean b)
Flag to show if query should use OADataSource.selectPassthru() instead of OADataSource.select()
|
void |
setPropertyFromWhereObject(String propName)
Property name in whereObject that is used to select objects for this class.
|
void |
setRewind(boolean b)
Flag to show if data should be rewound to beginning object (used by Hub).
|
void |
setSearchHub(Hub<TYPE> hub) |
void |
setSelectClass(Class c)
Class of objects that are being selected.
|
void |
setSortBy(String s) |
void |
setWhere(String s) |
void |
setWhere(String s,
Object param) |
void |
setWhere(String s,
Object[] params) |
void |
setWhereObject(OAObject whereObject)
WhereObject is used to build a where statement that will select all objects that have
have a reference to whereObject.
|
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
forEach, spliterator
protected Class clazz
protected OAObject whereObject
protected String where
protected String order
protected boolean bPassthru
protected boolean bAppend
protected boolean bRewind
protected String propertyFromWhereObject
protected int max
protected boolean bCountFirst
protected int amountRead
protected int amountCount
protected Object[] params
public transient volatile OADataSourceIterator query
public static final int defalutFetchAmount
protected int fetchAmount
protected boolean bCancelled
protected boolean bHasBeenStarted
protected volatile long lastReadTime
public OASelect()
public OASelect(Class<TYPE> c)
public OASelect(Class<TYPE> c, boolean passthru, String where, String order)
public OASelect(Class<TYPE> c, String where, String order)
public OASelect(Class<TYPE> c, String where, Object[] params, String order)
public int getId()
public void setParams(Object[] params)
params
- list of values to replace '?' in where clause.public Object[] getParams()
public void reset()
public void reset(boolean bClearOutValues)
bClearOutValues
- if true then clears where, order, whereObjectpublic void setWhereObject(OAObject whereObject)
public Object getWhereObject()
public void setPropertyFromWhereObject(String propName)
example: if whereObject is Dept and class is Emp, then "emps"
public String getPropertyFromWhereObject()
public OADataSource getDataSource()
public void setSelectClass(Class c)
public Class getSelectClass()
public void setWhere(String s)
public String getWhere()
public void setHasBeenSelected(boolean b)
public boolean getHasBeenSelected()
public void setOrder(String s)
public String getOrder()
public void setSortBy(String s)
public String getSortBy()
public void setPassThru(boolean b)
public void setPassthru(boolean b)
public boolean getPassthru()
public boolean getPassThru()
public void setAppend(boolean b)
public boolean getAppend()
public void setRewind(boolean b)
public boolean getRewind()
public void setCountFirst(boolean b)
public boolean getCountFirst()
public void setMax(int x)
public int getMax()
public int getFetchAmount()
public void setFetchAmount(int fa)
public int getCount()
public boolean isCounted()
public int getAmountRead()
next()
public void execute(String command)
public void select(String where, String order)
public void select(String where, Object[] params, String order)
public void select(String where)
public void select(String where, Object[] params)
public void select()
protected void _select()
public boolean isSelectingNow()
protected void finalize() throws Throwable
public String getDataSourceQuery()
public String getDataSourceQuery2()
public TYPE next()
public TYPE _next()
public boolean isCancelled()
public void cancel()
public void close()
public boolean hasMore()
public boolean isSelectAll()
public boolean hasBeenStarted()
public long getLastReadTime()
public void setDirty(boolean b)
public boolean getDirty()
Copyright © 1999–2019 ViaOA. All rights reserved.