wt.vc.config
Class ViewConfigSpec

java.lang.Object
  extended by wt.vc.config.ViewConfigSpec
All Implemented Interfaces:
Externalizable, Serializable, NetFactor, ObjectMappable, ConfigSpec

public class ViewConfigSpec
extends Object
implements ConfigSpec, ObjectMappable, Externalizable

The ViewConfigSpec can be used to filter ViewManageable elements based on view membership. If 'isParentIncluded()' is set to false, only view-independent and view-dependent versions that are in the specified view are returned. Otherwise, for view-dependent versions not in the specified view, the parents are also searched until a match is found or there are no more parents to search.

Use the newViewConfigSpec static factory method(s), not the ViewConfigSpec constructor, to construct instances of this class. Instances must be constructed using the static factory(s), in order to ensure proper initialization of the instance.



Supported API: true

Extendable: false

See Also:
ViewManageable, Serialized Form

Field Summary
static String PARENT_INCLUDED
          Label for the attribute; If set to true, search the parents of the view if no match is found for the view-dependent versions of the master.
static String VIEW
          Label for the attribute; The view to match.
 
Method Summary
 QuerySpec appendSearchCriteria(QuerySpec querySpec)
          Appends a "view = getView() OR view = null" to the QuerySpec if isParentIncluded() is false, otherwise appends "view = getView() OR view = parentView [...] OR view = null".
 View getView()
          Gets the value of the attribute: VIEW.
protected  void initialize(View view)
          Supports initialization, following construction of an instance.
 boolean isParentIncluded()
          Gets the value of the attribute: PARENT_INCLUDED.
static ViewConfigSpec newViewConfigSpec(View view)
          Constructs a new ViewConfigSpec using the specified view.
 QueryResult process(QueryResult results)
          Returns view-independent versions and versions in the current view.
 void setParentIncluded(boolean a_ParentIncluded)
          Sets the value of the attribute: PARENT_INCLUDED.
 void setView(View a_View)
          Sets the value of the attribute: VIEW.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

PARENT_INCLUDED

public static final String PARENT_INCLUDED
Label for the attribute; If set to true, search the parents of the view if no match is found for the view-dependent versions of the master. If false, only versions in the specified view or view-dependent will match.

Supported API: true

See Also:
Constant Field Values

VIEW

public static final String VIEW
Label for the attribute; The view to match. A null indicates that only view-independent elements are desired.

Supported API: true

See Also:
Constant Field Values
Method Detail

isParentIncluded

public boolean isParentIncluded()
Gets the value of the attribute: PARENT_INCLUDED. If set to true, search the parents of the view if no match is found for the view-dependent versions of the master. If false, only versions in the specified view or view-dependent will match.

Supported API: true

Returns:
boolean

setParentIncluded

public void setParentIncluded(boolean a_ParentIncluded)
                       throws WTPropertyVetoException
Sets the value of the attribute: PARENT_INCLUDED. If set to true, search the parents of the view if no match is found for the view-dependent versions of the master. If false, only versions in the specified view or view-dependent will match.

Supported API: true

Parameters:
a_ParentIncluded -
Throws:
WTPropertyVetoException

getView

public View getView()
             throws ObjectNoLongerExistsException
Gets the value of the attribute: VIEW. The view to match. A null indicates that only view-independent elements are desired.

Supported API: true

Returns:
View
Throws:
ObjectNoLongerExistsException

setView

public void setView(View a_View)
             throws WTPropertyVetoException
Sets the value of the attribute: VIEW. The view to match. A null indicates that only view-independent elements are desired.

Supported API: true

Parameters:
a_View -
Throws:
WTPropertyVetoException

appendSearchCriteria

public QuerySpec appendSearchCriteria(QuerySpec querySpec)
                               throws WTException,
                                      QueryException
Appends a "view = getView() OR view = null" to the QuerySpec if isParentIncluded() is false, otherwise appends "view = getView() OR view = parentView [...] OR view = null". Note that if the view is null, the view = null condition will still apply, and only view-independent objects will be returned.

Supported API: true

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

process

public QueryResult process(QueryResult results)
                    throws WTException
Returns view-independent versions and versions in the current view. If isParentIncluded() and there are no versions for a particular master in the specified view, the view's parents are checked until there is a match or no views remain.

Supported API: true

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

newViewConfigSpec

public static ViewConfigSpec newViewConfigSpec(View view)
                                        throws WTPropertyVetoException
Constructs a new ViewConfigSpec using the specified view.

Supported API: true

Parameters:
view -
Returns:
ViewConfigSpec
Throws:
WTPropertyVetoException

initialize

protected void initialize(View view)
                   throws WTPropertyVetoException
Supports initialization, following construction of an instance. Invoked by "new" factory having the same signature.

Supported API: true

Parameters:
view -
Throws:
WTPropertyVetoException