com.ace.moab.api.credential.qos
Class QOSCredentialInformation

java.lang.Object
  extended by com.ace.moab.api.credential.qos.QOSCredentialInformation

public class QOSCredentialInformation
extends java.lang.Object

Represents the QOS information that belongs only to credentials of CredentialType.QOS

Author:
Scott Brown & Nate Seeley

Constructor Summary
QOSCredentialInformation()
          Default Constructor: no QOS information set.
 
Method Summary
 double getAccessResourcesBLThreshold()
           
 long getAccessResourcesQTThreshold()
          Returns the queue time in seconds that must be met to allow the QoS to access reservations with it as part of the ACL.
 double getAccessResourcesXFThreshold()
          Returns the expansion factor that must be met to allow the QoS to access reservations with it as part of the ACL.
 long getCreateReservationQTThreshold()
          Returns the queue time in seconds that must be reached by jobs of the associated QoS before the job has access to a reservation with the QoS in the ACL.
 double getCreateReservationXFThreshold()
          Returns the expansion factor that must be reached by jobs of the associated QoS before the job has access to a reservation with the QoS in the ACL.
 int getExpansionFactorWeight()
          Gets the expansion factor subcomponent weight.
 double getPowerBLThreshold()
          Returns the total backlog for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.
 long getPowerQTThreshold()
          Returns the total queue time in seconds for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.
 double getPowerXFThreshold()
          Returns the total expansion factor for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.
 long getPreemptionQTThreshold()
          Returns the total queue time in seconds for a job running with the associated QoS to hit before the job gains preemptor status.
 double getPreemptionXFThreshold()
          Returns the expansion factor for a job running with the associated QoS to hit before the job gains preemptor status.
 long getPriorityQTThreshold()
          Returns the queue time in seconds target affecting a job's target priority component and QoS delivered.
 double getPriorityXFThreshold()
          Returns the expansion factor target affecting a job's target priority component and QoS delivered.
 QOSFlags getQFlags()
          Returns the flags associated with this QoS.
 int getQueueTimeWeight()
          Returns the weighted factor to apply to a job's priority when using this QoS.
 long getTriggerQTThreshold()
          Returns the number of queue time seconds that must be met to allow the QoS to fire triggers' failure variables attached to it.
 double getTriggerXFThreshold()
          Returns the expansion factor that must be met to allow the QoS to fire triggers' failure variables attached to it.
 boolean hasThreshold()
          Returns true if the QoS has at least one threshold value set.
 void setAccessResourcesBLThreshold(double accessResourcesBLThreshold)
          Sets the number of backlog hours that must be met to allow the QoS to access reservations with it as part of the ACL.
 void setAccessResourcesQTThreshold(long accessResourcesQTThreshold)
          Sets the queue time in seconds that must be met to allow the QoS to access reservations with it as part of the ACL.
 void setAccessResourcesXFThreshold(double accessResourcesXFThreshold)
          Sets the expansion factor that must be met to allow the QoS to access reservations with it as part of the ACL.
 void setCreateReservationQTThreshold(long createReservationQTThreshold)
          Sets the queue time in seconds that must be reached by jobs of the associated QoS before the job has access to a reservation with the QoS in the ACL.
 void setCreateReservationXFThreshold(double createReservationXFThreshold)
          Sets the expansion factor that must be reached by jobs of the associated QoS before the job has access to a reservation with the QoS in the ACL.
 void setDefaultValues(QOSCredentialInformation other)
          Sets QOS Credential Default Values.
 void setExpansionFactorWeight(int xFactorWeight)
          Sets the expansion factor subcomponent weight.
 void setPowerBLThreshold(double powerBLThreshold)
          Sets the total backlog for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.
 void setPowerQTThreshold(long powerQTThreshold)
          Sets the total queue time in seconds for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.
 void setPowerXFThreshold(double powerXFThreshold)
          Sets the total expansion factor for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.
 void setPreemptionQTThreshold(long preemptionQTThreshold)
          Sets the total queue time in seconds for a job running with the associated QoS to hit before the job gains preemptor status.
 void setPreemptionXFThreshold(double preemptionXFThreshold)
          Sets the total expansion factor for a job running with the associated QoS to hit before the job gains preemptor status.
 void setPriorityQTThreshold(long priorityQTThreshold)
          Sets the queue time in seconds target affecting a job's target priority component and QoS delivered.
 void setPriorityXFThreshold(double priorityXFThreshold)
          Sets the expansion factor target affecting a job's target priority component and QoS delivered.
 void setQFlags(QOSFlags qosFlags)
          Sets the flags of this QoS.
 void setQueueTimeWeight(int qTimeWeight)
          Sets the weighted factor to apply to a job's priority when using this QoS.
 void setTriggerQTThreshold(long triggerQTThreshold)
          Sets the number of queue time hours that must be met to allow the QoS to fire triggers' failure variables attached to it.
 void setTriggerXFThreshold(double triggerXFThreshold)
          Sets the expansion factor that must be met to allow the QoS to fire triggers' failure variables attached to it.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

QOSCredentialInformation

public QOSCredentialInformation()
Default Constructor: no QOS information set.

Method Detail

getAccessResourcesBLThreshold

public double getAccessResourcesBLThreshold()
Returns:
the accessResourcesBLThreshold

getAccessResourcesQTThreshold

public long getAccessResourcesQTThreshold()
Returns the queue time in seconds that must be met to allow the QoS to access reservations with it as part of the ACL.

Returns:
the queue time in seconds that must be met to allow the QoS to access reservations with it as part of the ACL.

getAccessResourcesXFThreshold

public double getAccessResourcesXFThreshold()
Returns the expansion factor that must be met to allow the QoS to access reservations with it as part of the ACL.

Returns:
the expansion factor that must be met to allow the QoS to access reservations with it as part of the ACL.

getCreateReservationQTThreshold

public long getCreateReservationQTThreshold()
Returns the queue time in seconds that must be reached by jobs of the associated QoS before the job has access to a reservation with the QoS in the ACL.

Returns:
the queue time in seconds that must be reached by jobs of the associated QoS before the job has access to a reservation with the QoS in the ACL.

getCreateReservationXFThreshold

public double getCreateReservationXFThreshold()
Returns the expansion factor that must be reached by jobs of the associated QoS before the job has access to a reservation with the QoS in the ACL.

Returns:
the expansion factor that must be reached by jobs of the associated QoS before the job has access to a reservation with the QoS in the ACL.

getExpansionFactorWeight

public int getExpansionFactorWeight()
Gets the expansion factor subcomponent weight. Like queue time, the effective XFactor subcomponent weight is the sum of two weights, the XFACTORWEIGHT parameter and the QoS-specific XFWEIGHT setting.

Returns:
the expansion factor subcomponent weight

getPowerBLThreshold

public double getPowerBLThreshold()
Returns the total backlog for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.

Returns:
the total backlog for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.
Since:
Moab 5.3.0

getPowerQTThreshold

public long getPowerQTThreshold()
Returns the total queue time in seconds for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.

Returns:
the total queue time in seconds for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.
Since:
Moab 5.3.0

getPowerXFThreshold

public double getPowerXFThreshold()
Returns the total expansion factor for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.

Returns:
the total expansion factor for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.
Since:
Moab 5.3.0

getPreemptionQTThreshold

public long getPreemptionQTThreshold()
Returns the total queue time in seconds for a job running with the associated QoS to hit before the job gains preemptor status.

Returns:
the total queue time in seconds for a job running with the associated QoS to hit before the job gains preemptor status.

getPreemptionXFThreshold

public double getPreemptionXFThreshold()
Returns the expansion factor for a job running with the associated QoS to hit before the job gains preemptor status.

Returns:
the total expansion factor for a job running with the associated QoS to hit before the job gains preemptor status.

getPriorityQTThreshold

public long getPriorityQTThreshold()
Returns the queue time in seconds target affecting a job's target priority component and QoS delivered.

Returns:
the queue time in seconds target affecting a job's target priority component and QoS delivered.

getPriorityXFThreshold

public double getPriorityXFThreshold()
Returns the expansion factor target affecting a job's target priority component and QoS delivered.

Returns:
the expansion factor target affecting a job's target priority component and QoS delivered.

getQFlags

public QOSFlags getQFlags()
Returns the flags associated with this QoS. Cannot be null.

Returns:
the flags associated with this QoS. Cannot be null.

getQueueTimeWeight

public int getQueueTimeWeight()
Returns the weighted factor to apply to a job's priority when using this QoS.

Returns:
the weighted factor to apply to a job's priority when using this QoS.

getTriggerQTThreshold

public long getTriggerQTThreshold()
Returns the number of queue time seconds that must be met to allow the QoS to fire triggers' failure variables attached to it.

Returns:
the number of queue time seconds that must be met to allow the QoS to fire triggers' failure variables attached to it.

getTriggerXFThreshold

public double getTriggerXFThreshold()
Returns the expansion factor that must be met to allow the QoS to fire triggers' failure variables attached to it.

Returns:
the expansion factor that must be met to allow the QoS to fire triggers' failure variables attached to it.
Since:
Moab 5.3.0

hasThreshold

public boolean hasThreshold()
Returns true if the QoS has at least one threshold value set.

Returns:
true if the QoS has at least one threshold value set.

setAccessResourcesBLThreshold

public void setAccessResourcesBLThreshold(double accessResourcesBLThreshold)
                                   throws InvalidMoabArgumentException
Sets the number of backlog hours that must be met to allow the QoS to access reservations with it as part of the ACL.

Parameters:
accessResourcesBLThreshold - the backlog access resources threshold
Throws:
InvalidMoabArgumentException - thrown if the threshold is less than 0.

setAccessResourcesQTThreshold

public void setAccessResourcesQTThreshold(long accessResourcesQTThreshold)
                                   throws InvalidMoabArgumentException
Sets the queue time in seconds that must be met to allow the QoS to access reservations with it as part of the ACL.

Parameters:
accessResourcesQTThreshold - the queue time in seconds that must be met to allow the QoS to access reservations with it as part of the ACL. Must be greater than or equal to 0.
Throws:
InvalidMoabArgumentException - thrown if the threshold is less than 0.

setAccessResourcesXFThreshold

public void setAccessResourcesXFThreshold(double accessResourcesXFThreshold)
                                   throws InvalidMoabArgumentException
Sets the expansion factor that must be met to allow the QoS to access reservations with it as part of the ACL.

Parameters:
accessResourcesXFThreshold - the expansion factor must be met to allow the QoS to access reservations with it as part of the ACL. Must be greater than or equal to 0.
Throws:
InvalidMoabArgumentException - thrown if the threshold is less than 0.

setCreateReservationQTThreshold

public void setCreateReservationQTThreshold(long createReservationQTThreshold)
                                     throws InvalidMoabArgumentException
Sets the queue time in seconds that must be reached by jobs of the associated QoS before the job has access to a reservation with the QoS in the ACL.

Parameters:
createReservationQTThreshold - the queue time in seconds that must be reached by jobs of the associated QoS before the job has access to a reservation with the QoS in the ACL.
Throws:
InvalidMoabArgumentException - thrown if the threshold is less than 0.

setCreateReservationXFThreshold

public void setCreateReservationXFThreshold(double createReservationXFThreshold)
                                     throws InvalidMoabArgumentException
Sets the expansion factor that must be reached by jobs of the associated QoS before the job has access to a reservation with the QoS in the ACL.

Parameters:
createReservationXFThreshold - the expansion factor that must be reached by jobs of the associated QoS before the job has access to a reservation with the QoS in the ACL.
Throws:
InvalidMoabArgumentException - thrown if the threshold is less than 0.

setDefaultValues

public void setDefaultValues(QOSCredentialInformation other)
                      throws InvalidMoabArgumentException
Sets QOS Credential Default Values. For every object not explicitly set, this method sets the attributes to equal that of the other QOSCredential object. This is useful in Moab where a user can specify default values but can explicitly set other attributes that override the defaults. This method checks each attribute to see if it has already been set, and if not sets the attribute to equal that of the other QOSCredential object.

Parameters:
other - The object that contains all QOS information that will be used in the defaults of the original object
Throws:
InvalidMoabArgumentException - If the other information is invalid, this exception will be thrown

setExpansionFactorWeight

public void setExpansionFactorWeight(int xFactorWeight)
Sets the expansion factor subcomponent weight. Like queue time, the effective XFactor subcomponent weight is the sum of two weights, the XFACTORWEIGHT parameter and the QoS-specific XFWEIGHT setting.

Parameters:
xFactorWeight - The expansion factor subcomponent weight.

setPowerBLThreshold

public void setPowerBLThreshold(double powerBLThreshold)
                         throws InvalidMoabArgumentException
Sets the total backlog for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.

Parameters:
powerBLThreshold - the total backlog for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.
Throws:
InvalidMoabArgumentException - thrown if the power backlog threshold is less than 0.
Since:
Moab 5.3.0

setPowerQTThreshold

public void setPowerQTThreshold(long powerQTThreshold)
                         throws InvalidMoabArgumentException
Sets the total queue time in seconds for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.

Parameters:
powerQTThreshold - the total queue time seconds for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.
Throws:
InvalidMoabArgumentException - thrown if the power queue time threshold is less than 0.
Since:
Moab 5.3.0

setPowerXFThreshold

public void setPowerXFThreshold(double powerXFThreshold)
                         throws InvalidMoabArgumentException
Sets the total expansion factor for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.

Parameters:
powerXFThreshold - the total expansion factor for a job running with the associated QoS to hit before nodes are powered on to meet its SLA agreements.
Throws:
InvalidMoabArgumentException - thrown if the power expansion factor threshold is less than 0.
Since:
Moab 5.3.0

setPreemptionQTThreshold

public void setPreemptionQTThreshold(long preemptionQTThreshold)
                              throws InvalidMoabArgumentException
Sets the total queue time in seconds for a job running with the associated QoS to hit before the job gains preemptor status.

Parameters:
preemptionQTThreshold - the total queue time in seconds for a job running with the associated QoS to hit before the job gains preemptor status.
Throws:
InvalidMoabArgumentException - thrown if the threshold is less than 0.

setPreemptionXFThreshold

public void setPreemptionXFThreshold(double preemptionXFThreshold)
                              throws InvalidMoabArgumentException
Sets the total expansion factor for a job running with the associated QoS to hit before the job gains preemptor status.

Parameters:
preemptionXFThreshold - the total expansion factor for a job running with the associated QoS to hit before the job gains preemptor status.
Throws:
InvalidMoabArgumentException - thrown if the threshold is less than 0.

setPriorityQTThreshold

public void setPriorityQTThreshold(long priorityQTThreshold)
                            throws InvalidMoabArgumentException
Sets the queue time in seconds target affecting a job's target priority component and QoS delivered.

Parameters:
priorityQTThreshold - the queue time in seconds target affecting a job's target priority component and QoS delivered.
Throws:
InvalidMoabArgumentException - thrown if the threshold is less than 0.

setPriorityXFThreshold

public void setPriorityXFThreshold(double priorityXFThreshold)
                            throws InvalidMoabArgumentException
Sets the expansion factor target affecting a job's target priority component and QoS delivered.

Parameters:
priorityXFThreshold - the expansion factor target affecting a job's target priority component and QoS delivered.
Throws:
InvalidMoabArgumentException - thrown if the threshold is less than 0.

setQFlags

public void setQFlags(QOSFlags qosFlags)
               throws InvalidMoabArgumentException
Sets the flags of this QoS. Cannot be null.

Parameters:
qosFlags - the QoS flags for this QoS.
Throws:
InvalidMoabArgumentException - thrown if qosFlags is null.

setQueueTimeWeight

public void setQueueTimeWeight(int qTimeWeight)
Sets the weighted factor to apply to a job's priority when using this QoS.

Parameters:
qTimeWeight - the weighted factor to apply to a job's priority when using this QoS.

setTriggerQTThreshold

public void setTriggerQTThreshold(long triggerQTThreshold)
                           throws InvalidMoabArgumentException
Sets the number of queue time hours that must be met to allow the QoS to fire triggers' failure variables attached to it.

Parameters:
triggerQTThreshold - the queue time trigger threshold
Throws:
InvalidMoabArgumentException - thrown if the threshold is less than 0.

setTriggerXFThreshold

public void setTriggerXFThreshold(double triggerXFThreshold)
                           throws InvalidMoabArgumentException
Sets the expansion factor that must be met to allow the QoS to fire triggers' failure variables attached to it.

Parameters:
triggerXFThreshold - the expansion factor that must be met to allow the QoS to fire triggers' failure variables attached to it.
Throws:
InvalidMoabArugmentException - thrown if the trigger expansion factor threshold is less than 0.
InvalidMoabArgumentException
Since:
Moab 5.3.0


Copyright © 2001-2009 Cluster Resources, Inc. All Rights Reserved.