kaos.core.csi.registration
Interface DirectoryRegistration

All Known Subinterfaces:
Registration

public interface DirectoryRegistration

Defines the operations to register and deregister entities and entity hosting environments in the KAoS Directory Service and operations to modify the registration information.

Author:
KAoS Team $Revision: 1.18 $

Method Summary
 kaos.core.service.directory.KAoSAgentDescription createKAoSAgentDescription(java.lang.String guid, java.lang.String nickname, java.util.List<java.lang.String> domainNames, java.util.List<AgentCapability> agentCapabilities, java.lang.String transportName, JasBean agentInitInfo)
          Create an instance of the KAoSAgentDescription as simpler method createKAoSAgentDescription but additionally specifies agent capabilities
 kaos.core.service.directory.KAoSAgentDescription createKAoSAgentDescription(java.lang.String guid, java.lang.String nickname, java.util.List<java.lang.String> domainNames, java.lang.String transportName, JasBean agentInitInfo)
          Create an instance of the KAoSAgentDescription using the given parameters.
 void deregisterEntity(AgentDescription entityDescription)
          Deregister the entity described by the given AgentDescription from the KAoS Directory Service.
 void modifyEntityProperties(java.lang.String entityGUID, java.util.List<Property> properties)
          Modify properties of the entity identified by the given entityGUID.
 void registerDomain(java.lang.String domainName)
          Register domain with the given name in the KAoS Directory Service.
 void registerDomain(java.lang.String domainName, java.lang.String modality)
          Register domain with the given name in the KAoS Directory Service.
 void registerEntity(AgentDescription entityDescription, boolean guarded, boolean replace)
          Register the entity described by the given AgentDescription in the KAoS Directory Service.
 void registerEntityWithProperties(AgentDescription entityDescription, java.util.List<Property> properties, boolean guarded, boolean replace)
          Register the entity described as simpler method registerEntity but also register properties of this agent
 

Method Detail

registerEntity

void registerEntity(AgentDescription entityDescription,
                    boolean guarded,
                    boolean replace)
                    throws DirectoryFailure,
                           AlreadyRegisteredException,
                           kaos.policy.guard.GuardInstantiationException
Register the entity described by the given AgentDescription in the KAoS Directory Service.

Parameters:
entityDescription - AgentDescription is the JAS AgentDescription, whose subclasses describe the various types of entities to be registered in KAoS: agents, guards, domains, containers. Those entities are subjects to policies or potential subjects to policies, or the entities are using KAoS for messaging.
guarded - boolean indicating the guarded/unguarded status for agents and containers. If the entity is to be guarded, the implementation of this method will instantiate a guard, or check if a guard already exists and proceed with the registration via the guard.
replace - boolean indicating whether to replace existing AgentDescription.
Throws:
DirectoryFailure - if the connection to the DS cannot be established.
AlreadyRegisteredException - if the registering entity has been already registered in the DS (if the replace = false and there is already registration for the specified AgentDescription).
kaos.policy.guard.GuardInstantiationException

deregisterEntity

void deregisterEntity(AgentDescription entityDescription)
                      throws DirectoryFailure,
                             NotRegisteredException
Deregister the entity described by the given AgentDescription from the KAoS Directory Service.

Parameters:
entityDescription - AgentDescription of the entity to be deregistered.
Throws:
DirectoryFailure - if the connection to the DS cannot be established.
NotRegisteredException - if the entity to be deregistered has not been registered in the DS.

registerEntityWithProperties

void registerEntityWithProperties(AgentDescription entityDescription,
                                  java.util.List<Property> properties,
                                  boolean guarded,
                                  boolean replace)
                                  throws DirectoryFailure,
                                         AlreadyRegisteredException,
                                         kaos.policy.guard.GuardInstantiationException
Register the entity described as simpler method registerEntity but also register properties of this agent

Parameters:
properties - List of Property objects further describing the registering entity.
Throws:
DirectoryFailure
AlreadyRegisteredException
kaos.policy.guard.GuardInstantiationException

modifyEntityProperties

void modifyEntityProperties(java.lang.String entityGUID,
                            java.util.List<Property> properties)
                            throws DirectoryFailure,
                                   NotRegisteredException,
                                   kaos.core.service.directory.ModificationException
Modify properties of the entity identified by the given entityGUID.

Parameters:
entityGUID - String containing the entity GUID.
properties - List of Properties to be modified. Each Property contains the name, value, value description, modification type (add/remove/set, etc), modification result. Refer to the Property and ModificationResult interfaces for detailed description.
Throws:
DirectoryFailure - if the connection to the DS cannot be established.
NotRegisteredException - if the entity whose properties are to be modified has not been registered in the DS.
kaos.core.service.directory.ModificationException - if one or more property update failed.

createKAoSAgentDescription

kaos.core.service.directory.KAoSAgentDescription createKAoSAgentDescription(java.lang.String guid,
                                                                            java.lang.String nickname,
                                                                            java.util.List<java.lang.String> domainNames,
                                                                            java.lang.String transportName,
                                                                            JasBean agentInitInfo)
Create an instance of the KAoSAgentDescription using the given parameters.

Parameters:
guid - String containing the globally unique identifier for the agent, or null. If null is passed, then the Agent Naming Service will create the identifier.
nickname - String containing agent's nickname.
domainNames - Vector containing the names of the domains the agent will become a member of.
transportName - String specifying the name of the transport the agent wants to use, or null. If null is specified, then the Locators will be empty.

createKAoSAgentDescription

kaos.core.service.directory.KAoSAgentDescription createKAoSAgentDescription(java.lang.String guid,
                                                                            java.lang.String nickname,
                                                                            java.util.List<java.lang.String> domainNames,
                                                                            java.util.List<AgentCapability> agentCapabilities,
                                                                            java.lang.String transportName,
                                                                            JasBean agentInitInfo)
Create an instance of the KAoSAgentDescription as simpler method createKAoSAgentDescription but additionally specifies agent capabilities

Parameters:
agentCapability - List of AgentCapabilities describing agent

registerDomain

void registerDomain(java.lang.String domainName)
                    throws DirectoryFailure,
                           AlreadyRegisteredException
Register domain with the given name in the KAoS Directory Service.

Parameters:
domainName - String containing the name of domain to register.
Throws:
DirectoryFailure - if the connection to the DS cannot be established.
AlreadyRegisteredException - if the registering domain has been already registered in the DS

registerDomain

void registerDomain(java.lang.String domainName,
                    java.lang.String modality)
                    throws DirectoryFailure,
                           AlreadyRegisteredException
Register domain with the given name in the KAoS Directory Service.

Parameters:
domainName - String containing the name of domain to register.
modality - String containing the default policy authorization result if no policies apply [PolicyConcepts.PosAuthorizationPolicy()=laissez-faire or PolicyConcepts.NegAuthorizationPolicy()=tyrannical].
Throws:
DirectoryFailure - if the connection to the DS cannot be established.
AlreadyRegisteredException - if the registering domain has been already registered in the DS


Copyright © 2006 IHMC All Rights Reserved.