atg.deployment.server
Class DeploymentServer

java.lang.Object
  extended by atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
      extended by atg.nucleus.GenericService
          extended by atg.deployment.server.DeploymentServer
All Implemented Interfaces:
atg.deployment.common.Constants, DeploymentEventSender, atg.deployment.DeploymentConstants, NameContextBindingListener, NameContextElement, NameResolver, AdminableService, ApplicationLogging, atg.nucleus.logging.ApplicationLoggingSender, atg.nucleus.logging.TraceApplicationLogging, VariableArgumentApplicationLogging, ComponentNameResolver, Service, ServiceListener, java.util.EventListener

public class DeploymentServer
extends GenericService
implements atg.deployment.common.Constants, DeploymentEventSender

The DeploymentServer is the starting point of the publishing deployment API and represents the core controller of all deployment operations. Access to the deployment topology via the current Target instances is obtained through the DeploymentServer. Additionally, all server-side options are configured through the DeploymentServer.

The following properties are fairly standard and most likely never need to be changed:

The following properties are customizable and affect various aspects of the deployment process. Their default values are most likely fine in most cases, but familiarization with these properties is suggested to see if any are of use. Essentially the DeploymentServer provides access to the deployment topology, i.e. the list of deployment targets and the agents that comprise those targets. Currently the only released means of configuring the deployment topology is through the deployment admin UI. Introspection of the topology begins with the list of known Targets returned from the getTargets() method. Each Target in turn provides access to the agents that make up the target via Target.getAgents() which returns a list of AgentRef objects. So the progression to run through the topology on a whole becomes:
  Target[] targets = server.getTargets();
  for (int tIdx = 0; targets != null && tIdx < targets.length; tIdx++)
    {
      AgentRef[] agents = t.getAgents();
      for (int aIdx = 0; agents != null && aIdx < agents.length; aIdx++)
        {
          AgentRef a = agents[aIdx];
        }
    }
 
A Deployment is specific to the Target it affects and so is only accessible from the Target class. See the Target class for how to access deployments.

The DeploymentServer is the server-side DeploymentEventSender though which custom event listeners can be registered and operate on running and completing deployments.

See Also:
Target, Deployment, DeploymentEventSender

Field Summary
static java.lang.String CLASS_VERSION
          Class version string
 
Fields inherited from class atg.nucleus.GenericService
SERVICE_INFO_KEY
 
Fields inherited from interface atg.deployment.common.Constants
ACCEPTED_FOR_TARGET, APPLY_TRANSACTION_SIZE, APPROVED_FOR_TARGET, DEPLOYED_TO_TARGET, DEPLOYMENT_PROTOCOL_VERSION, DEPLOYMENT_TYPE_BACK_DEPLOY, DEPLOYMENT_TYPE_DEPLOY_TO_INITIAL, DEPLOYMENT_TYPE_INIT_TARGET, DEPLOYMENT_TYPE_ONE_OFF_DEPLOY, DEPLOYMENT_TYPE_REVERT_DEPLOY, DEPLOYMENT_TYPE_STANDARD_DEPLOY, DPLY_CMD_ACTIVE_APPLY_COMMITTED, DPLY_CMD_AFFECTED_TYPES, DPLY_CMD_ASSET_DESTINATIONS, DPLY_CMD_CLUSTER_ID, DPLY_CMD_COMMAND, DPLY_CMD_DATASTORES_TO_SWITCH, DPLY_CMD_DEPLOYMENT_END_TIME, DPLY_CMD_DEPLOYMENT_ID, DPLY_CMD_DEPLOYMENT_START_TIME, DPLY_CMD_EXCLUDE_ASSET, DPLY_CMD_FIRST_APPLY, DPLY_CMD_FROM_SNAPSHOT, DPLY_CMD_INCLUDE_ASSET, DPLY_CMD_INSTALL_BYTES, DPLY_CMD_INSTALL_NUM_BYTES, DPLY_CMD_MANIFEST_ID, DPLY_CMD_MODE, DPLY_CMD_ONEOFF, DPLY_CMD_PRINCIPAL, DPLY_CMD_PROJECTS, DPLY_CMD_PROTOCOL_VERSION, DPLY_CMD_RECOVERING, DPLY_CMD_REFRESH_REPOSITORIES, DPLY_CMD_RESUME, DPLY_CMD_ROLLBACK, DPLY_CMD_SCIEVENTS, DPLY_CMD_SERVER_NAME, DPLY_CMD_SET_AGENT_STATUS, DPLY_CMD_SWITCH_FIRST, DPLY_CMD_SWITCH_LIVE, DPLY_CMD_TO_SNAPSHOT, DPLY_CMD_TX_SIZE, DPLY_CMD_TYPE, DPLY_CMD_USER_ID, DPLY_CMD_VERIFY_FILE_CHECKSUM, DPLY_CMD_VERIFY_FILE_COMPONENT_PATH, DPLY_CMD_VERIFY_FILE_LAST_MODIFIED, DPLY_CMD_VERIFY_FILE_PATH, DPLY_CMD_VERIFY_FILE_SIZE, DPLY_CMD_VFS_ORDER, HIDDEN_FROM_TARGET, INIT_BRANCH_LOCK_NAME, ONE_OFF, REMOTE_SWITCH_EXCEPTION, REMOTE_SWITCH_SUCCESS, RENOUNCED_FOR_TARGET, ROLLBACK_DEPLOYMENT_FAILURE, STRICT_OP_DEFAULT, STRICT_OP_OVERRIDE_FALSE, STRICT_OP_OVERRIDE_TRUE, TARGET_INITIAL_STATE_PROJECT_ID, TOPOLOGY_AGENT_PRINCIPAL_ALL, TOPOLOGY_AGENT_PRINCIPAL_NONE, TOPOLOGY_AGENT_PRINCIPAL_REPOSITORY, TOPOLOGY_AGENT_PRINCIPAL_VFS, TOPOLOGY_DEPLOY_TYPE_ONE_OFF, TOPOLOGY_DEPLOY_TYPE_WORKFLOW, TOPOLOGY_TRANSPORT_JNDI, TOPOLOGY_TRANSPORT_RMI, WORKFLOW
 
Fields inherited from interface atg.deployment.DeploymentConstants
DEPLOYABLE_ATTRIBUTE_NAME, DEPLOYMENT_SYSTEM_VERSION, JAR_ATTR_MAN_FILE, JAR_ATTR_MAN_ID, JAR_ATTR_VERSION, MODE_ONLINE, MODE_SWITCH, PM_DEP, REFERENCES_ATTRIBUTE_NAME, TYPE_FULL, TYPE_INCREMENTAL
 
Fields inherited from interface atg.nucleus.logging.TraceApplicationLogging
DEFAULT_LOG_TRACE_STATUS
 
Fields inherited from interface atg.nucleus.logging.ApplicationLogging
DEFAULT_LOG_DEBUG_STATUS, DEFAULT_LOG_ERROR_STATUS, DEFAULT_LOG_INFO_STATUS, DEFAULT_LOG_WARNING_STATUS
 
Constructor Summary
DeploymentServer()
          Empty Constructor.
 
Method Summary
 void addDeploymentEventListener(DeploymentEventListener pListener)
          Adds the listener.
 void addTargetInitializationEventListener(atg.deployment.common.event.TargetInitializationEventListener pListener)
          Adds the listener.
 void addTopologyChangeEventListener(atg.deployment.common.event.TopologyChangeEventListener pListener)
          Adds the listener.
 java.lang.String clusterName()
          Returns a unique identifier for this CA server or, if applicable, a uniquie identifier for the cluster of CA servers it is a part of.
protected  javax.servlet.Servlet createAdminServlet()
          Creates and returns a new Servlet that will administer this service.
 void doStartService()
          Performs any necessary initializations to start up service.
 void doStopService()
          Performs tasks required to shut down service.
 void exportTopologyToXML(java.io.OutputStream pOutStream)
          Export topology into an XML file which can later be imported using importTopologyFromXML method.
 void fireDeploymentEvent(DeploymentEvent pEvent)
          Fires the given deployment event to the configured listeners.
 void fireTopologyChangedEvent()
          Fires the given ToplogyChangeEvent to the configured listeners.
 java.lang.String generateManifest(java.lang.String pProjectID)
          Builds a full deployment manifest for the specified previously deployed Project.
 java.lang.String[] getActivateVFSOrder()
          An array of VFS service names in the order that they should have update() called on them by responsible agents during the deployment activation phase.
 boolean getActivelyPollForDeploymentCompletion()
          Determines whether or not the DistributedDeploymentAdapater actively polls the DeploymentManager to determine DAF deployment completion, or if it passively waits for the deployment completion event from the DeploymentManager.
 atg.deployment.server.AgentStatusCache getAgentStatusCache()
          Cache that holds agent status information.
If this cache is set, it will be used to hold information on the status of agents, to prevent pages and similar from making too many RMI calls to agents.
 boolean getAllowMissingNonEssentialAgents()
          Whether or not to allow non-essential agents to be inaccessible during a deployment.
 int getApplyTransactionBatchSize()
          The number of asset operations to group into a transaction during manifest application on target agents.
 int getAutoRollbackCommittedThresholdCount()
          The maximum number of committed items in a deployment allowable before an auto-rollback is initiated.
 boolean getAutoUpgradeIncrementalDeployments()
          For a target which is not incrementally deployable, should an incremental deployment be automatically upgraded to a full deployment.
 atg.service.clustername.ClusterName getClusterName()
          The ClusterName component, which is responsible for maintaining a unique name for this CA server, and if applicable, the cluster of CA servers it is a part of.
 int getCountOfPendingDeployments()
          Find the count of pending deployments for all the targets
 int getCountOfPendingDeploymentsForProjects(java.lang.String[] pProjectIDs)
          Returns the cound of pending deployments for the projects corresponding to the given set of project IDs.
 int getCountOfQueuedDeployments()
          Find the count of queued deployments for all the targets
 int getCountOfScheduledDeployments()
          Find the count of scheduled deployments for all the targets
 int getCreateManifestTransactionBatchSize()
          Get property createManifestTransactionBatchSize.
 java.io.File getDataDirectory()
          The directory where persistent status and other data is stored.
 java.util.Set<Target> getDeployedTargets(Project pProject)
          Get a set of targets to which the specified project has been deployed.
 Deployment getDeploymentByID(java.lang.String pDeploymentID)
          Returns the ID'd deployment.
 DeploymentEventListener[] getDeploymentEventListeners()
          Returns an array of the list of DeploymentEventListener.
 atg.deployment.server.DeploymentFactory getDeploymentFactory()
          Get the factory that can be used to create Deployment instances.
 atg.deployment.server.queue.DeploymentFulfiller getDeploymentFulfiller()
          Get property deploymentFulfiller
 java.lang.String getDeploymentPercentageComplete(java.lang.String pPubDeploymentId)
          Convenience method to get the percentage completed for the specified deployment ID.
 int getDeploymentPollSleepTime()
          Number of seconds to sleep during agent manifest application poll phase.
 atg.deployment.server.DeploymentProgressMap getDeploymentProgress()
          A property used to cache the percentage amount that a deployment has completed.
 atg.deployment.server.queue.DeploymentQueueManager getDeploymentQueueManager()
          Get the DeploymentQueueManager used to ensure that only one instance of the service is running at any given time.
 Deployment[] getDeploymentsForProject(Project pProject)
          Returns the list of all deployments, pending or currently running, that include the given Project in the list of project IDs being deployed.
 Deployment[] getDeploymentsForProjects(Project[] pProjects)
          Returns the list of all deployments, pending or currently running, that include the given Projects in the list of project IDs being deployed.
 Target[] getDeploymentTargets()
          This method calls getTargets() to overcome an issue with JavaBeans and reflection.
 int getDeploymentThreadPriorityDelta()
          A modifier to increase or decrease deployment thread priority.
 int getInstallBufferSize()
          Size of the write buffer for remote manifest installs.
 java.util.Set<ManagedElement> getLockedAssets(java.lang.String pCurrentProjectId, java.lang.String pLockingProjectId)
          Returns a set of assets contained in the project whose ID is pCurrentProjectId, and is locked by the project whose ID is pLockingProjectId.
 atg.deployment.manifest.ManifestManager getManifestManager()
          The ManifestManager used to manage local manifest files.
 java.util.List getOneOffTargets()
          Returns a list of the live targets defined in the deployment deployment topology as one-off targets.
 Deployment[] getPendingDeployments(int pStartIndex, int pCount)
          Returns the list of pending Deployments as an array which contains queued deployments for each target first (since they cannot be ordered based on any criteria) followed by scheduled deployments for all targets ordered by schedule of execution.
 Deployment[] getPendingDeploymentsForProject(java.lang.String pProjectID)
          Returns an array of pending deployments for the project with specified project ID.
 Deployment[] getPendingDeploymentsForProjects(java.lang.String[] pProjectIDs)
          Returns an array of pending deployments for the projects corresponding to the given set of project IDs.
 int getProgressUpdatePollSleepTime()
          Number of seconds bewteen deployment progress bar updates.
static java.lang.String[] getProjectIDs(Project[] pProjects)
          conver array of projects to array of project IDs
 java.lang.String getPublishingRepositoryServiceName()
          The Nucleus service name for the publishing repository where Editions are stored.
 Deployment[] getQueuedDeployments(int pStartIndex, int pCount)
          Returns the list of QUEUED Deployments as an array ordered by schedule of execution for all the targets know to this DeploymentServer.
 java.util.Map getRepositoryDestinationMappings()
          A map of source to destinitation repository path to be used for deployment activation.
 boolean getReuseFullDeploymentManifests()
          Whether or not to preserve and reuse full deployment manifest files.
 atg.server.rmi.RmiServer getRmiServer()
          The RmiServer for this Dynamo that exports RMI accessible components.
 Deployment[] getScheduledDeployments(int pStartIndex, int pCount)
          Returns the list of SCHEDULED Deployments as an array ordered by schedule of execution.
 atg.deployment.sci.SelectiveCacheInvalidationServerService getSCIServerService()
          Get property SCIServerService
 atg.service.ServerName getServerNameService()
          Service that provides a name for this server instance.
 Target getTargetByID(java.lang.String pTargetID)
          Returns the ID'd target.
 Target getTargetByName(java.lang.String pTargetName)
          Returns the named target.
 atg.deployment.common.event.TargetInitializationEventListener[] getTargetInitializationEventListeners()
          Returns an array of the list of vEventListener.
 Target[] getTargets()
          Returns an array of the deployment targets defined in the deployment topology.
 Target[] getTargets(int pTargetType)
          Returns an array of all the live deployment targets defined in the deployment topology for the specified target type.
 atg.deployment.common.event.TopologyChangeEventListener[] getTopologyChangeEventListeners()
          Returns an array of the list of TopologyChangeEventListener.
 atg.xml.XMLFile getTopologyDefinitionFile()
          Deprecated.  
 atg.deployment.server.topology.TopologyManager getTopologyManager()
          TopologyManger to use for reading and managing topology definition.
 int getTopologyVersion()
          The version of the topology that this server last initialized with.
 javax.transaction.TransactionManager getTransactionManager()
          Transaction manager to use for various operations.
 VersionManager getVersionManager()
          The version manager that keeps all versions for all versioned data stores.
 void importTopologyFromXML(java.io.InputStream pDefinitionStream)
          Imports target definitons from the topology definition XML file given as an input stream Only "new" targets will be imported, that is if a target definition found in the XML file conflicts in name with a target definition found in the topology (surrogate or primary) then the definition is not imported.
 boolean isAutoRollbackDeploymentOnFailure()
          Flag which determines if an automatic rollback deployment should be attempted on a DAF deployment failure.
 boolean isCleanStart()
          A property set at service start up time, determining whether or not the DeploymentServer was started cleanly.
 boolean isClearDefunctReferences()
          This is a flag which, if true indicates that defunct references should be cleared during deployment.
 boolean isDeleteManifests()
          Whether or not manifests should be deleted on completed deployment removal.
 boolean isDisplayAutoRollbackFailures()
           
 boolean isExpertAdmin()
          Whether or not to turn on "expert" features in the AdminServlet.
 boolean isImportAndInitializeTopologyOnStartup()
          Get property importAndInitializeTopologyOnStartup
 boolean isSkipUndeployableRepositories()
          Test property skipUndeployableRepositories.
 boolean isUseDafDeployment()
           
 void reinitializeTopology()
          Recreates the "live" topology from the configured topology.
 void removeDeploymentEventListener(DeploymentEventListener pListener)
          Removes the listener.
 void removeTargetInitializationEventListener(atg.deployment.common.event.TargetInitializationEventListener pListener)
          Removes the listener.
 void removeTopologyChangeEventListener(atg.deployment.common.event.TopologyChangeEventListener pListener)
          Removes the listener.
 void setActivateVFSOrder(java.lang.String[] pActivateVFSOrder)
          An array of VFS service names in the order that they should have update() called on them by responsible agents during the deployment activation phase.
 void setActivelyPollForDeploymentCompletion(boolean pActivelyPollForDeploymentCompletion)
          Determines whether or not the DistributedDeploymentAdapater actively polls the DeploymentManager to determine DAF deployment completion, or if it passively waits for the deployment completion event from the DeploymentManager.
 void setAgentStatusCache(atg.deployment.server.AgentStatusCache pAgentStatusCache)
          Cache that holds agent status information.
If this cache is set, it will be used to hold information on the status of agents, to prevent pages and similar from making too many RMI calls to agents.
 void setAllowMissingNonEssentialAgents(boolean pAllowMissingNonEssentialAgents)
          Whether or not to allow non-essential agents to be inaccessible during a deployment.
 void setApplyTransactionBatchSize(int pApplyTransactionBatchSize)
          The number of asset operations to group into a transaction during manifest application on target agents.
 void setAutoRollbackCommittedThresholdCount(int pAutoRollbackCommittedThresholdCount)
          The maximum number of committed items in a deployment allowable before an auto-rollback is initiated.
 void setAutoRollbackDeploymentOnFailure(boolean pAutoRollbackDeploymentOnFailure)
          Flag which determines if an automatic rollback deployment should be attempted on a DAF deployment failure.
 void setAutoUpgradeIncrementalDeployments(boolean pAutoUpgradeIncrementalDeployments)
          For a target which is not incrementally deployable, should an incremental deployment be automatically upgraded to a full deployment.
 void setCleanStart(boolean pCleanStart)
          A property set at service start up time, determining whether or not the DeploymentServer was started cleanly.
 void setClearDefunctReferences(boolean pClearDefunctReferences)
          This is a flag which, if true, indicates that defunct references should be cleared during deployment.
 void setClusterName(atg.service.clustername.ClusterName pClusterName)
          The ClusterName component, which is responsible for maintaining a unique name for this CA server, and if applicable, the cluster of CA servers it is a part of.
 void setCreateManifestTransactionBatchSize(int pCreateManifestTransactionBatchSize)
          Set property createManifestTransactionBatchSize.
 void setDataDirectory(java.io.File pDataDirectory)
          The directory where persistent status and other data is stored.
 void setDeleteManifests(boolean pDeleteManifests)
          Whether or not manifests should be deleted on completed deployment removal.
 void setDeploymentFactory(atg.deployment.server.DeploymentFactory pDeploymentFactory)
          Set a factory for creating instances of Deployment class.
 void setDeploymentFulfiller(atg.deployment.server.queue.DeploymentFulfiller pDeploymentFulfiller)
          Set property deploymentFulfiller
 void setDeploymentPercentageComplete(java.lang.String pPubDeploymentId, java.lang.String pPercentageComplete)
          Convenience method to set the percentage completed for the specified deployment ID.
 void setDeploymentPollSleepTime(int pDeploymentPollSleepTime)
          Number of seconds to sleep during agent manifest application poll phase.
 void setDeploymentProgress(atg.deployment.server.DeploymentProgressMap pDeploymentProgress)
          A property used to cache the percentage amount that a deployment has completed.
 void setDeploymentQueueManager(atg.deployment.server.queue.DeploymentQueueManager pDeploymentQueueManager)
          Set the DeploymentQueueManager used to ensure that only one instance of the service is running at any given time.
 void setDeploymentThreadPriorityDelta(int pDeploymentThreadPriorityDelta)
          A modifier to increase or decrease deployment thread priority.
 void setDisplayAutoRollbackFailures(boolean pDisplayAutoRollbackFailures)
           
 void setExpertAdmin(boolean pExpertAdmin)
          Whether or not to turn on "expert" features in the AdminServlet.
 void setImportAndInitializeTopologyOnStartup(boolean pImportAndInitializeTopologyOnStartup)
          Set property importAndInitializeTopologyOnStartup
 void setInstallBufferSize(int pInstallBufferSize)
          Size of the write buffer for remote manifest installs.
 void setManifestManager(atg.deployment.manifest.ManifestManager pManifestManager)
          The ManifestManager used to manage local manifest files.
 void setProgressUpdatePollSleepTime(int pProgressUpdatePollSleepTime)
          Number of seconds bewteen deployment progress bar updates.
 void setPublishingRepositoryServiceName(java.lang.String pPublishingRepositoryServiceName)
          The Nucleus service name for the publishing repository where Editions are stored.
 void setRepositoryDestinationMappings(java.util.Map pRepositoryDestinationMappings)
           
 void setReuseFullDeploymentManifests(boolean pReuseFullDeploymentManifests)
          Whether or not to preserve and reuse full deployment manifest files.
 void setRmiServer(atg.server.rmi.RmiServer pRmiServer)
          The RmiServer for this Dynamo that exports RMI accessible components.
 void setSCIServerService(atg.deployment.sci.SelectiveCacheInvalidationServerService pSCIServerService)
          Set property SCIServerService
 void setServerNameService(atg.service.ServerName pServerNameService)
          Service that provides a name for this server instance.
 void setSkipUndeployableRepositories(boolean pSkipUndeployableRepositories)
          Set property skipUndeployableRepositories.
 void setTopologyDefinitionFile(atg.xml.XMLFile pTopologyDefinitionFile)
          Deprecated.  
 void setTopologyManager(atg.deployment.server.topology.TopologyManager pTopologyManager)
          TopologyManger to use for reading and managing topology definition.
 void setTransactionManager(javax.transaction.TransactionManager pTransactionManager)
          Transaction manager to use for various operations.
 void setUseDafDeployment(boolean pUseDafDeployment)
           
 void setVersionManager(VersionManager pVersionManager)
          The version manager that keeps all versions for all versioned data stores.
 void updateDeploymentProgress(java.lang.String pDafDeploymentId, int pDeploymentMode, boolean pIsDeploymentFirstPass)
          Updates the DeploymentProgressMap, calculating an updated percentage complete for a given deployment.
 
Methods inherited from class atg.nucleus.GenericService
addLogListener, getAbsoluteName, getAdminServlet, getLoggingForVlogging, getLogListenerCount, getLogListeners, getName, getNameContext, getNucleus, getRoot, getServiceConfiguration, getServiceInfo, isLoggingDebug, isLoggingError, isLoggingInfo, isLoggingTrace, isLoggingWarning, isRunning, logDebug, logDebug, logDebug, logError, logError, logError, logInfo, logInfo, logInfo, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, nameContextElementBound, nameContextElementUnbound, removeLogListener, reResolveThis, resolveName, resolveName, resolveName, resolveName, sendLogEvent, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning, setNucleus, setServiceInfo, startService, stopService
 
Methods inherited from class atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CLASS_VERSION

public static java.lang.String CLASS_VERSION
Class version string

Constructor Detail

DeploymentServer

public DeploymentServer()
Empty Constructor. Services tend to be configured via properties and then "started" via the NucleusService interface.

Method Detail

isUseDafDeployment

public boolean isUseDafDeployment()

setUseDafDeployment

public void setUseDafDeployment(boolean pUseDafDeployment)

setSCIServerService

public void setSCIServerService(atg.deployment.sci.SelectiveCacheInvalidationServerService pSCIServerService)
Set property SCIServerService

Parameters:
pSCIServerService - new value to set

getSCIServerService

public atg.deployment.sci.SelectiveCacheInvalidationServerService getSCIServerService()
Get property SCIServerService

Returns:
property SCIServerService

getDeploymentProgress

public atg.deployment.server.DeploymentProgressMap getDeploymentProgress()
A property used to cache the percentage amount that a deployment has completed.


setDeploymentProgress

public void setDeploymentProgress(atg.deployment.server.DeploymentProgressMap pDeploymentProgress)
A property used to cache the percentage amount that a deployment has completed.


getProgressUpdatePollSleepTime

public int getProgressUpdatePollSleepTime()
Number of seconds bewteen deployment progress bar updates.


setProgressUpdatePollSleepTime

public void setProgressUpdatePollSleepTime(int pProgressUpdatePollSleepTime)
Number of seconds bewteen deployment progress bar updates.


getActivelyPollForDeploymentCompletion

public boolean getActivelyPollForDeploymentCompletion()
Determines whether or not the DistributedDeploymentAdapater actively polls the DeploymentManager to determine DAF deployment completion, or if it passively waits for the deployment completion event from the DeploymentManager.


setActivelyPollForDeploymentCompletion

public void setActivelyPollForDeploymentCompletion(boolean pActivelyPollForDeploymentCompletion)
Determines whether or not the DistributedDeploymentAdapater actively polls the DeploymentManager to determine DAF deployment completion, or if it passively waits for the deployment completion event from the DeploymentManager.


isAutoRollbackDeploymentOnFailure

public boolean isAutoRollbackDeploymentOnFailure()
Flag which determines if an automatic rollback deployment should be attempted on a DAF deployment failure.


setAutoRollbackDeploymentOnFailure

public void setAutoRollbackDeploymentOnFailure(boolean pAutoRollbackDeploymentOnFailure)
Flag which determines if an automatic rollback deployment should be attempted on a DAF deployment failure.


getAutoRollbackCommittedThresholdCount

public int getAutoRollbackCommittedThresholdCount()
The maximum number of committed items in a deployment allowable before an auto-rollback is initiated. If the number of committed items exceeds this property, an auto-rollback deployment is not initiated.


setAutoRollbackCommittedThresholdCount

public void setAutoRollbackCommittedThresholdCount(int pAutoRollbackCommittedThresholdCount)
The maximum number of committed items in a deployment allowable before an auto-rollback is initiated. If the number of committed items exceeds this property, an auto-rollback deployment is not initiated.


setCleanStart

public void setCleanStart(boolean pCleanStart)
A property set at service start up time, determining whether or not the DeploymentServer was started cleanly.


isCleanStart

public boolean isCleanStart()
A property set at service start up time, determining whether or not the DeploymentServer was started cleanly.


setServerNameService

public void setServerNameService(atg.service.ServerName pServerNameService)
Service that provides a name for this server instance.
The server name is used to uniquely identify the server instance this deployment server is a part of.
This property is the Nucleus pathname of the service and not the service itself.


getServerNameService

public atg.service.ServerName getServerNameService()
Service that provides a name for this server instance. The server name is used to uniquely identify the server instance this deployment server is a part of.
This property is the Nucleus pathname of the service and not the service itself.


setTransactionManager

public void setTransactionManager(javax.transaction.TransactionManager pTransactionManager)
Transaction manager to use for various operations.


getTransactionManager

public javax.transaction.TransactionManager getTransactionManager()
Transaction manager to use for various operations.


setVersionManager

public void setVersionManager(VersionManager pVersionManager)
The version manager that keeps all versions for all versioned data stores.


getVersionManager

public VersionManager getVersionManager()
The version manager that keeps all versions for all versioned data stores.


setRmiServer

public void setRmiServer(atg.server.rmi.RmiServer pRmiServer)
The RmiServer for this Dynamo that exports RMI accessible components.


getRmiServer

public atg.server.rmi.RmiServer getRmiServer()
The RmiServer for this Dynamo that exports RMI accessible components.


setManifestManager

public void setManifestManager(atg.deployment.manifest.ManifestManager pManifestManager)
The ManifestManager used to manage local manifest files.


getManifestManager

public atg.deployment.manifest.ManifestManager getManifestManager()
The ManifestManager used to manage local manifest files.


setAgentStatusCache

public void setAgentStatusCache(atg.deployment.server.AgentStatusCache pAgentStatusCache)
Cache that holds agent status information.
If this cache is set, it will be used to hold information on the status of agents, to prevent pages and similar from making too many RMI calls to agents.


getAgentStatusCache

public atg.deployment.server.AgentStatusCache getAgentStatusCache()
Cache that holds agent status information.
If this cache is set, it will be used to hold information on the status of agents, to prevent pages and similar from making too many RMI calls to agents.


setDataDirectory

public void setDataDirectory(java.io.File pDataDirectory)
The directory where persistent status and other data is stored.


getDataDirectory

public java.io.File getDataDirectory()
The directory where persistent status and other data is stored.


setPublishingRepositoryServiceName

public void setPublishingRepositoryServiceName(java.lang.String pPublishingRepositoryServiceName)
The Nucleus service name for the publishing repository where Editions are stored.


getPublishingRepositoryServiceName

public java.lang.String getPublishingRepositoryServiceName()
The Nucleus service name for the publishing repository where Editions are stored.


setTopologyManager

public void setTopologyManager(atg.deployment.server.topology.TopologyManager pTopologyManager)
TopologyManger to use for reading and managing topology definition.


getTopologyManager

public atg.deployment.server.topology.TopologyManager getTopologyManager()
TopologyManger to use for reading and managing topology definition.


setTopologyDefinitionFile

public void setTopologyDefinitionFile(atg.xml.XMLFile pTopologyDefinitionFile)
Deprecated. 

The deployment topology XML definition file relative to the CONFIGPATH.

Parameters:
pTopologyDefinitionFile - new value to set

getTopologyDefinitionFile

public atg.xml.XMLFile getTopologyDefinitionFile()
Deprecated. 

The deployment topology XML definition file relative to the CONFIGPATH.

Returns:
XMLFile

isImportAndInitializeTopologyOnStartup

public boolean isImportAndInitializeTopologyOnStartup()
Get property importAndInitializeTopologyOnStartup

Returns:
importAndInitializeTopologyOnStartup

setImportAndInitializeTopologyOnStartup

public void setImportAndInitializeTopologyOnStartup(boolean pImportAndInitializeTopologyOnStartup)
Set property importAndInitializeTopologyOnStartup

Parameters:
pImportAndInitializeTopologyOnStartup - new value to set

setDeploymentQueueManager

public void setDeploymentQueueManager(atg.deployment.server.queue.DeploymentQueueManager pDeploymentQueueManager)
Set the DeploymentQueueManager used to ensure that only one instance of the service is running at any given time.


getDeploymentQueueManager

public atg.deployment.server.queue.DeploymentQueueManager getDeploymentQueueManager()
Get the DeploymentQueueManager used to ensure that only one instance of the service is running at any given time.


getDeploymentFulfiller

public atg.deployment.server.queue.DeploymentFulfiller getDeploymentFulfiller()
Get property deploymentFulfiller


setDeploymentFulfiller

public void setDeploymentFulfiller(atg.deployment.server.queue.DeploymentFulfiller pDeploymentFulfiller)
Set property deploymentFulfiller


setDeploymentThreadPriorityDelta

public void setDeploymentThreadPriorityDelta(int pDeploymentThreadPriorityDelta)
A modifier to increase or decrease deployment thread priority.


getDeploymentThreadPriorityDelta

public int getDeploymentThreadPriorityDelta()
A modifier to increase or decrease deployment thread priority.


setDeploymentPollSleepTime

public void setDeploymentPollSleepTime(int pDeploymentPollSleepTime)
Number of seconds to sleep during agent manifest application poll phase.


getDeploymentPollSleepTime

public int getDeploymentPollSleepTime()
Number of seconds to sleep during agent manifest application poll phase.


setInstallBufferSize

public void setInstallBufferSize(int pInstallBufferSize)
Size of the write buffer for remote manifest installs.


getInstallBufferSize

public int getInstallBufferSize()
Size of the write buffer for remote manifest installs.


setApplyTransactionBatchSize

public void setApplyTransactionBatchSize(int pApplyTransactionBatchSize)
The number of asset operations to group into a transaction during manifest application on target agents.

During the deployment application phase many operations are performed, e.g. each repository addItem(), udpateItem(), and removeItem() count as an operation. This could potentially cause an overly large transaction. The value of this property specifies the maximum number of operations to batch into a single transaction before committing and starting a new transaction. Setting this value to zero or less will make deployment application use a single transaction. The default value is 200.


getApplyTransactionBatchSize

public int getApplyTransactionBatchSize()
The number of asset operations to group into a transaction during manifest application on target agents.

During the deployment application phase many operations are performed, e.g. each repository addItem(), udpateItem(), and removeItem() count as an operation. This could potentially cause an overly large transaction. The value of this property specifies the maximum number of operations to batch into a single transaction before committing and starting a new transaction. Setting this value to zero or less will make deployment application use a single transaction. The default value is 200.


getRepositoryDestinationMappings

public java.util.Map getRepositoryDestinationMappings()
A map of source to destinitation repository path to be used for deployment activation. If your source repository is /atg/commerce/catalog/ProductCatalog and your deployment destination reposiotry is /atg/commerce/catalog/ProductCatalog_production but the actual repository used on various agent instances is /atg/commerce/catalog/ProductCatalog_read then this mapping will look like /atg/commerce/catalog/ProductCatalog=/atg/commerce/catalog/ProductCatalog_read

Returns:

setRepositoryDestinationMappings

public void setRepositoryDestinationMappings(java.util.Map pRepositoryDestinationMappings)

setCreateManifestTransactionBatchSize

public void setCreateManifestTransactionBatchSize(int pCreateManifestTransactionBatchSize)
Set property createManifestTransactionBatchSize. This is the maximum number of repository items and VFS assets to read in a single transaction while creating a manifest. A value of 0 means perform all operations in a single transaction. The default is 1000.

Parameters:
pCreateManifestTransactionBatchSize - new value to set

getCreateManifestTransactionBatchSize

public int getCreateManifestTransactionBatchSize()
Get property createManifestTransactionBatchSize. This is the maximum number of repository items and VFS assets to read in a single transaction while creating a manifest. A value of 0 means perform all operations in a single transaction. The default is 1000.

Returns:
createManifestTransactionBatchSize

setAllowMissingNonEssentialAgents

public void setAllowMissingNonEssentialAgents(boolean pAllowMissingNonEssentialAgents)
Whether or not to allow non-essential agents to be inaccessible during a deployment.

Non-essential agents are those agents in a target that do not have any deployment responsibilities. They are listed in the target so that they can be told to flush necessary caches or to perform data store switches to keep in sync with the responsible agents. But they do not write any data and so are considered non-essential. Setting this property to true allows a non-essential agent to be inaccessible and thus left out of a deployment. If configured for switch deployments, this could allow a non-essential agent to get out of sync, i.e. looking at the wrong data store for a live data store. The seriousness of such happening is questionable since both live and staging data stores are eventually populated in a deployment. Also, inaccessible agents are logged and so careful scrutiny and maintenance can bring them back into sync by hand. Additionally, out of sync agents will be reconciled during the next deployment thus the condition is not detrimental to other deployments.


getAllowMissingNonEssentialAgents

public boolean getAllowMissingNonEssentialAgents()
Whether or not to allow non-essential agents to be inaccessible during a deployment.

Non-essential agents are those agents in a target that do not have any deployment responsibilities. They are listed in the target so that they can be told to flush necessary caches or to perform data store switches to keep in sync with the responsible agents. But they do not write any data and so are considered non-essential. Setting this property to true allows a non-essential agent to be inaccessible and thus left out of a deployment. If configured for switch deployments, this could allow a non-essential agent to get out of sync, i.e. looking at the wrong data store for a live data store. The seriousness of such happening is questionable since both live and staging data stores are eventually populated in a deployment. Also, inaccessible agents are logged and so careful scrutiny and maintenance can bring them back into sync by hand. Additionally, out of sync agents will be reconciled during the next deployment thus the condition is not detrimental to other deployments.


setActivateVFSOrder

public void setActivateVFSOrder(java.lang.String[] pActivateVFSOrder)
An array of VFS service names in the order that they should have update() called on them by responsible agents during the deployment activation phase. Since some VFSs may rely on other VFSs, their order of update can be specified via this list.


getActivateVFSOrder

public java.lang.String[] getActivateVFSOrder()
An array of VFS service names in the order that they should have update() called on them by responsible agents during the deployment activation phase. Since some VFSs may rely on other VFSs, their order of update can be specified via this list.


setReuseFullDeploymentManifests

public void setReuseFullDeploymentManifests(boolean pReuseFullDeploymentManifests)
Whether or not to preserve and reuse full deployment manifest files.

When set to true, the deployment server will *NOT* delete full deployment manifests on the publishing server (manifests will still be deleted on the agents). Likewise, when a full deployment is requested, the server will first check to see if a full deployment manifest for the given edition already exists and reuse the manifest accordingly.

When using this feature, users are responsible for deleting full deployment manifests that they do not want to preserve. (Until sometime in the future when the UI will have a flag indicating whether or not to keep a manifest for a given deployment, making this flag obsolete.)


getReuseFullDeploymentManifests

public boolean getReuseFullDeploymentManifests()
Whether or not to preserve and reuse full deployment manifest files.

When set to true, the deployment server will *NOT* delete full deployment manifests on the publishing server (manifests will still be deleted on the agents). Likewise, when a full deployment is requested, the server will first check to see if a full deployment manifest for the given edition already exists and reuse the manifest accordingly.

When using this feature, users are responsible for deleting full deployment manifests that they do not want to preserve. (Until sometime in the future when the UI will have a flag indicating whether or not to keep a manifest for a given deployment, making this flag obsolete.)


setDeleteManifests

public void setDeleteManifests(boolean pDeleteManifests)
Whether or not manifests should be deleted on completed deployment removal. (This property is for debugging.)


isDeleteManifests

public boolean isDeleteManifests()
Whether or not manifests should be deleted on completed deployment removal. (This property is for debugging.)


setAutoUpgradeIncrementalDeployments

public void setAutoUpgradeIncrementalDeployments(boolean pAutoUpgradeIncrementalDeployments)
For a target which is not incrementally deployable, should an incremental deployment be automatically upgraded to a full deployment.


getAutoUpgradeIncrementalDeployments

public boolean getAutoUpgradeIncrementalDeployments()
For a target which is not incrementally deployable, should an incremental deployment be automatically upgraded to a full deployment.


setClearDefunctReferences

public void setClearDefunctReferences(boolean pClearDefunctReferences)
This is a flag which, if true, indicates that defunct references should be cleared during deployment. A defunct refererence is a property value that refers to an item which will be removed in this deployment. In certain cases defunct references mustd be cleared to prevent DB constraint violations during deployments that involve deleting assets. The default is true.


isClearDefunctReferences

public boolean isClearDefunctReferences()
This is a flag which, if true indicates that defunct references should be cleared during deployment. A defunct refererence is a property value that refers to an item which will be removed in this deployment. In certain cases defunct references mustd be cleared to prevent DB constraint violations during deployments that involve deleting assets. The default is true.


setExpertAdmin

public void setExpertAdmin(boolean pExpertAdmin)
Whether or not to turn on "expert" features in the AdminServlet.


isExpertAdmin

public boolean isExpertAdmin()
Whether or not to turn on "expert" features in the AdminServlet.


setSkipUndeployableRepositories

public void setSkipUndeployableRepositories(boolean pSkipUndeployableRepositories)
Set property skipUndeployableRepositories. This is a flag which, if true, indicates that full deployments should skip repositories that contain no deployable item descriptors. The default is true. This property should generally not be changed.

Parameters:
pSkipUndeployableRepositories - new value to set

isSkipUndeployableRepositories

public boolean isSkipUndeployableRepositories()
Test property skipUndeployableRepositories. This is a flag which, if true, indicates that full deployments should skip repositories that contain no deployable item descriptors. The default is true. This property should generally not be changed.

Returns:
skipUndeployableRepositories

setClusterName

public void setClusterName(atg.service.clustername.ClusterName pClusterName)
The ClusterName component, which is responsible for maintaining a unique name for this CA server, and if applicable, the cluster of CA servers it is a part of.

Parameters:
pClusterName - The ClusterName component

getClusterName

public atg.service.clustername.ClusterName getClusterName()
The ClusterName component, which is responsible for maintaining a unique name for this CA server, and if applicable, the cluster of CA servers it is a part of.

Returns:
The ClusterName component

getDeploymentFactory

public atg.deployment.server.DeploymentFactory getDeploymentFactory()
Get the factory that can be used to create Deployment instances.

Returns:

setDeploymentFactory

public void setDeploymentFactory(atg.deployment.server.DeploymentFactory pDeploymentFactory)
Set a factory for creating instances of Deployment class.

Parameters:
pThreadFactory -

isDisplayAutoRollbackFailures

public boolean isDisplayAutoRollbackFailures()

setDisplayAutoRollbackFailures

public void setDisplayAutoRollbackFailures(boolean pDisplayAutoRollbackFailures)

getTopologyVersion

public int getTopologyVersion()
The version of the topology that this server last initialized with.


doStartService

public void doStartService()
                    throws ServiceException
Performs any necessary initializations to start up service.

This method should only be called by Nucleus.

Overrides:
doStartService in class GenericService
Throws:
ServiceException - if the Service had a problem starting up

doStopService

public void doStopService()
                   throws ServiceException
Performs tasks required to shut down service.

This method should only be called by Nucleus.

Overrides:
doStopService in class GenericService
Throws:
ServiceException - if the Service had a problem shutting down

getDeploymentEventListeners

public DeploymentEventListener[] getDeploymentEventListeners()
Returns an array of the list of DeploymentEventListener.

Specified by:
getDeploymentEventListeners in interface DeploymentEventSender

addDeploymentEventListener

public void addDeploymentEventListener(DeploymentEventListener pListener)
Adds the listener.

Specified by:
addDeploymentEventListener in interface DeploymentEventSender
Parameters:
pListener - the listener wanting to know of deployment events
See Also:
DeploymentEventListener

removeDeploymentEventListener

public void removeDeploymentEventListener(DeploymentEventListener pListener)
Removes the listener.

Specified by:
removeDeploymentEventListener in interface DeploymentEventSender
Parameters:
pListener - the listener wanting to know of deployment events
See Also:
DeploymentEventListener

getTargetInitializationEventListeners

public atg.deployment.common.event.TargetInitializationEventListener[] getTargetInitializationEventListeners()
Returns an array of the list of vEventListener.


addTargetInitializationEventListener

public void addTargetInitializationEventListener(atg.deployment.common.event.TargetInitializationEventListener pListener)
Adds the listener.

Parameters:
pListener - the listener wanting to know of target initialization events
See Also:
TargetInitializationEventListener

removeTargetInitializationEventListener

public void removeTargetInitializationEventListener(atg.deployment.common.event.TargetInitializationEventListener pListener)
Removes the listener.

Parameters:
pListener - the listener wanting to know of deployment events
See Also:
DeploymentEventListener

getTopologyChangeEventListeners

public atg.deployment.common.event.TopologyChangeEventListener[] getTopologyChangeEventListeners()
Returns an array of the list of TopologyChangeEventListener.


addTopologyChangeEventListener

public void addTopologyChangeEventListener(atg.deployment.common.event.TopologyChangeEventListener pListener)
Adds the listener.

Parameters:
pListener - the listener wanting to know of topology change event
See Also:
TopologyChangeEventListener

removeTopologyChangeEventListener

public void removeTopologyChangeEventListener(atg.deployment.common.event.TopologyChangeEventListener pListener)
Removes the listener.

Parameters:
pListener - the listener wanting to know of topology change event
See Also:
TopologyChangeEventListener

fireTopologyChangedEvent

public void fireTopologyChangedEvent()
Fires the given ToplogyChangeEvent to the configured listeners.

See Also:
atg.deployment.common.event.TopologyChangeEvent

fireDeploymentEvent

public void fireDeploymentEvent(DeploymentEvent pEvent)
Fires the given deployment event to the configured listeners.

Specified by:
fireDeploymentEvent in interface DeploymentEventSender
See Also:
DeploymentEvent

importTopologyFromXML

public void importTopologyFromXML(java.io.InputStream pDefinitionStream)
                           throws atg.deployment.common.DeploymentException
Imports target definitons from the topology definition XML file given as an input stream Only "new" targets will be imported, that is if a target definition found in the XML file conflicts in name with a target definition found in the topology (surrogate or primary) then the definition is not imported.

Once imported, new definitions are made live through the deployment admin UI.

Throws:
atg.deployment.common.DeploymentException

exportTopologyToXML

public void exportTopologyToXML(java.io.OutputStream pOutStream)
                         throws atg.deployment.common.DeploymentException
Export topology into an XML file which can later be imported using importTopologyFromXML method. Note that this method will only export surrogate topology, which means that any pending changes made to the surrogate will get exported even if they have not been made live.

Parameters:
pOutStream -
Throws:
atg.deployment.common.DeploymentException

reinitializeTopology

public void reinitializeTopology()
                          throws atg.deployment.common.DeploymentException
Recreates the "live" topology from the configured topology.

Reinitialization of the topology is only allowed when there are no Deployment instances. Each Target should be checked and have any associated Deployment removed before reinitializeTopology() is called.

Throws:
atg.deployment.common.DeploymentException - on XML error or other initialization error

getTargets

public Target[] getTargets()
Returns an array of the deployment targets defined in the deployment topology. Null is returned if the XML topology definition file did not load properly or if there are no targets defined.


getDeploymentTargets

public Target[] getDeploymentTargets()
This method calls getTargets() to overcome an issue with JavaBeans and reflection.

Returns:
an array of Target objects

getTargets

public Target[] getTargets(int pTargetType)
Returns an array of all the live deployment targets defined in the deployment topology for the specified target type.


getOneOffTargets

public java.util.List getOneOffTargets()
Returns a list of the live targets defined in the deployment deployment topology as one-off targets.


getTargetByName

public Target getTargetByName(java.lang.String pTargetName)
Returns the named target. Null is returned if the target does not exist.

Parameters:
pTargetName - the name of the target, specifically Target.getName()

getTargetByID

public Target getTargetByID(java.lang.String pTargetID)
Returns the ID'd target. Null is returned if the target does not exist.

Parameters:
pTargetID - the ID of the target, specifically Target.getID()

getDeploymentByID

public Deployment getDeploymentByID(java.lang.String pDeploymentID)
                             throws atg.deployment.common.DeploymentException
Returns the ID'd deployment. To find the Target for the specific deployment, call Deployment.getTarget(). Null is returned if the deployment does not exist.

Parameters:
pDeploymentID - the ID of the deployment, specifically Deployment.getDeploymentID()
Throws:
atg.deployment.common.DeploymentException

getDeploymentsForProjects

public Deployment[] getDeploymentsForProjects(Project[] pProjects)
                                       throws atg.deployment.common.DeploymentException
Returns the list of all deployments, pending or currently running, that include the given Projects in the list of project IDs being deployed.

Throws:
atg.deployment.common.DeploymentException

getDeploymentsForProject

public Deployment[] getDeploymentsForProject(Project pProject)
                                      throws atg.deployment.common.DeploymentException
Returns the list of all deployments, pending or currently running, that include the given Project in the list of project IDs being deployed.

Throws:
atg.deployment.common.DeploymentException

updateDeploymentProgress

public void updateDeploymentProgress(java.lang.String pDafDeploymentId,
                                     int pDeploymentMode,
                                     boolean pIsDeploymentFirstPass)
Updates the DeploymentProgressMap, calculating an updated percentage complete for a given deployment.

Parameters:
pDafDeploymentId - the DAF deployment ID
pDeploymentMode - online or switch
pIsDeploymentFirstPass -

setDeploymentPercentageComplete

public void setDeploymentPercentageComplete(java.lang.String pPubDeploymentId,
                                            java.lang.String pPercentageComplete)
Convenience method to set the percentage completed for the specified deployment ID.

Parameters:
pPubDeploymentId - The publishing deployment ID
pPercentageComplete - The percentage complete

getDeploymentPercentageComplete

public java.lang.String getDeploymentPercentageComplete(java.lang.String pPubDeploymentId)
Convenience method to get the percentage completed for the specified deployment ID.

Parameters:
pPubDeploymentId - The publishing deployment ID
Returns:
The percentage complete

generateManifest

public java.lang.String generateManifest(java.lang.String pProjectID)
                                  throws atg.deployment.common.DeploymentException
Builds a full deployment manifest for the specified previously deployed Project. Only the manifest is built. No target is locked nor any deployment initiated.

Parameters:
pProjectID - the project ID (not display name) to create a manifest for
Returns:
String the manifest ID if successful, null otherwise
Throws:
atg.deployment.common.DeploymentException - on manifest creation error

clusterName

public java.lang.String clusterName()
Returns a unique identifier for this CA server or, if applicable, a uniquie identifier for the cluster of CA servers it is a part of.

Returns:
A String representing a unique identifer

createAdminServlet

protected javax.servlet.Servlet createAdminServlet()
Creates and returns a new Servlet that will administer this service. By default, this creates a ServiceAdminServlet, but subclasses may create their own servlets.

Overrides:
createAdminServlet in class GenericService

getCountOfPendingDeployments

public int getCountOfPendingDeployments()
                                 throws atg.deployment.common.DeploymentException
Find the count of pending deployments for all the targets

Returns:
int, the count
Throws:
atg.deployment.common.DeploymentException

getPendingDeployments

public Deployment[] getPendingDeployments(int pStartIndex,
                                          int pCount)
                                   throws atg.deployment.common.DeploymentException
Returns the list of pending Deployments as an array which contains queued deployments for each target first (since they cannot be ordered based on any criteria) followed by scheduled deployments for all targets ordered by schedule of execution.

The list of pending Deployments includes scheduled Deployments whose scheduled execution time has not yet come to term as well as all Deployments that are queued for immediate execution. Each Deployment's Status indicates whether the Deployment is scheduled or waiting to run.

The list of pending Deployments does *NOT* include the current running Deployment nor any completed Deployments.

Throws:
atg.deployment.common.DeploymentException

getCountOfQueuedDeployments

public int getCountOfQueuedDeployments()
                                throws atg.deployment.common.DeploymentException
Find the count of queued deployments for all the targets

Returns:
int, the count
Throws:
atg.deployment.common.DeploymentException

getQueuedDeployments

public Deployment[] getQueuedDeployments(int pStartIndex,
                                         int pCount)
                                  throws atg.deployment.common.DeploymentException
Returns the list of QUEUED Deployments as an array ordered by schedule of execution for all the targets know to this DeploymentServer. Queued deployments are ones that are waiting for their turn to be executed on a target. Their deployTime has already occurred and they are possibly waiting for a deployment to finish which is ahead of them or for the target to be freed from a failed deployment.

to get a list of all pending deployments use @link getPendingDeployments()

The list of queued (@see Status.WAITING_QUEUED) deployments does *NOT* include the current running Deployment nor any completed Deployments.

Throws:
atg.deployment.common.DeploymentException

getCountOfScheduledDeployments

public int getCountOfScheduledDeployments()
                                   throws atg.deployment.common.DeploymentException
Find the count of scheduled deployments for all the targets

Returns:
int the count
Throws:
atg.deployment.common.DeploymentException

getScheduledDeployments

public Deployment[] getScheduledDeployments(int pStartIndex,
                                            int pCount)
                                     throws atg.deployment.common.DeploymentException
Returns the list of SCHEDULED Deployments as an array ordered by schedule of execution. Scheduled deployments are ones that are waiting for their turn to be executed on a target but their time of execution is in the future. Scheduled deployments become queued once the time for their execution arrives.

to get a list of all pending deployments use @link getPendingDeployments()

@see Status.WAITING_SCHEDULED

Throws:
atg.deployment.common.DeploymentException

getDeployedTargets

public java.util.Set<Target> getDeployedTargets(Project pProject)
                                         throws javax.ejb.FinderException
Get a set of targets to which the specified project has been deployed.

Parameters:
pProject -
Returns:
Throws:
javax.ejb.FinderException

getLockedAssets

public java.util.Set<ManagedElement> getLockedAssets(java.lang.String pCurrentProjectId,
                                                     java.lang.String pLockingProjectId)
                                              throws atg.deployment.common.DeploymentException
Returns a set of assets contained in the project whose ID is pCurrentProjectId, and is locked by the project whose ID is pLockingProjectId.

Parameters:
pCurrentProjectId -
pLockingProjectId -
Returns:
Throws:
atg.deployment.common.DeploymentException

getPendingDeploymentsForProjects

public Deployment[] getPendingDeploymentsForProjects(java.lang.String[] pProjectIDs)
                                              throws atg.deployment.common.DeploymentException
Returns an array of pending deployments for the projects corresponding to the given set of project IDs.

Parameters:
pProjectIDs -
Returns:
array of atg.deployment.server.Deployment objects, null if nothing found or if security constraints so warrant.
Throws:
atg.deployment.common.DeploymentException

getCountOfPendingDeploymentsForProjects

public int getCountOfPendingDeploymentsForProjects(java.lang.String[] pProjectIDs)
                                            throws atg.deployment.common.DeploymentException
Returns the cound of pending deployments for the projects corresponding to the given set of project IDs.

Parameters:
pProjectIDs -
Returns:
array of atg.deployment.server.Deployment objects, null if nothing found or if security constraints so warrant.
Throws:
atg.deployment.common.DeploymentException

getPendingDeploymentsForProject

public Deployment[] getPendingDeploymentsForProject(java.lang.String pProjectID)
                                             throws atg.deployment.common.DeploymentException
Returns an array of pending deployments for the project with specified project ID.

Parameters:
pProjectID -
Returns:
array of atg.deployment.server.Deployment objects, null if nothing found or if security constraints so warrant.
Throws:
atg.deployment.common.DeploymentException

getProjectIDs

public static java.lang.String[] getProjectIDs(Project[] pProjects)
conver array of projects to array of project IDs

Returns: