org.opends.server.admin
Class SizePropertyDefinition.Builder

java.lang.Object
  extended by org.opends.server.admin.PropertyDefinition.AbstractBuilder<java.lang.Long,SizePropertyDefinition>
      extended by org.opends.server.admin.SizePropertyDefinition.Builder
Enclosing class:
SizePropertyDefinition

public static class SizePropertyDefinition.Builder
extends PropertyDefinition.AbstractBuilder<java.lang.Long,SizePropertyDefinition>

An interface for incrementally constructing memory size property definitions.


Method Summary
protected  SizePropertyDefinition buildInstance(AbstractManagedObjectDefinition<?,?> d, java.lang.String propertyName, java.util.EnumSet<PropertyOption> options, AdministratorAction adminAction, DefaultBehaviorProvider<java.lang.Long> defaultBehavior)
          Build a property definition based on the properties of this builder.
 void setAllowUnlimited(boolean allowUnlimited)
          Specify whether or not this property definition will allow unlimited values (default is false).
 void setLowerLimit(long lowerLimit)
          Set the lower limit in bytes.
 void setLowerLimit(java.lang.String lowerLimit)
          Set the lower limit using a string representation of the limit.
 void setUpperLimit(java.lang.Long upperLimit)
          Set the upper limit in bytes.
 void setUpperLimit(java.lang.String upperLimit)
          Set the upper limit using a string representation of the limit.
 
Methods inherited from class org.opends.server.admin.PropertyDefinition.AbstractBuilder
getInstance, setAdministratorAction, setDefaultBehaviorProvider, setOption
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

setLowerLimit

public final void setLowerLimit(long lowerLimit)
                         throws java.lang.IllegalArgumentException
Set the lower limit in bytes.

Parameters:
lowerLimit - The new lower limit (must be >= 0) in bytes.
Throws:
java.lang.IllegalArgumentException - If a negative lower limit was specified, or if the lower limit is greater than the upper limit.

setLowerLimit

public final void setLowerLimit(java.lang.String lowerLimit)
                         throws java.lang.IllegalArgumentException
Set the lower limit using a string representation of the limit.

Parameters:
lowerLimit - The string representation of the new lower limit.
Throws:
java.lang.IllegalArgumentException - If the lower limit could not be parsed, or if a negative lower limit was specified, or the lower limit is greater than the upper limit.

setUpperLimit

public final void setUpperLimit(java.lang.Long upperLimit)
                         throws java.lang.IllegalArgumentException
Set the upper limit in bytes.

Parameters:
upperLimit - The new upper limit in bytes or null if there is no upper limit.
Throws:
java.lang.IllegalArgumentException - If the lower limit is greater than the upper limit.

setUpperLimit

public final void setUpperLimit(java.lang.String upperLimit)
                         throws java.lang.IllegalArgumentException
Set the upper limit using a string representation of the limit.

Parameters:
upperLimit - The string representation of the new upper limit, or null if there is no upper limit.
Throws:
java.lang.IllegalArgumentException - If the upper limit could not be parsed, or if the lower limit is greater than the upper limit.

setAllowUnlimited

public final void setAllowUnlimited(boolean allowUnlimited)
Specify whether or not this property definition will allow unlimited values (default is false).

Parameters:
allowUnlimited - true if the property will allow unlimited values, or false otherwise.

buildInstance

protected SizePropertyDefinition buildInstance(AbstractManagedObjectDefinition<?,?> d,
                                               java.lang.String propertyName,
                                               java.util.EnumSet<PropertyOption> options,
                                               AdministratorAction adminAction,
                                               DefaultBehaviorProvider<java.lang.Long> defaultBehavior)
Build a property definition based on the properties of this builder.

Specified by:
buildInstance in class PropertyDefinition.AbstractBuilder<java.lang.Long,SizePropertyDefinition>
Parameters:
d - The managed object definition associated with this property definition.
propertyName - The property name.
options - Options applicable to this definition.
adminAction - The administrator action.
defaultBehavior - The default behavior provider.
Returns:
The new property definition.