|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.sun.mdm.index.query.QPath
com.sun.mdm.index.query.SingleQPath
This is used for Single Query option. Say if object graph is: System Person Address Phone, SingleQPath would contain all the nodes: { System, Person, Address, Phone } The reason it subclass QPath is that QPath creates subpaths for objects those are not in QPath. In case of SingleQPath, the subpaths would be those objects which have conditions but are not included in the QPath. Note: Because SingleQPath contains all the objects in the select tree, the SQL statement created by it would produce lots of redundant data. So this is more useful where the applications want tuples.
Constructor Summary | |
(package private) |
SingleQPath()
Creates a new instance of SingleQPath |
Method Summary | |
(package private) void |
add(JoinList joinList)
|
(package private) void |
add(java.lang.String object)
|
(package private) QPath |
cloneLessLeaf()
|
(package private) boolean |
contains(java.lang.String object)
|
(package private) java.lang.StringBuffer |
createANSIJoin(java.lang.StringBuffer innerBuf,
java.lang.String primaryObject,
java.lang.String secondaryObject,
boolean outerJoin,
boolean nesting)
|
(package private) java.lang.StringBuffer |
createANSIJoins()
creates Joins that conform to SQL 99 ANSI syntax |
(package private) java.lang.StringBuffer |
createConditions(ConditionMap conditionMap,
int unionIndex)
|
(package private) java.lang.StringBuffer |
createFromTable(int unionIndex)
|
(package private) void |
createJoin(java.lang.StringBuffer joinFields,
java.lang.String primaryObject,
java.lang.String secondaryObject)
|
(package private) java.lang.StringBuffer |
createJoins(int unionIndex)
|
(package private) java.lang.StringBuffer |
createOrderBy()
|
(package private) java.lang.StringBuffer |
createOrderBy(SQLDescriptor sqlDesc)
|
(package private) void |
createOuterJoin(java.lang.StringBuffer joinFields,
java.lang.String primaryObject,
java.lang.String secondaryObject)
|
(package private) java.lang.StringBuffer |
createSelectFields(SQLDescriptor sqlDesc,
QualifiedField[] selectFields)
|
(package private) java.lang.StringBuffer |
createSelectFields(SQLDescriptor sqlDesc,
SelectMap selectMap)
The subclass would implement this method. |
(package private) SQLDescWithBindParameters |
createSQL(ConditionMap[] conditionMaps,
java.lang.Object selectObject,
int maxRows,
java.lang.String[] hints)
|
(package private) java.lang.StringBuffer |
createSQL(java.lang.StringBuffer selectbuf,
java.lang.StringBuffer fromTable,
java.lang.StringBuffer joinbuf,
java.lang.StringBuffer conditionbuf,
int maxRows,
java.lang.String hint)
|
(package private) void |
createsubQPath(QPath[] conditionPaths,
ConditionMap[] conditionMaps)
This methods creates list of subpaths for each QPath. |
(package private) Condition[] |
getConditions()
|
(package private) java.util.List |
getFieldPrepareIndex()
|
(package private) int |
getIndex(java.lang.String object)
|
(package private) java.lang.String |
getLeaf()
|
(package private) java.lang.String |
getObject(int i)
|
(package private) java.lang.String |
getRoot()
|
(package private) void |
initPrepareIndexMap(int size)
|
(package private) void |
setConditions(Condition[] conditions)
|
(package private) int |
size()
|
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
SingleQPath()
Method Detail |
void add(JoinList joinList)
void add(java.lang.String object)
QPath cloneLessLeaf()
boolean contains(java.lang.String object)
java.lang.StringBuffer createANSIJoin(java.lang.StringBuffer innerBuf, java.lang.String primaryObject, java.lang.String secondaryObject, boolean outerJoin, boolean nesting)
innerBuf
- if null, use secondary object table within the constructed clause otherwise use innerBuf
in the constructed ANSI join as in example below. If nesting is false, innerBuf should be false too.primaryObject
- secondaryObject
- outerJoin
- nesting
- false: ansi clause is of to constructed in form:
ex: sbyn_person
left outer join sbyn_address on sbyn_person.personid=sbyn_address.personid
left outer join sbyn_alias on sbyn_person.personid = sbyn_alias.personid
nesting true: ansi clause is of form:
ex: (sbyn_systemobject left outer join
(sbyn_person left outer join sbyn_address on sbyn_person.personid=sbyn_address.personid)
on sbyn_systemobject.systemcode = sbyn_person.systemcode and sbyn_systemobject.lid = sbyn_person.lid )
java.lang.StringBuffer createANSIJoins()
createANSIJoins
in class QPath
java.lang.StringBuffer createConditions(ConditionMap conditionMap, int unionIndex)
java.lang.StringBuffer createFromTable(int unionIndex)
void createJoin(java.lang.StringBuffer joinFields, java.lang.String primaryObject, java.lang.String secondaryObject)
java.lang.StringBuffer createJoins(int unionIndex)
createJoins
in class QPath
java.lang.StringBuffer createOrderBy()
java.lang.StringBuffer createOrderBy(SQLDescriptor sqlDesc)
void createOuterJoin(java.lang.StringBuffer joinFields, java.lang.String primaryObject, java.lang.String secondaryObject)
java.lang.StringBuffer createSelectFields(SQLDescriptor sqlDesc, QualifiedField[] selectFields)
java.lang.StringBuffer createSelectFields(SQLDescriptor sqlDesc, SelectMap selectMap)
sqlDesc
- selectMap
- SQLDescWithBindParameters createSQL(ConditionMap[] conditionMaps, java.lang.Object selectObject, int maxRows, java.lang.String[] hints)
QPath
createSQL
in class QPath
conditionMaps
- selectObject
- java.lang.StringBuffer createSQL(java.lang.StringBuffer selectbuf, java.lang.StringBuffer fromTable, java.lang.StringBuffer joinbuf, java.lang.StringBuffer conditionbuf, int maxRows, java.lang.String hint)
void createsubQPath(QPath[] conditionPaths, ConditionMap[] conditionMaps)
conditionPaths
- conditionMaps
- Condition[] getConditions()
java.util.List getFieldPrepareIndex()
int getIndex(java.lang.String object)
java.lang.String getLeaf()
java.lang.String getObject(int i)
java.lang.String getRoot()
void initPrepareIndexMap(int size)
void setConditions(Condition[] conditions)
int size()
public java.lang.String toString()
QPath
toString
in class QPath
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Sun Microsystems, Inc.