Class AbstractComponent

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

@Entity @VoDml(id="execbroker:AbstractComponent", role=objectType) public abstract class AbstractComponent extends Object implements org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
Abstract base class for all our components. objectType: AbstractComponent
  • Field Details

    • _id

      protected Long _id
      inserted database key
    • kind

      @VoDml(id="execbroker:AbstractComponent.kind", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String kind
      The component type identifier. : Attribute kind : multiplicity 1
    • meta

      @VoDml(id="execbroker:AbstractComponent.meta", role=composition, type="execbroker:ComponentMetadata", typeRole=objectType) protected ComponentMetadata meta
      The component metadata. composition meta : ( Multiplicity : 1 )
  • Constructor Details

    • AbstractComponent

      public AbstractComponent()
      Creates a new AbstractComponent
    • AbstractComponent

      public AbstractComponent(String kind, ComponentMetadata meta)
      full parameter constructor.
      Parameters:
      kind - The component type identifier.
      meta - The component metadata.
    • AbstractComponent

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

    • getId

      public Long getId()
      Specified by:
      getId in interface org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
      Returns:
      the id
    • copyMe

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

      public void updateUsing(AbstractComponent 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.
    • getKind

      public String getKind()
      Returns kind Attribute.
      Returns:
      kind Attribute
    • setKind

      public void setKind(String pKind)
      Set kind Attribute.
      Parameters:
      pKind - value to set
    • withKind

      public AbstractComponent withKind(String pKind)
      fluent setter for kind Attribute.
      Parameters:
      pKind - value to set
      Returns:
      AbstractComponent
    • getMeta

      public ComponentMetadata getMeta()
      Returns meta Attribute.
      Returns:
      meta Attribute
    • setMeta

      public void setMeta(ComponentMetadata pMeta)
      Set meta Attribute.
      Parameters:
      pMeta - value to set
    • withMeta

      public AbstractComponent withMeta(ComponentMetadata pMeta)
      fluent setter for meta Attribute.
      Parameters:
      pMeta - value to set
      Returns:
      AbstractComponent
    • forceLoad

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