Class PerformanceProfile

java.lang.Object
org.ivoa.dm.tool.PerformanceProfile
All Implemented Interfaces:
org.ivoa.vodml.jpa.JPAManipulations, org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>

@Entity @VoDml(id="tool:PerformanceProfile", role=objectType) public class PerformanceProfile extends Object implements org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
A performance profile for Tool execution. objectType: PerformanceProfile
  • Field Details

    • _id

      protected Long _id
      inserted database key
    • processorScaling

      @VoDml(id="tool:PerformanceProfile.processorScaling", role=composition, type="tool:ProcessorScaling", typeRole=objectType) protected ProcessorScaling processorScaling
      the scaling behaviour of the tool with respect to the number of processors used. composition processorScaling : ( Multiplicity : 1 )
    • dataScaling

      @VoDml(id="tool:PerformanceProfile.dataScaling", role=composition, type="tool:DataScaling", typeRole=objectType) protected DataScaling dataScaling
      the scaling behaviour of the tool with respect to the data size of the input data. composition dataScaling : ( Multiplicity : 1 )
  • Constructor Details

    • PerformanceProfile

      public PerformanceProfile()
      Creates a new PerformanceProfile
    • PerformanceProfile

      public PerformanceProfile(ProcessorScaling processorScaling, DataScaling dataScaling)
      full parameter constructor.
      Parameters:
      processorScaling - the scaling behaviour of the tool with respect to the number of processors used.
      dataScaling - the scaling behaviour of the tool with respect to the data size of the input data.
    • PerformanceProfile

      public PerformanceProfile(PerformanceProfile 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
    • updateUsing

      public void updateUsing(PerformanceProfile 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.
    • getProcessorScaling

      public ProcessorScaling getProcessorScaling()
      Returns processorScaling Attribute.
      Returns:
      processorScaling Attribute
    • setProcessorScaling

      public void setProcessorScaling(ProcessorScaling pProcessorScaling)
      Set processorScaling Attribute.
      Parameters:
      pProcessorScaling - value to set
    • withProcessorScaling

      public PerformanceProfile withProcessorScaling(ProcessorScaling pProcessorScaling)
      fluent setter for processorScaling Attribute.
      Parameters:
      pProcessorScaling - value to set
      Returns:
      PerformanceProfile
    • getDataScaling

      public DataScaling getDataScaling()
      Returns dataScaling Attribute.
      Returns:
      dataScaling Attribute
    • setDataScaling

      public void setDataScaling(DataScaling pDataScaling)
      Set dataScaling Attribute.
      Parameters:
      pDataScaling - value to set
    • withDataScaling

      public PerformanceProfile withDataScaling(DataScaling pDataScaling)
      fluent setter for dataScaling Attribute.
      Parameters:
      pDataScaling - value to set
      Returns:
      PerformanceProfile
    • createPerformanceProfile

      public static PerformanceProfile createPerformanceProfile(Consumer<PerformanceProfile.PerformanceProfileBuilder> f)
      create a PerformanceProfile in functional builder style.
      Parameters:
      f - the functional builder.
      Returns:
      an object initialized from the builder.
    • forceLoad

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

      public void delete(jakarta.persistence.EntityManager em)
      Specified by:
      delete in interface org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>