kaos.policy.guard
Class KAoSGuardImpl

java.lang.Object
  extended by kaos.core.util.MethodCallRequestHandler
      extended by kaos.policy.guard.KAoSGuardImpl
All Implemented Interfaces:
PolicyAdvice, PolicyChecking, PolicyListener, GuardManager, KAoSGuard, TriggerConditionListener, TriggerConditionListenersRegistry

public class KAoSGuardImpl
extends MethodCallRequestHandler
implements KAoSGuard, GuardManager

Guard for KAoS policies enforcement.

Version:
Author:
KAoS Team

Field Summary
protected  java.util.Map<java.lang.String,java.util.List<Enforcer>> _enforcersOfType
           
 InstanceClassifierManager _instanceClassifierFactory
           
 KAoSAgentDirectoryServiceProxy _kaosDirectoryService
           
 Logger _logger
           
protected  java.lang.String _myId
           
protected  PolicyInterestConfiguration _policyInterest
           
 KAoSGuardPolicyProcessor _policyProcessor
           
static java.lang.String CONTAINER_ID_KEY
           
static java.lang.String GUARD_NAME_KEY
           
 
Fields inherited from class kaos.core.util.MethodCallRequestHandler
_agentDescription, _helper, _mts, _nickName, DEFAULT_NICKNAME, myLocator, myMessageReceiver, myMessageSender
 
Constructor Summary
KAoSGuardImpl()
           
 
Method Summary
 void addDomain(DomainDescription desc)
          Add the specified DomainDescription to the collection of domains used to calculate authorization modalities for checking permissions.
protected  void addPolicy(PolicyMsg polMsg)
           
 void addPolicyUpdateListener(PolicyListener listener)
           
 void changeComponentEnabledStatus(java.lang.String repType, java.lang.String associatedOntType, java.lang.Boolean state)
           
protected  void changePolicy(PolicyMsg polMsg)
           
 void checkDeepPermission(ActionInstanceDescription aid, PolicyDecisionObserver pObserver)
           
 void checkPermission(ActionInstanceDescription origActionDesc, PolicyDecisionObserver pObserver)
           
 void deleteAllLogs()
           
 void deleteLogsforActionType(java.lang.String actionType)
           
 void deleteLogsforActor(java.lang.String actorID)
           
 void deleteSpecifiedLogs(java.lang.String actionType, java.lang.String actorID, java.lang.String startTime, java.lang.String endTime, java.lang.Boolean latest)
           
 void deregisterTriggerConditionListener(TriggerConditionListener listenerRef)
           
 java.util.List<ActionInstanceDescription> findPolicyDecision(ActionInstanceDescription aid, PolicyDecisionObserver pObserver)
           
 java.util.List<java.lang.String> getActionSubclassesOfInterest()
           
 java.util.List<KAoSExtensionComponent> getAllKAoSExtensionComponents(java.lang.String repType)
           
 java.util.List<ActionInstanceDescription> getAllLogs()
           
 java.util.Vector getAllowableValuesForActionProperties(ActionInstanceDescription origActionDesc, PolicyDecisionObserver observer)
           
 java.util.Vector getAllowableValuesForActionProperties(java.util.Vector origPropertyNames, ActionInstanceDescription origActionDesc, boolean tight, PolicyDecisionObserver observer)
           
 java.util.Vector getAllowableValuesForActionProperties(java.util.Vector propertyNames, ActionInstanceDescription actionDesc, PolicyDecisionObserver observer)
           
 java.util.Set getAllowableValuesForActionProperty(java.lang.String origPropertyName, ActionInstanceDescription origActionDesc, boolean tight, PolicyDecisionObserver observer)
           
 java.util.Set getAllowableValuesForActionProperty(java.lang.String origPropertyName, ActionInstanceDescription origActionDesc, java.util.Set allTargetValues, boolean tight, PolicyDecisionObserver observer)
           
 java.util.Set getAllowableValuesForActionProperty(java.lang.String propertyName, ActionInstanceDescription actionDesc, java.util.Set allTargetValues, PolicyDecisionObserver observer)
           
 java.util.List<PolicyInformation> getAllPolicies()
           
 java.util.Collection<KAoSExtensionComponentManager> getAllRepositoryManagers()
           
protected  java.util.List<PolicyMsg> getBootPolicies(java.lang.String type)
           
 java.util.List<java.lang.String> getClassRangesOfInterest()
           
 java.lang.Boolean getComponentEnabledStatus(java.lang.String repType, java.lang.String componentName)
           
 EventsHistoryManager getEventHistoryManager()
           
 java.util.Vector getForbiddenValuesForActionProperty(java.lang.String origPropertyName, ActionInstanceDescription origActionDesc, PolicyDecisionObserver observer)
           
 java.util.Collection<KAoSAgentDescription> getGuardedAgentDescriptions()
           
 java.lang.String getGuardStateFor()
           
 java.lang.String getID()
          Get guard's GUID.
 KAoSExtensionComponent getKAoSExtensionComponents(java.lang.String repType, java.lang.String associatedOntType)
           
 java.util.List<ActionInstanceDescription> getLogsforActionType(java.lang.String actionType)
           
 java.util.List<ActionInstanceDescription> getLogsforActor(java.lang.String actorID)
           
 java.util.List<ActionInstanceDescription> getObligationsForTriggerCondition(ActionInstanceDescription origActionDesc, PolicyDecisionObserver observer)
           
 PreComputedPolicyDBManager getPolicyDBManager()
           
 PolicyInformation getPolicyInformation(java.lang.String policyID)
           
 java.lang.Integer getPolicyUpdateCount()
           
 java.util.List<java.lang.String> getPropretiesOfInterest()
           
 KAoSExtensionComponentManager getRepositoryManager(java.lang.String repType)
           
 java.util.Map<java.lang.String,java.lang.String> getRepositoryTableInformation(java.lang.String repType)
           
 java.util.List<ActionInstanceDescription> getSpecifiedLogs(java.lang.String actionType, java.lang.String actorID, java.lang.String startTime, java.lang.String endTime, java.lang.Boolean latest)
           
 java.util.List<ActionInfo> getTriggerConditions(ActionInfo triggerAD)
           
protected  boolean initExecEnvironment(java.util.List<java.lang.String> domainNames, KAoSServiceRoot sr, JasBean guardInitInfo, java.lang.Object infrastructureInfo, java.util.List<java.lang.String> controlledActorClasses, java.util.List<java.lang.String> controlledActionClasses, java.util.List serviceNames)
           
 boolean initialize(java.util.List<java.lang.String> domainNames, KAoSServiceRoot sr, JasBean guardInitInfo, java.lang.Object infrastructureInfo, java.util.List<java.lang.String> controlledActorClasses, java.util.List<java.lang.String> controlledActionClasses, java.util.List<java.lang.String> extensionComponents)
           
 java.lang.Object invokeKAoSExtensionComponentMethod(java.lang.String repType, java.lang.String associatedOntType, java.lang.String methodName, java.util.Vector args)
           
 java.lang.Boolean isGuardLoggingActive()
           
 void logEvent(ActionInstanceDescription event)
           
 void modifyAgent(KAoSAgentDescription agentDescription, java.lang.Object agentContext)
          Modify the agent registration with the KAoS Directory Service.
protected  void monitorAuthorizationFailure(ActionInstanceDescription origActionDesc)
           
 void newAgent(KAoSAgentDescription agentDescription, java.lang.Object initAgentContext)
          Retrieve the ontological type of the agent and based on the associated action(s), obtain the appropriate enforcer(s) for the agent.
protected  void registerAgent(KAoSAgentDescription agentDescription)
           
 boolean registerEnforcer(Enforcer enforcer, java.util.List<java.lang.String> subjectIDs)
           
 void registerTriggerConditionListener(ActionInfo triggerAD, TriggerConditionListener listenerRef)
           
 void reinstateObligationPolicy(java.lang.String policyID)
           
 void removeAgent(KAoSAgentDescription agentDescription)
          Remove agent from the KAoS Directory Service.
 void removeAllKAoSExtensionComponents(java.lang.String repType)
           
 void removeAllPolicies()
           
 void removeAllRepositoryManagers()
           
 boolean removeKAoSExtensionComponent(java.lang.String repType, java.lang.String associatedOntType)
           
protected  void removePolicy(PolicyMsg polMsg)
           
 void removePolicyUpdateListener(PolicyListener listener)
           
 KAoSExtensionComponentManager removeRepositoryManager(java.lang.String repType)
           
 void resetGuardAppeal()
           
 void restoreState(java.lang.String gpm, KAoSServiceRoot sr, JasBean guardInitInfo, boolean connectToDS, boolean connectToTransport)
           
 void saveState(java.lang.String fileName)
           
 boolean setConceptMapping(java.lang.String mappingName, java.lang.String fileNameLoc)
          Set the mapping of ontology concept.
 void setGuardAppeal(java.util.Vector actions)
           
 void setGuardLoggingState(java.lang.Boolean logging)
           
 void setKAoSExtensionComponent(java.lang.String repType, java.lang.String associatedOntType, KAoSExtensionComponent extComp)
           
 void setPolicies(java.util.List<PolicyMsg> policies)
          Replace the current policy set with the given set
 void setPolicyBootstrapper(PolicyBootstrapper pb)
           
 void setPropertyPopulator(java.lang.String mappingName, ActionPropertyPopulator populator)
          Set the property populator for the given mapping.
 void setRepositoryManager(java.lang.String repType, KAoSExtensionComponentManager repManager)
           
 void suspendObligationPolicy(java.lang.String policyID)
           
 void updateActionSubclasses(java.lang.String className, java.util.Collection<java.lang.String> subclasses)
           
 void updateInForceValue(java.lang.String policyId, boolean inForce)
           
 void updateInForceValue(java.lang.String policyId, java.lang.Boolean inForce)
           
 void updateInstanceOfClass(java.lang.String className, java.util.Collection<java.lang.String> instances)
           
 void updatePolicies(java.util.List<PolicyMsg> addedPolicies, java.util.List<PolicyMsg> changedPolicies, java.util.List<PolicyMsg> removedPolicies)
          Receive policy updates and apply them accordingly.
protected  void updatePolicies(java.util.List<PolicyMsg> addedPolicies, java.util.List<PolicyMsg> changedPolicies, java.util.List<PolicyMsg> removedPolicies, boolean replacePolicies)
           
 void updateSubpropertiesOfProperty(java.lang.String propName, java.util.List<java.lang.String> subProps)
           
 void updateTriggerCondition(ActionInfo triggerBasicAD)
          This method is called by Guard upon receiving an obligation policy containing the specified triggerACD.
 void updateTriggerListeners(java.util.List<PolicyMsg> addedPolicies)
           
 
Methods inherited from class kaos.core.util.MethodCallRequestHandler
bindToTransport, handleMsgContent, handleObjContent, initialize, receiveMessage
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

GUARD_NAME_KEY

public static final java.lang.String GUARD_NAME_KEY
See Also:
Constant Field Values

CONTAINER_ID_KEY

public static final java.lang.String CONTAINER_ID_KEY
See Also:
Constant Field Values

_logger

public Logger _logger

_myId

protected java.lang.String _myId

_policyInterest

protected PolicyInterestConfiguration _policyInterest

_kaosDirectoryService

public KAoSAgentDirectoryServiceProxy _kaosDirectoryService

_enforcersOfType

protected java.util.Map<java.lang.String,java.util.List<Enforcer>> _enforcersOfType

_instanceClassifierFactory

public InstanceClassifierManager _instanceClassifierFactory

_policyProcessor

public KAoSGuardPolicyProcessor _policyProcessor
Constructor Detail

KAoSGuardImpl

public KAoSGuardImpl()
Method Detail

initialize

public boolean initialize(java.util.List<java.lang.String> domainNames,
                          KAoSServiceRoot sr,
                          JasBean guardInitInfo,
                          java.lang.Object infrastructureInfo,
                          java.util.List<java.lang.String> controlledActorClasses,
                          java.util.List<java.lang.String> controlledActionClasses,
                          java.util.List<java.lang.String> extensionComponents)
Specified by:
initialize in interface KAoSGuard

addDomain

public void addDomain(DomainDescription desc)
Description copied from interface: KAoSGuard
Add the specified DomainDescription to the collection of domains used to calculate authorization modalities for checking permissions.

Specified by:
addDomain in interface KAoSGuard

getID

public java.lang.String getID()
Description copied from interface: KAoSGuard
Get guard's GUID.

Specified by:
getID in interface KAoSGuard
Returns:
String Uniquely identifies the Guard.

setConceptMapping

public boolean setConceptMapping(java.lang.String mappingName,
                                 java.lang.String fileNameLoc)
Description copied from interface: KAoSGuard
Set the mapping of ontology concept.

Specified by:
setConceptMapping in interface KAoSGuard
Parameters:
mappingName - The String specifying the name of the mapping.
fileNameLoc - The String specifying the name and path of the file containing the mapping.
Returns:
boolean indicating success(true)/failure(false) of the operation.

setPropertyPopulator

public void setPropertyPopulator(java.lang.String mappingName,
                                 ActionPropertyPopulator populator)
Description copied from interface: KAoSGuard
Set the property populator for the given mapping.

Specified by:
setPropertyPopulator in interface KAoSGuard
Parameters:
mappingName - The String specifying the name of the mapping.

getGuardedAgentDescriptions

public java.util.Collection<KAoSAgentDescription> getGuardedAgentDescriptions()

newAgent

public void newAgent(KAoSAgentDescription agentDescription,
                     java.lang.Object initAgentContext)
              throws AlreadyRegisteredException,
                     DirectoryFailure,
                     EnforcerInstantiationException
Description copied from interface: KAoSGuard
Retrieve the ontological type of the agent and based on the associated action(s), obtain the appropriate enforcer(s) for the agent. Register agent with the KAoS Directory Service.

Specified by:
newAgent in interface KAoSGuard
Parameters:
agentDescription - KAoSAgentDescription to be used by the Guard to obtain the appropriate enforcer(s) for the guarded agent and to register the agent with the KAoS Directory Service.
initAgentContext - An Object describing the context of the new guarded agent.
Throws:
AlreadyRegisteredException - if the AgentDescription is already registered in the KAoS Directory Service.
DirectoryFailure - if the KAoS Directory Service is not available.
EnforcerInstantiationException - if the Guard is not able to instantiate the enforcer for the agent's action type.

modifyAgent

public void modifyAgent(KAoSAgentDescription agentDescription,
                        java.lang.Object agentContext)
                 throws DirectoryFailure,
                        EnforcerInstantiationException,
                        UnknownConceptException
Description copied from interface: KAoSGuard
Modify the agent registration with the KAoS Directory Service.

Specified by:
modifyAgent in interface KAoSGuard
Parameters:
agentDescription - KAoSAgentDescription to be used by the Guard to obtain the appropriate enforcer(s) for the guarded agent and to register the agent with the KAoS Directory Service.
agentContext - An Object describing the context of the agent.
Throws:
DirectoryFailure - if the KAoS Directory Service is not available.
EnforcerInstantiationException - if the Guard is not able to instantiate the enforcer for the agent's action type.
UnknownConceptException - if the agent's ontological type is unknown in the KAoS ontology repository.

removeAgent

public void removeAgent(KAoSAgentDescription agentDescription)
                 throws NotRegisteredException,
                        DirectoryFailure
Description copied from interface: KAoSGuard
Remove agent from the KAoS Directory Service.

Specified by:
removeAgent in interface KAoSGuard
Parameters:
agentDescription - KAoSAgentDescription to be used by the Guard to deregister the agent from the KAoS Directory Service.
Throws:
NotRegisteredException - if the agent is not registered in the KAoS Directory Service.
DirectoryFailure - if the KAoS Directory Service is not available.

registerAgent

protected void registerAgent(KAoSAgentDescription agentDescription)
                      throws AlreadyRegisteredException,
                             DirectoryFailure
Throws:
AlreadyRegisteredException
DirectoryFailure

updateInForceValue

public void updateInForceValue(java.lang.String policyId,
                               java.lang.Boolean inForce)

updateInForceValue

public void updateInForceValue(java.lang.String policyId,
                               boolean inForce)

updatePolicies

public void updatePolicies(java.util.List<PolicyMsg> addedPolicies,
                           java.util.List<PolicyMsg> changedPolicies,
                           java.util.List<PolicyMsg> removedPolicies)
Description copied from interface: PolicyListener
Receive policy updates and apply them accordingly.

Specified by:
updatePolicies in interface PolicyListener
Parameters:
addedPolicies - The List of policies to be added to the collection of stored policies.
changedPolicies - The List of policies to be changed in the collection of stored policies.
removedPolicies - The List of policies to be removed from the collection of stored policies.

updatePolicies

protected void updatePolicies(java.util.List<PolicyMsg> addedPolicies,
                              java.util.List<PolicyMsg> changedPolicies,
                              java.util.List<PolicyMsg> removedPolicies,
                              boolean replacePolicies)

addPolicyUpdateListener

public void addPolicyUpdateListener(PolicyListener listener)
Specified by:
addPolicyUpdateListener in interface KAoSGuard

removePolicyUpdateListener

public void removePolicyUpdateListener(PolicyListener listener)
Specified by:
removePolicyUpdateListener in interface KAoSGuard

getPolicyUpdateCount

public java.lang.Integer getPolicyUpdateCount()
Specified by:
getPolicyUpdateCount in interface PolicyAdvice

getBootPolicies

protected java.util.List<PolicyMsg> getBootPolicies(java.lang.String type)

addPolicy

protected void addPolicy(PolicyMsg polMsg)

removePolicy

protected void removePolicy(PolicyMsg polMsg)

changePolicy

protected void changePolicy(PolicyMsg polMsg)

updateTriggerCondition

public void updateTriggerCondition(ActionInfo triggerBasicAD)
Description copied from interface: TriggerConditionListener
This method is called by Guard upon receiving an obligation policy containing the specified triggerACD. The listener will now start monitoring agent actions in order to detect the occurrence of the trigger condition.

Specified by:
updateTriggerCondition in interface TriggerConditionListener
Parameters:
triggerBasicAD - BasicActionDescription describes the trigger condition the listener has registered for.

registerTriggerConditionListener

public void registerTriggerConditionListener(ActionInfo triggerAD,
                                             TriggerConditionListener listenerRef)
                                      throws TriggerConditionListenerRegistrationException
Specified by:
registerTriggerConditionListener in interface TriggerConditionListenersRegistry
Throws:
TriggerConditionListenerRegistrationException

deregisterTriggerConditionListener

public void deregisterTriggerConditionListener(TriggerConditionListener listenerRef)
                                        throws TriggerConditionListenerDeregistrationException
Specified by:
deregisterTriggerConditionListener in interface TriggerConditionListenersRegistry
Throws:
TriggerConditionListenerDeregistrationException

getTriggerConditions

public java.util.List<ActionInfo> getTriggerConditions(ActionInfo triggerAD)
Specified by:
getTriggerConditions in interface TriggerConditionListenersRegistry

updateTriggerListeners

public void updateTriggerListeners(java.util.List<PolicyMsg> addedPolicies)
Specified by:
updateTriggerListeners in interface TriggerConditionListenersRegistry

registerEnforcer

public boolean registerEnforcer(Enforcer enforcer,
                                java.util.List<java.lang.String> subjectIDs)
                         throws AlreadyRegisteredException,
                                DirectoryFailure
Throws:
AlreadyRegisteredException
DirectoryFailure

getAllPolicies

public java.util.List<PolicyInformation> getAllPolicies()

removeAllPolicies

public void removeAllPolicies()

getPolicyInformation

public PolicyInformation getPolicyInformation(java.lang.String policyID)

getPropretiesOfInterest

public java.util.List<java.lang.String> getPropretiesOfInterest()

getClassRangesOfInterest

public java.util.List<java.lang.String> getClassRangesOfInterest()

getActionSubclassesOfInterest

public java.util.List<java.lang.String> getActionSubclassesOfInterest()

updateSubpropertiesOfProperty

public void updateSubpropertiesOfProperty(java.lang.String propName,
                                          java.util.List<java.lang.String> subProps)

updateInstanceOfClass

public void updateInstanceOfClass(java.lang.String className,
                                  java.util.Collection<java.lang.String> instances)

updateActionSubclasses

public void updateActionSubclasses(java.lang.String className,
                                   java.util.Collection<java.lang.String> subclasses)

suspendObligationPolicy

public void suspendObligationPolicy(java.lang.String policyID)

reinstateObligationPolicy

public void reinstateObligationPolicy(java.lang.String policyID)

setGuardLoggingState

public void setGuardLoggingState(java.lang.Boolean logging)

isGuardLoggingActive

public java.lang.Boolean isGuardLoggingActive()

logEvent

public void logEvent(ActionInstanceDescription event)

getAllLogs

public java.util.List<ActionInstanceDescription> getAllLogs()

deleteAllLogs

public void deleteAllLogs()

getLogsforActionType

public java.util.List<ActionInstanceDescription> getLogsforActionType(java.lang.String actionType)

deleteLogsforActionType

public void deleteLogsforActionType(java.lang.String actionType)

getLogsforActor

public java.util.List<ActionInstanceDescription> getLogsforActor(java.lang.String actorID)

deleteLogsforActor

public void deleteLogsforActor(java.lang.String actorID)

getSpecifiedLogs

public java.util.List<ActionInstanceDescription> getSpecifiedLogs(java.lang.String actionType,
                                                                  java.lang.String actorID,
                                                                  java.lang.String startTime,
                                                                  java.lang.String endTime,
                                                                  java.lang.Boolean latest)

deleteSpecifiedLogs

public void deleteSpecifiedLogs(java.lang.String actionType,
                                java.lang.String actorID,
                                java.lang.String startTime,
                                java.lang.String endTime,
                                java.lang.Boolean latest)

getKAoSExtensionComponents

public KAoSExtensionComponent getKAoSExtensionComponents(java.lang.String repType,
                                                         java.lang.String associatedOntType)

invokeKAoSExtensionComponentMethod

public java.lang.Object invokeKAoSExtensionComponentMethod(java.lang.String repType,
                                                           java.lang.String associatedOntType,
                                                           java.lang.String methodName,
                                                           java.util.Vector args)
                                                    throws java.lang.Exception
Throws:
java.lang.Exception

removeKAoSExtensionComponent

public boolean removeKAoSExtensionComponent(java.lang.String repType,
                                            java.lang.String associatedOntType)

setKAoSExtensionComponent

public void setKAoSExtensionComponent(java.lang.String repType,
                                      java.lang.String associatedOntType,
                                      KAoSExtensionComponent extComp)

changeComponentEnabledStatus

public void changeComponentEnabledStatus(java.lang.String repType,
                                         java.lang.String associatedOntType,
                                         java.lang.Boolean state)

getComponentEnabledStatus

public java.lang.Boolean getComponentEnabledStatus(java.lang.String repType,
                                                   java.lang.String componentName)

getAllKAoSExtensionComponents

public java.util.List<KAoSExtensionComponent> getAllKAoSExtensionComponents(java.lang.String repType)

removeAllKAoSExtensionComponents

public void removeAllKAoSExtensionComponents(java.lang.String repType)

getRepositoryTableInformation

public java.util.Map<java.lang.String,java.lang.String> getRepositoryTableInformation(java.lang.String repType)

checkPermission

public void checkPermission(ActionInstanceDescription origActionDesc,
                            PolicyDecisionObserver pObserver)
                     throws KAoSSecurityException
Specified by:
checkPermission in interface PolicyChecking
Throws:
KAoSSecurityException

checkDeepPermission

public void checkDeepPermission(ActionInstanceDescription aid,
                                PolicyDecisionObserver pObserver)
                         throws ServiceFailure,
                                KAoSSecurityException
Specified by:
checkDeepPermission in interface PolicyChecking
Throws:
ServiceFailure
KAoSSecurityException

findPolicyDecision

public java.util.List<ActionInstanceDescription> findPolicyDecision(ActionInstanceDescription aid,
                                                                    PolicyDecisionObserver pObserver)
                                                             throws ObligationViolationException,
                                                                    KAoSSecurityException,
                                                                    ServiceFailure
Specified by:
findPolicyDecision in interface PolicyChecking
Throws:
ObligationViolationException
KAoSSecurityException
ServiceFailure

getObligationsForTriggerCondition

public java.util.List<ActionInstanceDescription> getObligationsForTriggerCondition(ActionInstanceDescription origActionDesc,
                                                                                   PolicyDecisionObserver observer)
                                                                            throws ObligationViolationException
Specified by:
getObligationsForTriggerCondition in interface PolicyChecking
Throws:
ObligationViolationException

getAllowableValuesForActionProperty

public java.util.Set getAllowableValuesForActionProperty(java.lang.String origPropertyName,
                                                         ActionInstanceDescription origActionDesc,
                                                         java.util.Set allTargetValues,
                                                         boolean tight,
                                                         PolicyDecisionObserver observer)
Specified by:
getAllowableValuesForActionProperty in interface PolicyAdvice

getAllowableValuesForActionProperty

public java.util.Set getAllowableValuesForActionProperty(java.lang.String propertyName,
                                                         ActionInstanceDescription actionDesc,
                                                         java.util.Set allTargetValues,
                                                         PolicyDecisionObserver observer)

getAllowableValuesForActionProperty

public java.util.Set getAllowableValuesForActionProperty(java.lang.String origPropertyName,
                                                         ActionInstanceDescription origActionDesc,
                                                         boolean tight,
                                                         PolicyDecisionObserver observer)
                                                  throws java.lang.IllegalArgumentException
Throws:
java.lang.IllegalArgumentException

getAllowableValuesForActionProperties

public java.util.Vector getAllowableValuesForActionProperties(java.util.Vector propertyNames,
                                                              ActionInstanceDescription actionDesc,
                                                              PolicyDecisionObserver observer)

getAllowableValuesForActionProperties

public java.util.Vector getAllowableValuesForActionProperties(java.util.Vector origPropertyNames,
                                                              ActionInstanceDescription origActionDesc,
                                                              boolean tight,
                                                              PolicyDecisionObserver observer)
Specified by:
getAllowableValuesForActionProperties in interface PolicyAdvice

getAllowableValuesForActionProperties

public java.util.Vector getAllowableValuesForActionProperties(ActionInstanceDescription origActionDesc,
                                                              PolicyDecisionObserver observer)
Specified by:
getAllowableValuesForActionProperties in interface PolicyAdvice

getForbiddenValuesForActionProperty

public java.util.Vector getForbiddenValuesForActionProperty(java.lang.String origPropertyName,
                                                            ActionInstanceDescription origActionDesc,
                                                            PolicyDecisionObserver observer)
Specified by:
getForbiddenValuesForActionProperty in interface PolicyAdvice

setGuardAppeal

public void setGuardAppeal(java.util.Vector actions)

resetGuardAppeal

public void resetGuardAppeal()

setPolicyBootstrapper

public void setPolicyBootstrapper(PolicyBootstrapper pb)

initExecEnvironment

protected boolean initExecEnvironment(java.util.List<java.lang.String> domainNames,
                                      KAoSServiceRoot sr,
                                      JasBean guardInitInfo,
                                      java.lang.Object infrastructureInfo,
                                      java.util.List<java.lang.String> controlledActorClasses,
                                      java.util.List<java.lang.String> controlledActionClasses,
                                      java.util.List serviceNames)

restoreState

public void restoreState(java.lang.String gpm,
                         KAoSServiceRoot sr,
                         JasBean guardInitInfo,
                         boolean connectToDS,
                         boolean connectToTransport)
                  throws GuardInstantiationException
Throws:
GuardInstantiationException

monitorAuthorizationFailure

protected void monitorAuthorizationFailure(ActionInstanceDescription origActionDesc)

getRepositoryManager

public KAoSExtensionComponentManager getRepositoryManager(java.lang.String repType)
Specified by:
getRepositoryManager in interface GuardManager

removeRepositoryManager

public KAoSExtensionComponentManager removeRepositoryManager(java.lang.String repType)
Specified by:
removeRepositoryManager in interface GuardManager

setRepositoryManager

public void setRepositoryManager(java.lang.String repType,
                                 KAoSExtensionComponentManager repManager)
Specified by:
setRepositoryManager in interface GuardManager

getAllRepositoryManagers

public java.util.Collection<KAoSExtensionComponentManager> getAllRepositoryManagers()
Specified by:
getAllRepositoryManagers in interface GuardManager

removeAllRepositoryManagers

public void removeAllRepositoryManagers()
Specified by:
removeAllRepositoryManagers in interface GuardManager

getPolicyDBManager

public PreComputedPolicyDBManager getPolicyDBManager()
Specified by:
getPolicyDBManager in interface GuardManager

getEventHistoryManager

public EventsHistoryManager getEventHistoryManager()
Specified by:
getEventHistoryManager in interface GuardManager

setPolicies

public void setPolicies(java.util.List<PolicyMsg> policies)
Description copied from interface: PolicyListener
Replace the current policy set with the given set

Specified by:
setPolicies in interface PolicyListener

getGuardStateFor

public java.lang.String getGuardStateFor()

saveState

public void saveState(java.lang.String fileName)