wt.vc.struct
Class StandardStructService.ProjectTerminalConfigSpec

java.lang.Object
  extended bywt.vc.struct.StandardStructService.ProjectTerminalConfigSpec
All Implemented Interfaces:
ConfigSpec, Externalizable, Serializable
Enclosing class:
StandardStructService

private class StandardStructService.ProjectTerminalConfigSpec
extends Object
implements ConfigSpec

Navigates should not return terminal iterations (unless we're starting from one) or project versions (unless we're starting from one, in which case we want to return only those in the same project). This ConfigSpec will internally handle these details.


Field Summary
private  ConfigSpec businessConfigSpec
           
private  Persistable originatingObject
           
 
Constructor Summary
private StandardStructService.ProjectTerminalConfigSpec(Persistable originatingObject, ConfigSpec businessConfigSpec)
           
 
Method Summary
 QuerySpec appendSearchCriteria(QuerySpec querySpec)
          Append the businessConfigSpec and then append terminal/project container criteria.
 QueryResult process(QueryResult results)
          Just do what the businessConfigSpec would do.
 void readExternal(ObjectInput oi)
           
 void writeExternal(ObjectOutput oi)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

originatingObject

private Persistable originatingObject

businessConfigSpec

private ConfigSpec businessConfigSpec
Constructor Detail

StandardStructService.ProjectTerminalConfigSpec

private StandardStructService.ProjectTerminalConfigSpec(Persistable originatingObject,
                                                        ConfigSpec businessConfigSpec)
Method Detail

readExternal

public void readExternal(ObjectInput oi)
                  throws IOException,
                         ClassNotFoundException
Specified by:
readExternal in interface Externalizable
Throws:
IOException
ClassNotFoundException

writeExternal

public void writeExternal(ObjectOutput oi)
                   throws IOException
Specified by:
writeExternal in interface Externalizable
Throws:
IOException

appendSearchCriteria

public QuerySpec appendSearchCriteria(QuerySpec querySpec)
                               throws WTException,
                                      QueryException
Append the businessConfigSpec and then append terminal/project container criteria.

Specified by:
appendSearchCriteria in interface ConfigSpec
Parameters:
querySpec - A QuerySpec with a target class that is Iterated.
Returns:
QuerySpec
Throws:
QueryException
WTException
See Also:
QuerySpec, SearchCondition

process

public QueryResult process(QueryResult results)
                    throws WTException
Just do what the businessConfigSpec would do.

Specified by:
process in interface ConfigSpec
Parameters:
results - QueryResult of iterations to filter. Assumed to be the result of a query that included the additional search conditions applied by appendSearchCriteria. Note that after enumerating through the elements of this QueryResult, it should be reset.
Returns:
QueryResult
Throws:
WTException
See Also:
QueryResult, Iterated