public class Target
extends java.lang.Object
implements atg.deployment.common.Constants, java.io.Externalizable
Targets are generated when the deployment topology is initialized. Instances of Targets are obtained from the DeploymentServer via the getTargets(), getTargetByName(), and getTargetByID() methods.
Two lists of the agents that make up a target are provided. The method getAgents() returns all agents that make up the target. The method getResponsibleAgents() only returns those agents that have deployment responsibilities.
The Target class is the conceptual single entity formed by the group of agents that define the target. As a whole, the Target can be queried through the following methods:
Access to deployments associated with a target is available through several useful methods:
A Project can be deployed to a target before it has been checked in and rendered immutable. This is a handy way of viewing a Project's changes before making them final and visible to other users to build on. If such a Project must be removed from the target, there are two methods to do so, revert() and deployRevert(). Both of these methods disassociates the Project from the target.
Some utility methods are also available but should be used carefully or not at all, as they are not considered part of the standard deployment process:
DeploymentServer
,
Status
,
Deployment
,
AgentRef
,
Serialized FormModifier and Type | Field and Description |
---|---|
static java.lang.String |
CLASS_VERSION
Class version string
|
static java.lang.String |
TARGET_BRANCH_NAME_PREFIX |
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_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_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
Modifier | Constructor and Description |
---|---|
protected |
Target()
Protected constructor for testing only.
|
Modifier and Type | Method and Description |
---|---|
Snapshot |
createOrGetDeploymentSnapshot(VersionManager versionManager,
Project project)
Create a snapshot for the given project when its already deployed to this
target.
|
void |
criticalReset(java.lang.String pInitiatorID)
Does a "hard" reset of the target and the target agents.
|
Deployment |
deployInitial(boolean pForceDeployment,
java.lang.String pInitiatorID)
Deploys the initial state of the target.
|
Deployment |
deployPrevious(java.lang.String pProjectID,
boolean pForceFull,
java.util.Calendar pDeployTime,
java.lang.String pInitiatorID)
See
deployPrevious . |
Deployment |
deployPrevious(java.lang.String pProjectID,
boolean pForceFull,
java.util.Calendar pDeployTime,
java.lang.String pInitiatorID,
int pStrictFileOps,
int pStrictRepoOps)
Performs a "back deployment" to the Target returning it to the
state when the given Project was deployed and checked-in.
|
Deployment |
deployProjects(java.lang.String[] pProjectIDs,
boolean pForceFull,
java.util.Calendar pDeployTime,
java.lang.String pInitiatorID)
See
deployProjects . |
Deployment |
deployProjects(java.lang.String[] pProjectIDs,
boolean pForceFull,
java.util.Calendar pDeployTime,
java.lang.String pInitiatorID,
int pStrictFileOps,
int pStrictRepoOps)
Deploys the specified Projects to this target.
|
Deployment |
deployRevert(java.lang.String pProjectID,
java.util.Calendar pDeployTime,
java.lang.String pInitiatorID)
Functions the same as deploy()
Projects that have been checked-in cannot be reverted from a
target.
|
Project |
findProjectByDeploymentSnapshot(java.lang.String pSnapshotID)
Can this target accept a back deployment at this time.
|
AgentRef[] |
getAgents()
The list of all deployment agents that make up the target.
|
Status[] |
getAgentStatuses()
A convenience method that queries and returns the status of
each agent in the target.
|
java.lang.String |
getClusterID() |
int |
getCountOfDeployedActiveProjects()
Gets the count of projects merged to this target.
|
int |
getCountOfDeployedCheckedinProjects()
Gets the count of projects merged to this target.
|
int |
getCountOfDeployedProjects()
Gets the count of projects merged to this target.
|
int |
getCountOfPendingDeployments()
Find the count of pending(Queued and Scheduled) deployments for this targets.
|
int |
getCountOfQueuedDeployments()
Find the count of queued deployments for this targets
|
int |
getCountOfScheduledDeployments()
Find the count of pending deployments for this targets
|
Deployment |
getCurrentDeployment()
The current deployment for this Target.
|
Status |
getCurrentStatus()
Returns the current status of this Target regardless of the
current cluster.
|
Project[] |
getDeployedActiveProjects(int pStartIndex,
int pCount)
Gets the list of projects to this target.
|
Project[] |
getDeployedCheckedinProjects(int pStartIndex,
int pCount)
Gets the list of projects to this target.
|
Project[] |
getDeployedProjects(int pStartIndex,
int pCount)
Gets the list of projects to this target.
|
java.lang.Long |
getDeployedSnapshotCreationTime()
Returns the creation time (as a Long ) of the last deployed snapshot.
|
java.lang.String |
getDescription()
A brief description of this target, any old information that is desired.
|
Repository |
getDestinationRepository(atg.adapter.version.RepositoryVersionContainer pRepository)
Find the destination repository mapped to the given source repository.
|
java.util.Map |
getDestinations()
Get a Map of destination repository path or host:port names, keyed
by the source repository or VFS nucleus path.
|
Snapshot |
getEffectiveDeployedSnapshot()
Find the snapshot that we should consider as deployed to the target this may be different
than the snapshot that is installed on the target.
|
java.lang.Long |
getEffectiveDeployedSnapshotCreationTime()
Returns the creation time (as a Long ) of the last effectively deployed snapshot.
|
java.lang.String |
getID()
The repository ID of this Target.
|
Project[] |
getInitDeployedProjects(int pStartIndex,
int pCount)
Gets the list of projects deployed to uninitialized target.
|
Snapshot |
getInitialSnapshot()
Get the snapshot this target was initialized with.
|
java.lang.String |
getInstalledSnapshot()
Returns the current snapshot on this Target by querying each target
agent that has deployment responsibilities (as these are the only
agents who actually maintain deployed data).
|
Project |
getLastCheckedInDeployedProject()
Returns the Project that was last successfully deployed to this
target.
|
Project |
getLastDeployedProject()
Returns the Project that was last successfully deployed to this
target.
|
java.lang.String |
getName()
The name given this target.
|
Deployment |
getNextDeployment()
A convenience method that returns the next logical deployment to
run.
|
Deployment[] |
getPendingDeployments(int pStartIndex,
int pCount)
Returns the list of pending Deployments as an array ordered by
schedule of execution.
|
Deployment[] |
getQueuedDeployments(int pStartIndex,
int pCount)
Returns the list of QUEUED Deployments as an array ordered by
schedule of execution.
|
java.util.Map |
getRepositoryTableMappings()
Get a Map of destination repository path to the table
mapping (instance of atg.deployment.server.topology.TableMapping instances)
|
AgentRef[] |
getResponsibleAgents()
Deployment agents in this target that have deployment responsibilities.
|
Deployment[] |
getScheduledDeployments(int pStartIndex,
int pCount)
Returns the list of SCHEDULED Deployments as an array ordered by
schedule of execution.
|
Status |
getStatus()
Returns the status of this Target.
|
Status |
getStatus(boolean pUseCache)
Returns the status of this Target.
|
atg.deployment.server.topology.TargetTypeEnum |
getType()
Target type e.g.
|
void |
haltQueue()
Halts handling of pending deployments on this target.
|
Status[] |
initializeAgents()
Runs through the list of agent statuses and tries once again to
initialize any uninitialized agent transports.
|
Status[] |
initializeAgents(boolean pOnlyResponsibles)
Runs through the list of agent statuses and tries once again to
initialize any uninitialized agent transports.
|
boolean |
isAccessible()
Whether or not this target is currently accessible.
|
boolean |
isBackDeployable()
Can this target accept a back deployment at this time.
|
protected boolean |
isBackDeployed()
If this target is not current i.e.
|
boolean |
isDeployable()
Whether or not this target is capable of being deployed to.
|
boolean |
isHalted()
Whether or not this target's deployment queue is halted.
|
boolean |
isIncrementallyDeployable()
Whether or not this target is capable of receiving an incremental
deployment or if a full deployment is necessary.
|
boolean |
isInitialized()
Returns whether or not this Target is currently initialized due
to a Topology change.
|
boolean |
isInitializing()
If this target is currently initializing.
|
boolean |
isOneOff()
Flag indicating if this target is used for one-off deployments.
|
boolean |
isReverseDeployment() |
protected Snapshot |
lastDeployedProjectSnapshot() |
void |
readExternal(java.io.ObjectInput in) |
void |
resumeQueue()
Resumes handling of pending deployments on this target.
|
void |
setClusterID(java.lang.String pClusterID) |
void |
setIsReverseDeployment(boolean pReverseDeployment) |
void |
setOneOff(boolean pOneOff)
TODO: remove me.
|
java.lang.String |
toString()
Returns this Target as a String.
|
void |
validateRepositoryTableMappings()
Validates all the table mappings associated with this target and throws
a DeploymentException with information about a validation failure.
|
void |
writeExternal(java.io.ObjectOutput out) |
public static final java.lang.String TARGET_BRANCH_NAME_PREFIX
public static java.lang.String CLASS_VERSION
public java.lang.String getID()
public java.lang.String getName()
public java.lang.String getDescription()
public atg.deployment.server.topology.TargetTypeEnum getType()
public boolean isOneOff()
public void setOneOff(boolean pOneOff)
public AgentRef[] getAgents()
public AgentRef[] getResponsibleAgents()
public void setClusterID(java.lang.String pClusterID)
pClusterID
- public java.lang.String getClusterID()
public Snapshot getInitialSnapshot() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public java.lang.String toString()
toString
in class java.lang.Object
public Status[] initializeAgents()
public Status[] initializeAgents(boolean pOnlyResponsibles)
pOnlyResponsibles
- when set to true only agents with deployment responsibilities are initializedpublic boolean isHalted() throws atg.deployment.common.DeploymentException
Deployments can still be scheduled via deploy(), but no deployments will be executed automaticaly by the queue as long as the queue is halted.
atg.deployment.common.DeploymentException
- if there is an error discerning whether or not the queue is halted (i.e. communication/repository errors)public void haltQueue() throws atg.deployment.common.DeploymentException
Deployments can still be scheduled via deploy(), but no deployments will be executed automaticaly by the queue as long as the queue is halted.
atg.deployment.common.DeploymentException
- if there is an error restarting the queue is halted (i.e. communication/repository errors)public void resumeQueue() throws atg.deployment.common.DeploymentException
Deployments can still be scheduled via deploy(), but no deployments will be executed automaticaly by the queue as long as the queue is halted.
atg.deployment.common.DeploymentException
- if there is an error restarting the queue is halted (i.e. communication/repository errors)public boolean isInitialized() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
- is anything goes wrong, reading the status from the databasepublic boolean isInitializing() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public void setIsReverseDeployment(boolean pReverseDeployment)
public boolean isReverseDeployment()
public boolean isAccessible()
public void validateRepositoryTableMappings() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public boolean isDeployable()
This method does not comment on whether or not a target can schedule or queue deployments, only whether or not a deployment can currently run against the target. Thus the usefulness of this method is limited.
Note: Calling this method will also call isAccessible() internally.
public boolean isIncrementallyDeployable() throws atg.deployment.common.DeploymentException
NOTE: If a required agent is inaccessible, a deployment exception is thrown rather than making this method return a potentially false negative. Whether or not an agent is required depends on whether or not the agent has deployment responsibilities and whether or not allowMissingNonEssentialAgents is true on the DeploymentServer.
atg.deployment.common.DeploymentException
- if a required agent is inaccessiblepublic boolean isBackDeployable() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public Project findProjectByDeploymentSnapshot(java.lang.String pSnapshotID) throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public Status getStatus()
public Status getStatus(boolean pUseCache)
public Status getCurrentStatus()
public Status[] getAgentStatuses()
public Deployment getCurrentDeployment() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
- if there is an error accessing the deployment repository - see the wrapped exceptionatg.deployment.DeploymentException
public Deployment getNextDeployment() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public int getCountOfPendingDeployments() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public Deployment[] getPendingDeployments(int pStartIndex, int pCount) throws atg.deployment.common.DeploymentException
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.
atg.deployment.common.DeploymentException
public int getCountOfQueuedDeployments() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public Deployment[] getQueuedDeployments(int pStartIndex, int pCount) throws atg.deployment.common.DeploymentException
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.
atg.deployment.common.DeploymentException
public int getCountOfScheduledDeployments() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public Deployment[] getScheduledDeployments(int pStartIndex, int pCount) throws atg.deployment.common.DeploymentException
to get a list of all pending deployments use @link getPendingDeployments()
@see Status.WAITING_SCHEDULED
atg.deployment.common.DeploymentException
public Project getLastDeployedProject() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
- if the target cannot be accessed, if
there is a mis-match between agents of which project was
deployed last, or if there were problems finding the Project
refered to by the targetpublic Project getLastCheckedInDeployedProject() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
- if the target cannot be accessed, if
there is a mis-match between agents of which project was
deployed last, or if there were problems finding the Project
refered to by the targetpublic int getCountOfDeployedProjects() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public Project[] getDeployedProjects(int pStartIndex, int pCount) throws atg.deployment.common.DeploymentException
pStartIndex
- pCount
- atg.deployment.common.DeploymentException
public Project[] getInitDeployedProjects(int pStartIndex, int pCount) throws atg.deployment.common.DeploymentException
pStartIndex
- pCount
- atg.deployment.common.DeploymentException
public int getCountOfDeployedCheckedinProjects() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public Project[] getDeployedCheckedinProjects(int pStartIndex, int pCount) throws atg.deployment.common.DeploymentException
pStartIndex
- pCount
- atg.deployment.common.DeploymentException
public int getCountOfDeployedActiveProjects() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public Project[] getDeployedActiveProjects(int pStartIndex, int pCount) throws atg.deployment.common.DeploymentException
pStartIndex
- pCount
- atg.deployment.common.DeploymentException
public java.util.Map getDestinations() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public Repository getDestinationRepository(atg.adapter.version.RepositoryVersionContainer pRepository)
public java.util.Map getRepositoryTableMappings() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public Deployment deployInitial(boolean pForceDeployment, java.lang.String pInitiatorID) throws atg.deployment.common.DeploymentException
When a target is first created it must be initialized properly. The method deployInitial() serves both as a means of performing this initialization as well re-deploying the targets initial state before any other deployments were made to the target.
deployInitial() is called automatically when the topology is initialized and a target is first created.
In the case where data has been exported from the target and imported into the publishing server, there may be little point in deploying the data back out to the target. Though this might be desirable just to insure that what is in the publishing server is exactly what is on the target, some may prefer another option. The parameter pForceDeployment when set to true will initialize the target on the server as normal and perform a full deployment of the data back to the target. When pForceDeployment is set to false, instead of deploying the data, the target will simply be flagged with the necessary information to appear as if a deployment had occured. This "flagging" of the target could save time by skipping an unnecessary full deployment and allowing incremental deployments as soon as the target is finished initializing.
NOTE: If this method is not called, or if the deployment scheduled by this method fails, any standard deployment of a project will also peform the necessary initializations. This method is simply provided in the case where target initializaton is desirable before any projects exist.
pForceDeployment
- true if a deployment should be performed, false if agents should be "flagged" as deployed topInitiatorID
- an identifying string of "who" is effectively performing this actionatg.deployment.common.DeploymentException
Deployment
public Deployment deployProjects(java.lang.String[] pProjectIDs, boolean pForceFull, java.util.Calendar pDeployTime, java.lang.String pInitiatorID, int pStrictFileOps, int pStrictRepoOps) throws atg.deployment.common.DeploymentException
Specifically, deployProjects() schedules or queues the deployment of a list of Projects. This deployment is considered a "standard" or "forward" deployment in that the Projects deployed should either be checked-in and never before deployed to this Target, not yet checked-in, or a mixture of the two. Projects that are not checked-in can be deployed and re-deployed without problem till they are checked-in. If this method is called with a project that has been checked-in and already deployed to this Target then a DeploymentException will be thrown (see deployPrevious()).
NOTE: if this method is called twice with the same valid Project, two separate deployments will be scheduled. This is okay. If the first deployment succeeds then the second one will be ignored when its deploy time is reached. This is because the deployment system knows that the second deployment was intended as a forward deployment, a forward deployment that has already occured.
If pForceFull is true, a full deployment will be forced, otherwise an incremental deployment will be used if possible.
If a deploy time is specified, the deployment will be scheduled for execution at the specified time. If no deploy time is provided, the deployment will either run immediately or be queued behind any deployments already queued to run immediately. As scheduled deployments become ready to run, they get queued behind existing deployments that are already queued to run immediately.
Use the Deployment.runNext() method to push any deployment to the head of the list of pending deployments, thus making it the next deployment to run. Any currently running deployment will be allowed to finish (or can be stopped). Calling runNext() on a scheduled deployment will supercede the scheduling request.
An optional string may be passed in to identify the initiator of this new deployment. The information is associated with the deployment history entry for this action and is mainly meant as a convenience for UIs. If calling code does not have a "user" then an identifying tag for the call would be appropriate.
pProjectIDs
- the list of Project IDs (Project.getId()) for the Projects to deploy to the targetpForceFull
- whether or not to require the deployment to be a full deploymentpDeploymentType
- the type of deployment (e.g. init, standard, revert, back, one off)pDeployTime
- a specific time to run the deployment, or NULL if run as soon as possiblepInitiatorID
- an identifying string of "who" is effectively performing this actionpStrictFileOps
- an override to the global setting in /atg/deployment/DeploymentManagerpStrictRepoOps
- an override to the global setting in /atg/deployment/DeploymentManageratg.deployment.common.DeploymentException
Deployment
public Deployment deployProjects(java.lang.String[] pProjectIDs, boolean pForceFull, java.util.Calendar pDeployTime, java.lang.String pInitiatorID) throws atg.deployment.common.DeploymentException
deployProjects
. This method doesn't specify strict file
or repository update operations and will default to global settings in
/atg/deployment/DeploymentManager
.pProjectIDs
- pForceFull
- pDeployTime
- pInitiatorID
- atg.deployment.common.DeploymentException
public Deployment deployPrevious(java.lang.String pProjectID, boolean pForceFull, java.util.Calendar pDeployTime, java.lang.String pInitiatorID, int pStrictFileOps, int pStrictRepoOps) throws atg.deployment.common.DeploymentException
The deployment of Projects to a Target produces a timeline for the Target. The list of deployed Projects serves as a series of markers indicating what content appeared on the Target and when. The deployPrevious() method is used with a Project from the list of deployed Projects to temporarily return a Target to the state when the Project was previously deployed. This is a useful feature if a target must be quickly reverted to some arbitrary point in its history until some emergency change can be prepared and deployed.
Back deploying a Target does not delete any of the Projects that were deployed after the Project back-deployed to. Such Projects continue to exist in the Publishing server, are still associated with the Target in the order they were deployed, but have merely been temporarily removed from the Target. Think of a back deployment simply as a quick re-winding of a tape cassette. Once back-deployed, the next new Project deployed to the Target will re-deploy all the "rewound" Projects. Calling deployPrevious() effectivly winds the deployment tape cassette to any point in its deployment history using the ordered list of previously deployed Projects.
If pForceFull is true, a full deployment will be forced, otherwise an incremental deployment will be used if possible.
If a deploy time is specified, the deployment will be scheduled for execution at the specified time. If no deploy time is provided, the deployment will either run immediately or be queued behind any deployments already queued to run immediately. As scheduled deployments become ready to run, they get queued behind existing deployments that are already queued to run immediately.
Use the Deployment.runNext() method to push any deployment to the head of the list of pending deployments, thus making it the next deployment to run. Any currently running deployment will be allowed to finish (or can be stopped). Calling runNext() on a scheduled deployment will supercede the scheduling request.
An optional string may be passed in to identify the initiator of this new deployment. The information is associated with the deployment history entry for this action and is mainly meant as a convenience for UIs. If calling code does not have a "user" then an identifying tag for the call would be appropriate.
pProjectIDs
- the list of Project IDs (Project.getId()) for the Projects to deploy to the targetpForceFull
- whether or not to require the deployment to be a full deploymentpDeployTime
- a specific time to run the deployment, or NULL if run as soon as possiblepInitiatorID
- an identifying string of "who" is effectively performing this actionpStrictFileOps
- an override to the global setting in /atg/deployment/DeploymentManagerpStrictRepoOps
- an override to the global setting in /atg/deployment/DeploymentManageratg.deployment.common.DeploymentException
Deployment
public Deployment deployPrevious(java.lang.String pProjectID, boolean pForceFull, java.util.Calendar pDeployTime, java.lang.String pInitiatorID) throws atg.deployment.common.DeploymentException
deployPrevious
. This method doesn't specify strict file
or repository update operations and will default to global settings in
/atg/deployment/DeploymentManager
.pProjectID
- pForceFull
- pDeployTime
- pInitiatorID
- atg.deployment.common.DeploymentException
public Deployment deployRevert(java.lang.String pProjectID, java.util.Calendar pDeployTime, java.lang.String pInitiatorID) throws atg.deployment.common.DeploymentException
An optional string may be passed in to identify the initiator of this revert. The information is associated with the deployment history entry for this action and is mainly meant as a convenience for UIs. If calling code does not have a "user" then an identifying tag for the call would be appropriate.
pProjectID
- Project.getId() from the Project to revert from the targetpForceFull
- whether or not to require the deployment to be a full deploymentpDeployTime
- a specific time to run the deployment, or NULL if run as soon as possiblepInitiatorID
- an identifying string of "who" is effectively performing this actionatg.deployment.common.DeploymentException
Deployment
public void criticalReset(java.lang.String pInitiatorID) throws atg.deployment.common.DeploymentException
pInitiatorID
- an identifier of who is requesting the resetatg.deployment.common.DeploymentException
public java.lang.String getInstalledSnapshot() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
- on agent deployed snapshot mis-matchpublic Snapshot getEffectiveDeployedSnapshot() throws atg.deployment.common.DeploymentException
pTarget
- atg.deployment.common.DeploymentException
protected boolean isBackDeployed() throws atg.deployment.common.DeploymentException
pTarget
- atg.deployment.common.DeploymentException
protected Snapshot lastDeployedProjectSnapshot() throws javax.ejb.FinderException, VersionException
javax.ejb.FinderException
VersionException
public java.lang.Long getDeployedSnapshotCreationTime() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public java.lang.Long getEffectiveDeployedSnapshotCreationTime() throws atg.deployment.common.DeploymentException
atg.deployment.common.DeploymentException
public Snapshot createOrGetDeploymentSnapshot(VersionManager versionManager, Project project) throws VersionException
versionManager
- project
- VersionException
public void writeExternal(java.io.ObjectOutput out) throws java.io.IOException
writeExternal
in interface java.io.Externalizable
java.io.IOException
public void readExternal(java.io.ObjectInput in) throws java.io.IOException, java.lang.ClassNotFoundException
readExternal
in interface java.io.Externalizable
java.io.IOException
java.lang.ClassNotFoundException