Class LifecycleComponent

java.lang.Object
org.ivoa.dm.executionbroker.AbstractComponent
org.ivoa.dm.executionbroker.LifecycleComponent
All Implemented Interfaces:
org.ivoa.vodml.jpa.JPAManipulations, org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
Direct Known Subclasses:
AbstractComputeResource, AbstractDataResource, AbstractStorageResource

@Entity @VoDml(id="execbroker:LifecycleComponent", role=objectType) public abstract class LifecycleComponent extends AbstractComponent implements org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
A component with a lifecycle. objectType: LifecycleComponent
  • Field Details

    • phase

      @VoDml(id="execbroker:LifecycleComponent.phase", role=attribute, type="execbroker:LifecyclePhase", typeRole=enumeration) protected LifecyclePhase phase
      The lifecycle phase. : Attribute phase : multiplicity 1
    • schedule

      @VoDml(id="execbroker:LifecycleComponent.schedule", role=attribute, type="execbroker:LifecycleSchedule", typeRole=dataType) protected LifecycleSchedule schedule
      The lifecycle schedule. : Attribute schedule : multiplicity 1
  • Constructor Details

    • LifecycleComponent

      public LifecycleComponent()
      Creates a new LifecycleComponent
    • LifecycleComponent

      public LifecycleComponent(LifecyclePhase phase, LifecycleSchedule schedule, String kind, ComponentMetadata meta)
      full parameter constructor.
      Parameters:
      phase - The lifecycle phase.
      schedule - The lifecycle schedule.
      kind - The component type identifier.
      meta - The component metadata.
    • LifecycleComponent

      public LifecycleComponent(LifecycleComponent other)
      Copy Constructor. Note that references will remain as is rather than be copied.
      Parameters:
      other - the object to be copied.
  • Method Details

    • copyMe

      public abstract AbstractComponent copyMe()
      make a clone of the object taking into account current polymorhic type.
      Specified by:
      copyMe in class AbstractComponent
      Returns:
      the cloned object.
    • updateUsing

      public void updateUsing(LifecycleComponent other)
      Update this object with the content of the given object. Note that references will remain as is rather than be copied.
      Parameters:
      other - the object to be copied.
    • getPhase

      public LifecyclePhase getPhase()
      Returns phase Attribute.
      Returns:
      phase Attribute
    • setPhase

      public void setPhase(LifecyclePhase pPhase)
      Set phase Attribute.
      Parameters:
      pPhase - value to set
    • withPhase

      public LifecycleComponent withPhase(LifecyclePhase pPhase)
      fluent setter for phase Attribute.
      Parameters:
      pPhase - value to set
      Returns:
      LifecycleComponent
    • getSchedule

      public LifecycleSchedule getSchedule()
      Returns schedule Attribute.
      Returns:
      schedule Attribute
    • setSchedule

      public void setSchedule(LifecycleSchedule pSchedule)
      Set schedule Attribute.
      Parameters:
      pSchedule - value to set
    • withSchedule

      public LifecycleComponent withSchedule(LifecycleSchedule pSchedule)
      fluent setter for schedule Attribute.
      Parameters:
      pSchedule - value to set
      Returns:
      LifecycleComponent
    • forceLoad

      public void forceLoad()
      Specified by:
      forceLoad in interface org.ivoa.vodml.jpa.JPAManipulations
      Overrides:
      forceLoad in class AbstractComponent