EAC Toolkit 3.2.1

com.endeca.soleng.eac.toolkit.base
Class Provisionable

java.lang.Object
  extended by com.endeca.soleng.eac.toolkit.base.EacElement
      extended by com.endeca.soleng.eac.toolkit.base.Provisionable
Direct Known Subclasses:
Application, Component, CustomComponent, Host, Script

public abstract class Provisionable
extends EacElement

Object from which all provisioned EAC objects extend. This class contains logic associated with accessing the EAC's provisioning service and defines five methods that all provisioned objects should implement.

Author:
sshusteff

Field Summary
 
Fields inherited from class com.endeca.soleng.eac.toolkit.base.EacElement
appName, dataPrefix, eacHost, eacPort, elementId, lockManager, logDir, sslEnabled, workingDir
 
Constructor Summary
Provisionable()
           
 
Method Summary
 com.endeca.eac.client.ApplicationType getAppDefinitionFromEac()
          Retrieves the application definition from the EAC.
 com.endeca.eac.client.ApplicationType getCachedAppDefinition()
           
 com.endeca.eac.client.ProvisioningPort getProvisioningPort()
          Retrieves the provisioning port that the application will use to send provisioning commands to the EAC.
 void invalidateCachedAppDefinition()
           
abstract  boolean isDefined()
          Extending objects will implement this method, returning true if the provisioned object's definition is set in the EAC.
abstract  boolean isDefinitionChanged()
          Extending objects will implement this method, returning true if the provisioned object's definition has changed in the EAC.
abstract  void removeDefinition()
          Extending objects will implement this method to remove the definition of the provisioned object from the EAC.
 void setCachedAppDefinition(com.endeca.eac.client.ApplicationType cachedAppDefinition)
           
abstract  void setDefinition()
          Extending objects will implement this method to add the definition of the provisioned object to the EAC.
abstract  void updateDefinition()
          Extending objects will implement this method to update the definition of the provisioned object in the EAC.
 
Methods inherited from class com.endeca.soleng.eac.toolkit.base.EacElement
getAppName, getDataPrefix, getEacHost, getEacPort, getElementId, getLockManager, getLogDir, getWorkingDir, isSslEnabled, setAppName, setDataPrefix, setEacHost, setEacPort, setElementId, setLockManager, setLogDir, setSslEnabled, setWorkingDir
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Provisionable

public Provisionable()
Method Detail

isDefinitionChanged

public abstract boolean isDefinitionChanged()
                                     throws EacCommunicationException,
                                            EacProvisioningException
Extending objects will implement this method, returning true if the provisioned object's definition has changed in the EAC.

Returns:
True if the object's definition has changed.
Throws:
EacCommunicationException - If a communication error occurs while retrieving the provisioning port.
EacProvisioningException - If an error occurs while trying to retrieve the object definition from the EAC.

isDefined

public abstract boolean isDefined()
                           throws EacCommunicationException,
                                  EacProvisioningException
Extending objects will implement this method, returning true if the provisioned object's definition is set in the EAC.

Returns:
True if the object is defined.
Throws:
EacCommunicationException - If a communication error occurs while retrieving the provisioning port.
EacProvisioningException - If an error occurs while trying to retrieve the object definition from the EAC.

updateDefinition

public abstract void updateDefinition()
                               throws EacCommunicationException,
                                      EacComponentControlException,
                                      EacProvisioningException,
                                      AppConfigurationException
Extending objects will implement this method to update the definition of the provisioned object in the EAC.

Throws:
EacCommunicationException - If a communication error occurs while retrieving the provisioning port.
EacComponentControlException - If an error occurs while trying to start, stop or check the status of a component.
AppConfigurationException - If an object's configuration is invalid.
EacProvisioningException - If an error occurs while provisioning the object or an associated object.

removeDefinition

public abstract void removeDefinition()
                               throws EacCommunicationException,
                                      EacComponentControlException
Extending objects will implement this method to remove the definition of the provisioned object from the EAC.

Throws:
EacCommunicationException - If a communication error occurs while retrieving the provisioning port.
EacComponentControlException - If an error occurs while trying to start, stop or check the status of a component.

setDefinition

public abstract void setDefinition()
                            throws EacCommunicationException
Extending objects will implement this method to add the definition of the provisioned object to the EAC.

Throws:
EacCommunicationException - If a communication error occurs while retrieving the provisioning port.

getAppDefinitionFromEac

public com.endeca.eac.client.ApplicationType getAppDefinitionFromEac()
                                                              throws EacCommunicationException
Retrieves the application definition from the EAC. No finer-grained access point is provided for provisioning, so checking the definition of any host, component, script, etc. will require retrieving the individual object's definition from this app definition.

Returns:
Returns the ApplicationType app provisioning retrieved from the EAC.
Throws:
EacCommunicationException - If a communication error occurs while retrieving the provisioning port.

getProvisioningPort

public com.endeca.eac.client.ProvisioningPort getProvisioningPort()
                                                           throws EacCommunicationException
Retrieves the provisioning port that the application will use to send provisioning commands to the EAC.

Returns:
Returns a provisioning port.
Throws:
EacCommunicationException - If a communication error occurs while retrieving the provisioning port.

getCachedAppDefinition

public com.endeca.eac.client.ApplicationType getCachedAppDefinition()

setCachedAppDefinition

public void setCachedAppDefinition(com.endeca.eac.client.ApplicationType cachedAppDefinition)

invalidateCachedAppDefinition

public void invalidateCachedAppDefinition()

EAC Toolkit 3.2.1

Copyright © 2011 Endeca Technologies, Inc. All Rights Reserved.
@VERSION
PRODUCT: EAC Toolkit (eacToolkit)
VERSION: 3.2.1
BUILD:   NONE
ARCH_OS: n/a
DATE:    2011-11-10T16:21:05-0500