java.lang.Object
java.lang.Number
edu.internet2.middleware.grouperClientExt.org.apache.commons.lang3.mutable.MutableLong
All Implemented Interfaces:
Mutable<Number>, Serializable, Comparable<MutableLong>

public class MutableLong extends Number implements Comparable<MutableLong>, Mutable<Number>
A mutable long wrapper.

Note that as MutableLong does not extend Long, it is not treated by String.format as a Long parameter.

Since:
2.1
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs a new MutableLong with the default value of zero.
    MutableLong(long value)
    Constructs a new MutableLong with the specified value.
    Constructs a new MutableLong with the specified value.
    Constructs a new MutableLong parsing the given string.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    add(long operand)
    Adds a value to the value of this instance.
    void
    add(Number operand)
    Adds a value to the value of this instance.
    long
    addAndGet(long operand)
    Increments this instance's value by operand; this method returns the value associated with the instance immediately after the addition operation.
    long
    addAndGet(Number operand)
    Increments this instance's value by operand; this method returns the value associated with the instance immediately after the addition operation.
    int
    Compares this mutable to another in ascending order.
    void
    Decrements the value.
    long
    Decrements this instance's value by 1; this method returns the value associated with the instance immediately after the decrement operation.
    double
    Returns the value of this MutableLong as a double.
    boolean
    Compares this object to the specified object.
    float
    Returns the value of this MutableLong as a float.
    long
    getAndAdd(long operand)
    Increments this instance's value by operand; this method returns the value associated with the instance immediately prior to the addition operation.
    long
    getAndAdd(Number operand)
    Increments this instance's value by operand; this method returns the value associated with the instance immediately prior to the addition operation.
    long
    Decrements this instance's value by 1; this method returns the value associated with the instance immediately prior to the decrement operation.
    long
    Increments this instance's value by 1; this method returns the value associated with the instance immediately prior to the increment operation.
    Gets the value as a Long instance.
    int
    Returns a suitable hash code for this mutable.
    void
    Increments the value.
    long
    Increments this instance's value by 1; this method returns the value associated with the instance immediately after the increment operation.
    int
    Returns the value of this MutableLong as an int.
    long
    Returns the value of this MutableLong as a long.
    void
    setValue(long value)
    Sets the value.
    void
    Sets the value from any Number instance.
    void
    subtract(long operand)
    Subtracts a value from the value of this instance.
    void
    subtract(Number operand)
    Subtracts a value from the value of this instance.
    Gets this mutable as an instance of Long.
    Returns the String value of this mutable.

    Methods inherited from class java.lang.Number

    byteValue, shortValue

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • MutableLong

      public MutableLong()
      Constructs a new MutableLong with the default value of zero.
    • MutableLong

      public MutableLong(long value)
      Constructs a new MutableLong with the specified value.
      Parameters:
      value - the initial value to store
    • MutableLong

      public MutableLong(Number value)
      Constructs a new MutableLong with the specified value.
      Parameters:
      value - the initial value to store, not null
      Throws:
      NullPointerException - if the object is null
    • MutableLong

      public MutableLong(String value)
      Constructs a new MutableLong parsing the given string.
      Parameters:
      value - the string to parse, not null
      Throws:
      NumberFormatException - if the string cannot be parsed into a long
      Since:
      2.5
  • Method Details

    • getValue

      public Long getValue()
      Gets the value as a Long instance.
      Specified by:
      getValue in interface Mutable<Number>
      Returns:
      the value as a Long, never null
    • setValue

      public void setValue(long value)
      Sets the value.
      Parameters:
      value - the value to set
    • setValue

      public void setValue(Number value)
      Sets the value from any Number instance.
      Specified by:
      setValue in interface Mutable<Number>
      Parameters:
      value - the value to set, not null
      Throws:
      NullPointerException - if the object is null
    • increment

      public void increment()
      Increments the value.
      Since:
      2.2
    • getAndIncrement

      public long getAndIncrement()
      Increments this instance's value by 1; this method returns the value associated with the instance immediately prior to the increment operation. This method is not thread safe.
      Returns:
      the value associated with the instance before it was incremented
      Since:
      3.5
    • incrementAndGet

      public long incrementAndGet()
      Increments this instance's value by 1; this method returns the value associated with the instance immediately after the increment operation. This method is not thread safe.
      Returns:
      the value associated with the instance after it is incremented
      Since:
      3.5
    • decrement

      public void decrement()
      Decrements the value.
      Since:
      2.2
    • getAndDecrement

      public long getAndDecrement()
      Decrements this instance's value by 1; this method returns the value associated with the instance immediately prior to the decrement operation. This method is not thread safe.
      Returns:
      the value associated with the instance before it was decremented
      Since:
      3.5
    • decrementAndGet

      public long decrementAndGet()
      Decrements this instance's value by 1; this method returns the value associated with the instance immediately after the decrement operation. This method is not thread safe.
      Returns:
      the value associated with the instance after it is decremented
      Since:
      3.5
    • add

      public void add(long operand)
      Adds a value to the value of this instance.
      Parameters:
      operand - the value to add, not null
      Since:
      2.2
    • add

      public void add(Number operand)
      Adds a value to the value of this instance.
      Parameters:
      operand - the value to add, not null
      Throws:
      NullPointerException - if the object is null
      Since:
      2.2
    • subtract

      public void subtract(long operand)
      Subtracts a value from the value of this instance.
      Parameters:
      operand - the value to subtract, not null
      Since:
      2.2
    • subtract

      public void subtract(Number operand)
      Subtracts a value from the value of this instance.
      Parameters:
      operand - the value to subtract, not null
      Throws:
      NullPointerException - if the object is null
      Since:
      2.2
    • addAndGet

      public long addAndGet(long operand)
      Increments this instance's value by operand; this method returns the value associated with the instance immediately after the addition operation. This method is not thread safe.
      Parameters:
      operand - the quantity to add, not null
      Returns:
      the value associated with this instance after adding the operand
      Since:
      3.5
    • addAndGet

      public long addAndGet(Number operand)
      Increments this instance's value by operand; this method returns the value associated with the instance immediately after the addition operation. This method is not thread safe.
      Parameters:
      operand - the quantity to add, not null
      Returns:
      the value associated with this instance after adding the operand
      Throws:
      NullPointerException - if operand is null
      Since:
      3.5
    • getAndAdd

      public long getAndAdd(long operand)
      Increments this instance's value by operand; this method returns the value associated with the instance immediately prior to the addition operation. This method is not thread safe.
      Parameters:
      operand - the quantity to add, not null
      Returns:
      the value associated with this instance immediately before the operand was added
      Since:
      3.5
    • getAndAdd

      public long getAndAdd(Number operand)
      Increments this instance's value by operand; this method returns the value associated with the instance immediately prior to the addition operation. This method is not thread safe.
      Parameters:
      operand - the quantity to add, not null
      Returns:
      the value associated with this instance immediately before the operand was added
      Throws:
      NullPointerException - if operand is null
      Since:
      3.5
    • intValue

      public int intValue()
      Returns the value of this MutableLong as an int.
      Specified by:
      intValue in class Number
      Returns:
      the numeric value represented by this object after conversion to type int.
    • longValue

      public long longValue()
      Returns the value of this MutableLong as a long.
      Specified by:
      longValue in class Number
      Returns:
      the numeric value represented by this object after conversion to type long.
    • floatValue

      public float floatValue()
      Returns the value of this MutableLong as a float.
      Specified by:
      floatValue in class Number
      Returns:
      the numeric value represented by this object after conversion to type float.
    • doubleValue

      public double doubleValue()
      Returns the value of this MutableLong as a double.
      Specified by:
      doubleValue in class Number
      Returns:
      the numeric value represented by this object after conversion to type double.
    • toLong

      public Long toLong()
      Gets this mutable as an instance of Long.
      Returns:
      a Long instance containing the value from this mutable, never null
    • equals

      public boolean equals(Object obj)
      Compares this object to the specified object. The result is true if and only if the argument is not null and is a MutableLong object that contains the same long value as this object.
      Overrides:
      equals in class Object
      Parameters:
      obj - the object to compare with, null returns false
      Returns:
      true if the objects are the same; false otherwise.
    • hashCode

      public int hashCode()
      Returns a suitable hash code for this mutable.
      Overrides:
      hashCode in class Object
      Returns:
      a suitable hash code
    • compareTo

      public int compareTo(MutableLong other)
      Compares this mutable to another in ascending order.
      Specified by:
      compareTo in interface Comparable<MutableLong>
      Parameters:
      other - the other mutable to compare to, not null
      Returns:
      negative if this is less, zero if equal, positive if greater
    • toString

      public String toString()
      Returns the String value of this mutable.
      Overrides:
      toString in class Object
      Returns:
      the mutable value as a string