/**
* This file was auto-generated by mofcomp -j version 1.0.0 on Wed Jan 12
* 09:21:06 CET 2011.
*/
package org.opennaas.extensions.router.model;
import java.io.*;
import java.lang.Exception;
/**
* This Class contains accessor and mutator methods for all properties defined in the CIM class WRRSchedulingElement as well as methods comparable to
* the invokeMethods defined for this class. This Class implements the WRRSchedulingElementBean Interface. The CIM class WRRSchedulingElement is
* described as follows:
*
* This class is a subclass of the abstract class SchedulingElement. It introduces a new property, WeightingFactor, to give some inputs a higher
* probability of being serviced than other inputs. It also introduces a Priority property, to serve as a tiebreaker to be used when inputs have equal
* weighting factors. As is the case with all subclasses of SchedulingElement, the input associated with an instance of WRRSchedulingElement is of one
* of two types: either a queue, or another scheduler. Because scheduling of this type is always work conserving, the inherited boolean property,
* WorkConserving, is restricted to TRUE in this class.
*/
public class WRRSchedulingElement extends SchedulingElement implements
Serializable {
/**
* This constructor creates a WRRSchedulingElementBeanImpl Class which implements the WRRSchedulingElementBean Interface, and encapsulates the CIM
* class WRRSchedulingElement in a Java Bean. The CIM class WRRSchedulingElement is described as follows:
*
* This class is a subclass of the abstract class SchedulingElement. It introduces a new property, WeightingFactor, to give some inputs a higher
* probability of being serviced than other inputs. It also introduces a Priority property, to serve as a tiebreaker to be used when inputs have
* equal weighting factors. As is the case with all subclasses of SchedulingElement, the input associated with an instance of WRRSchedulingElement
* is of one of two types: either a queue, or another scheduler. Because scheduling of this type is always work conserving, the inherited boolean
* property, WorkConserving, is restricted to TRUE in this class.
*/
public WRRSchedulingElement() {
};
/**
* The following constants are defined for use with the ValueMap/Values qualified property workConserving.
*/
private boolean workConserving;
/**
* This method returns the WRRSchedulingElement.workConserving property value. This property is described as follows:
*
* A boolean property indicating whether the PacketSchedulingService tied to this instance (by the ElementInSchedulingService aggregation) is
* treating the queue/input tied to this instance, in a work-conserving manner. The queue/input is indicated by either the QueueToSchedule or
* SchedulingServiceToSchedule association. Note that this property is writeable, indicating that an administrator can change the behavior of the
* SchedulingElement - but only for those elements that can operate in a non-work conserving mode.
*
* @return boolean current workConserving property value
* @exception Exception
*/
@Override
public boolean isWorkConserving() {
return this.workConserving;
} // getWorkConserving
/**
* This method sets the WRRSchedulingElement.workConserving property value. This property is described as follows:
*
* A boolean property indicating whether the PacketSchedulingService tied to this instance (by the ElementInSchedulingService aggregation) is
* treating the queue/input tied to this instance, in a work-conserving manner. The queue/input is indicated by either the QueueToSchedule or
* SchedulingServiceToSchedule association. Note that this property is writeable, indicating that an administrator can change the behavior of the
* SchedulingElement - but only for those elements that can operate in a non-work conserving mode.
*
* @param boolean new workConserving property value
* @exception Exception
*/
@Override
public void setWorkConserving(boolean workConserving) {
this.workConserving = workConserving;
} // setWorkConserving
/**
* The following constants are defined for use with the ValueMap/Values qualified property weightingFactor.
*/
private long weightingFactor;
/**
* This method returns the WRRSchedulingElement.weightingFactor property value. This property is described as follows:
*
* A 32-bit bit unsigned integer defining the weighting factor that offers some inputs a higher probability of being serviced than other inputs.
* The property's minimum value is 0, its maximum value is 100000, and its Units are thousandths.
*
* @return long current weightingFactor property value
* @exception Exception
*/
public long getWeightingFactor() {
return this.weightingFactor;
} // getWeightingFactor
/**
* This method sets the WRRSchedulingElement.weightingFactor property value. This property is described as follows:
*
* A 32-bit bit unsigned integer defining the weighting factor that offers some inputs a higher probability of being serviced than other inputs.
* The property's minimum value is 0, its maximum value is 100000, and its Units are thousandths.
*
* @param long new weightingFactor property value
* @exception Exception
*/
public void setWeightingFactor(long weightingFactor) {
this.weightingFactor = weightingFactor;
} // setWeightingFactor
/**
* The following constants are defined for use with the ValueMap/Values qualified property priority.
*/
private int priority;
/**
* This method returns the WRRSchedulingElement.priority property value. This property is described as follows:
*
* A 16-bit bit unsigned integer which serves as a tiebreaker, in the event that two or more inputs have equal weights. A larger value represents
* a higher priority. While this condition may not occur in some implementations of a weighted round robin scheduler, many implementations require
* a priority to resolve an equal-weight condition. In the instances where this behavior is not necessary or is undesirable, the property may be
* left unspecified. If this property is specified for any of the WRRSchedulingElements associated with a PacketSchedulingService, then it MUST be
* specified for all WRRSchedulingElements for that PacketSchedulingService, and the property values for these WRRSchedulingElements MUST all be
* different.
*
* @return int current priority property value
* @exception Exception
*/
public int getPriority() {
return this.priority;
} // getPriority
/**
* This method sets the WRRSchedulingElement.priority property value. This property is described as follows:
*
* A 16-bit bit unsigned integer which serves as a tiebreaker, in the event that two or more inputs have equal weights. A larger value represents
* a higher priority. While this condition may not occur in some implementations of a weighted round robin scheduler, many implementations require
* a priority to resolve an equal-weight condition. In the instances where this behavior is not necessary or is undesirable, the property may be
* left unspecified. If this property is specified for any of the WRRSchedulingElements associated with a PacketSchedulingService, then it MUST be
* specified for all WRRSchedulingElements for that PacketSchedulingService, and the property values for these WRRSchedulingElements MUST all be
* different.
*
* @param int new priority property value
* @exception Exception
*/
public void setPriority(int priority) {
this.priority = priority;
} // setPriority
} // Class WRRSchedulingElement