org.gcube.vremanagement.resourcemanager.impl.resources
Class ScopedDeployedService

java.lang.Object
  extended by org.gcube.vremanagement.resourcemanager.impl.resources.ScopedResource
      extended by org.gcube.vremanagement.resourcemanager.impl.resources.ScopedDeployedService

public final class ScopedDeployedService
extends ScopedResource

Models a scoped GCUBEService

Author:
Manuele Simi (ISTI-CNR)

Nested Class Summary
 
Nested classes/interfaces inherited from class org.gcube.vremanagement.resourcemanager.impl.resources.ScopedResource
ScopedResource.ResourceNotFound, ScopedResource.STATUS
 
Field Summary
static java.lang.String TYPE
           
 
Method Summary
 java.util.List<Dependency> getLastMissingDependencies()
          Gets the list of missing dependencies for the last (failed) deployment
 java.util.List<Dependency> getLastResolvedDependencies()
          Gets the list of resolved dependencies to be used in the next deployment
 java.util.List<Dependency> getMissingDependencies(java.lang.String ghnid)
          Gets the list of missing dependencies when the deployment was performed on a specific node
 java.util.List<VirtualNode> getNodes()
          Gets the list of VirtualNodes where the service is actually deployed within this scope
 java.util.List<Dependency> getResolvedDependencies(java.lang.String ghnid)
          Gets the list of resolved dependencies when the deployment was performed on a specific node
 Service getSourceService()
           
 java.lang.String getTargetGHN()
          Gets the ID of the target gHN
 java.lang.String getTargetGHNID()
          Gets the ID of the target gHN
 void removeFromScope(java.lang.String ghnID)
          Undeploys any instances of this service from the given gHN
 void scheduleUndeploy()
          Schedules the undeployment of all the instances of this service from scope
 void scheduleUndeploy(VirtualNode node)
          Schedules the undeployment of an instance of this service from the node
 void setCallbackID(java.lang.String id)
          Sets the callback ID from now on for all the service's operations
 void setMissingDependencies(java.util.List<Dependency> dependencies)
          Sets the list of missing dependencies for the next deployment
 void setResolvedDependencies(java.util.List<Dependency> dependencies)
          Sets the list of resolved dependencies to be used in the next deployment
 void setRIonGHN(java.lang.String ri, java.lang.String ghn)
           
 void setSourceServiceName(Service service)
           
 void setTargetGHN(VirtualNode node)
          Sets the GHN where the service will be deployed
 
Methods inherited from class org.gcube.vremanagement.resourcemanager.impl.resources.ScopedResource
doAction, equals, findResource, getAction, getErrorMessage, getHostedOn, getId, getJointTime, getLastModificationTime, getScope, getStatus, getType, hashCode, isSuccess, setErrorMessage, setHostedON, setJointTime, setStatus, toString
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

TYPE

public static final java.lang.String TYPE
Method Detail

setSourceServiceName

public void setSourceServiceName(Service service)

getSourceService

public Service getSourceService()

getResolvedDependencies

public java.util.List<Dependency> getResolvedDependencies(java.lang.String ghnid)
Gets the list of resolved dependencies when the deployment was performed on a specific node

Parameters:
ghnid - the ID of the node
Returns:
the resolved dependencies

getLastResolvedDependencies

public java.util.List<Dependency> getLastResolvedDependencies()
Gets the list of resolved dependencies to be used in the next deployment

Returns:
the resolved dependencies

setResolvedDependencies

public void setResolvedDependencies(java.util.List<Dependency> dependencies)
Sets the list of resolved dependencies to be used in the next deployment

Parameters:
dependencies - the resolved dependencies

getMissingDependencies

public java.util.List<Dependency> getMissingDependencies(java.lang.String ghnid)
Gets the list of missing dependencies when the deployment was performed on a specific node

Parameters:
ghnid - the ID of the node
Returns:
the missing dependencies

getLastMissingDependencies

public java.util.List<Dependency> getLastMissingDependencies()
Gets the list of missing dependencies for the last (failed) deployment

Returns:
the missing dependencies

setMissingDependencies

public void setMissingDependencies(java.util.List<Dependency> dependencies)
Sets the list of missing dependencies for the next deployment

Parameters:
dependencies - the missign dependencies

scheduleUndeploy

public void scheduleUndeploy()
Schedules the undeployment of all the instances of this service from scope

Throws:
java.lang.Exception - if the operation fails

scheduleUndeploy

public void scheduleUndeploy(VirtualNode node)
Schedules the undeployment of an instance of this service from the node

Parameters:
node - the node from where to undeploy the service
Throws:
java.lang.Exception - if the operation fails

removeFromScope

public void removeFromScope(java.lang.String ghnID)
                     throws VirtualNode.NoGHNFoundException,
                            java.lang.Exception
Undeploys any instances of this service from the given gHN

Parameters:
lastActivityOnGHN - the id of the gHN from where to undeploy the service
Throws:
java.lang.Exception
VirtualNode.NoGHNFoundException

setTargetGHN

public void setTargetGHN(VirtualNode node)
Sets the GHN where the service will be deployed

Parameters:
node - the target GHN

getTargetGHNID

public java.lang.String getTargetGHNID()
Gets the ID of the target gHN

Returns:
the ID of the target gHN

getTargetGHN

public java.lang.String getTargetGHN()
Gets the ID of the target gHN

Returns:
the ID of the target gHN

setRIonGHN

public void setRIonGHN(java.lang.String ri,
                       java.lang.String ghn)

setCallbackID

public void setCallbackID(java.lang.String id)
Sets the callback ID from now on for all the service's operations

Parameters:
id - the callback ID

getNodes

public java.util.List<VirtualNode> getNodes()
Gets the list of VirtualNodes where the service is actually deployed within this scope

Returns:
the list of VirtualNodes