wt.pds
Class CompositeAccessController

java.lang.Object
  extended bywt.pds.AccessControllerAdapter
      extended bywt.pds.CompositeAccessController
All Implemented Interfaces:
AccessController

public class CompositeAccessController
extends AccessControllerAdapter

This class combines multiple AccessController implementations.

Supported API: false

Extendable: false


Nested Class Summary
(package private) static class CompositeAccessController.FilterResultProcessorBridge
           
 
Field Summary
private static String CLASSNAME
           
private  Vector components
           
private static String RESOURCE
           
 
Fields inherited from class wt.pds.AccessControllerAdapter
DEBUG, NOOP_ACCESS_CONTROLLER
 
Fields inherited from interface wt.pds.AccessController
FILTER
 
Constructor Summary
CompositeAccessController()
          

Supported API: false
CompositeAccessController(Vector a_components)
          

Supported API: false
 
Method Summary
 void addComponent(AccessController a_accessController)
          

Supported API: false
 WhereExpression buildAccessCondition(Vector a_tableInfos, boolean a_useOuterJoin)
          Build WHERE condtions for the specified class and the current principal.
 boolean checkAccess(Object a_object)
          Check access of the object.
 boolean checkAccess(Object[] a_objects)
          Check access of all objects in the array.
 void checkQuery(StatementSpec a_statementSpec)
          

Supported API: false
 Vector getComponents()
          Gets the object for the association that plays role: components.
 FilterResultProcessor getFilter()
          Gets the value of the attribute: filter; Filter for processing multiple rows.
 Vector getItemBuilders(Vector a_tableInfos, ResultBuilder a_resultBuilder, int a_itemOffset)
          Retrun a Vector of ItemBuilders that will be used to retrieve Access Control related objects.
 ItemBuilder getViewItemBuilder(ClassInfo a_classInfo, String a_alias)
          Retrun a ItemBuilders that will be used to retrieve Access Control related objects.
 boolean isItemBuilderProvided()
          

Supported API: false
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

RESOURCE

private static final String RESOURCE
See Also:
Constant Field Values

CLASSNAME

private static final String CLASSNAME

components

private Vector components
Constructor Detail

CompositeAccessController

public CompositeAccessController(Vector a_components)


Supported API: false

Parameters:
a_components -

CompositeAccessController

public CompositeAccessController()


Supported API: false

Method Detail

getFilter

public FilterResultProcessor getFilter()
                                throws WTException
Gets the value of the attribute: filter; Filter for processing multiple rows.

Supported API: false

Specified by:
getFilter in interface AccessController
Overrides:
getFilter in class AccessControllerAdapter
Returns:
FilterResultProcessor
Throws:
WTException

getComponents

public Vector getComponents()
Gets the object for the association that plays role: components.

Supported API: false

Returns:
Vector

checkAccess

public boolean checkAccess(Object a_object)
                    throws PersistenceException
Check access of the object. Return false if the current principal does not have READ permission on all of the objects.

Supported API: false

Specified by:
checkAccess in interface AccessController
Overrides:
checkAccess in class AccessControllerAdapter
Parameters:
a_object -
Returns:
boolean
Throws:
PersistenceException

buildAccessCondition

public WhereExpression buildAccessCondition(Vector a_tableInfos,
                                            boolean a_useOuterJoin)
                                     throws PersistenceException
Build WHERE condtions for the specified class and the current principal.

Supported API: false

Specified by:
buildAccessCondition in interface AccessController
Overrides:
buildAccessCondition in class AccessControllerAdapter
Parameters:
a_tableInfos -
a_useOuterJoin -
Returns:
WhereExpression
Throws:
PersistenceException

getItemBuilders

public Vector getItemBuilders(Vector a_tableInfos,
                              ResultBuilder a_resultBuilder,
                              int a_itemOffset)
                       throws PersistenceException
Retrun a Vector of ItemBuilders that will be used to retrieve Access Control related objects.

Supported API: false

Specified by:
getItemBuilders in interface AccessController
Overrides:
getItemBuilders in class AccessControllerAdapter
Parameters:
a_tableInfos - Vector of concrete TableExpression instances to use to create the Access Control items
a_resultBuilder - instance used to create the Access Control items
a_itemOffset - The current offset where the items will be placed in the results.
Returns:
Vector
Throws:
PersistenceException

getViewItemBuilder

public ItemBuilder getViewItemBuilder(ClassInfo a_classInfo,
                                      String a_alias)
Retrun a ItemBuilders that will be used to retrieve Access Control related objects.

Supported API: false

Specified by:
getViewItemBuilder in interface AccessController
Overrides:
getViewItemBuilder in class AccessControllerAdapter
Parameters:
a_classInfo -
a_alias -
Returns:
ItemBuilder

checkQuery

public void checkQuery(StatementSpec a_statementSpec)
                throws PersistenceException


Supported API: false

Specified by:
checkQuery in interface AccessController
Overrides:
checkQuery in class AccessControllerAdapter
Parameters:
a_statementSpec -
Throws:
PersistenceException

addComponent

public void addComponent(AccessController a_accessController)


Supported API: false

Parameters:
a_accessController -

isItemBuilderProvided

public boolean isItemBuilderProvided()


Supported API: false

Specified by:
isItemBuilderProvided in interface AccessController
Overrides:
isItemBuilderProvided in class AccessControllerAdapter
Returns:
boolean

checkAccess

public boolean checkAccess(Object[] a_objects)
                    throws PersistenceException
Check access of all objects in the array. Return false if the current principal does not have READ permission on all of the objects.

Supported API: false

Specified by:
checkAccess in interface AccessController
Overrides:
checkAccess in class AccessControllerAdapter
Parameters:
a_objects -
Returns:
boolean
Throws:
PersistenceException

toString

public String toString()