hudson.slaves
Class AbstractCloudSlave

java.lang.Object
  extended by hudson.model.AbstractModelObject
      extended by hudson.model.Node
          extended by hudson.model.Slave
              extended by hudson.slaves.AbstractCloudSlave
All Implemented Interfaces:
ExtensionPoint, Describable<Node>, ModelObject, ReconfigurableDescribable<Node>, SearchableModelObject, SearchItem, AccessControlled, Serializable, OnMaster

public abstract class AbstractCloudSlave
extends Slave

Partial implementation of Slave to be used by AbstractCloudImpl. You may want to implement EphemeralNode too.

Since:
1.382
Author:
Kohsuke Kawaguchi
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class hudson.model.Slave
Slave.JnlpJar, Slave.SlaveDescriptor
 
Nested classes/interfaces inherited from class hudson.model.Node
Node.InternalComputerListener, Node.Mode
 
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson
 
Field Summary
 
Fields inherited from class hudson.model.Slave
name, remoteFS
 
Fields inherited from class hudson.model.Node
holdOffLaunchUntilSave
 
Constructor Summary
AbstractCloudSlave(String name, String nodeDescription, String remoteFS, int numExecutors, Node.Mode mode, String labelString, ComputerLauncher launcher, RetentionStrategy retentionStrategy, List<? extends NodeProperty<?>> nodeProperties)
           
AbstractCloudSlave(String name, String nodeDescription, String remoteFS, String numExecutors, Node.Mode mode, String labelString, ComputerLauncher launcher, RetentionStrategy retentionStrategy, List<? extends NodeProperty<?>> nodeProperties)
           
 
Method Summary
protected abstract  void _terminate(TaskListener listener)
          Performs the removal of the underlying resource from the cloud.
abstract  AbstractCloudComputer createComputer()
          Creates a new Computer object that acts as the UI peer of this Node.
 void terminate()
          Releases and removes this slave.
 
Methods inherited from class hudson.model.Slave
createLauncher, equals, getClockDifference, getComputer, getDescriptor, getLabelString, getLauncher, getMode, getNodeDescription, getNodeName, getNodeProperties, getNumExecutors, getRemoteFS, getRetentionStrategy, getRootPath, getUserId, getWorkspaceFor, getWorkspaceRoot, hashCode, readResolve, setLabelString, setLauncher, setMode, setNodeName, setRetentionStrategy, setUserId
 
Methods inherited from class hudson.model.Node
canTake, canTake, checkPermission, createPath, getACL, getAssignedLabels, getChannel, getDisplayName, getFileSystemProvisioner, getLabelCloud, getNodePropertyDescriptors, getSearchUrl, getSelfLabel, hasPermission, isHoldOffLaunchUntilSave, reconfigure, toComputer
 
Methods inherited from class hudson.model.AbstractModelObject
getSearch, getSearchIndex, getSearchName, makeSearchIndex, requirePOST, sendError, sendError, sendError, sendError, sendError
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractCloudSlave

public AbstractCloudSlave(String name,
                          String nodeDescription,
                          String remoteFS,
                          String numExecutors,
                          Node.Mode mode,
                          String labelString,
                          ComputerLauncher launcher,
                          RetentionStrategy retentionStrategy,
                          List<? extends NodeProperty<?>> nodeProperties)
                   throws Descriptor.FormException,
                          IOException
Throws:
Descriptor.FormException
IOException

AbstractCloudSlave

public AbstractCloudSlave(String name,
                          String nodeDescription,
                          String remoteFS,
                          int numExecutors,
                          Node.Mode mode,
                          String labelString,
                          ComputerLauncher launcher,
                          RetentionStrategy retentionStrategy,
                          List<? extends NodeProperty<?>> nodeProperties)
                   throws Descriptor.FormException,
                          IOException
Throws:
Descriptor.FormException
IOException
Method Detail

createComputer

public abstract AbstractCloudComputer createComputer()
Description copied from class: Node
Creates a new Computer object that acts as the UI peer of this Node. Nobody but Jenkins.updateComputerList() should call this method.

Overrides:
createComputer in class Slave

terminate

public void terminate()
               throws InterruptedException,
                      IOException
Releases and removes this slave.

Throws:
InterruptedException
IOException

_terminate

protected abstract void _terminate(TaskListener listener)
                            throws IOException,
                                   InterruptedException
Performs the removal of the underlying resource from the cloud.

Throws:
IOException
InterruptedException


Copyright © 2004-2013. All Rights Reserved.