Class Flags

java.lang.Object
org.apache.commons.validator.util.Flags
All Implemented Interfaces:
Serializable, Cloneable

public class Flags extends Object implements Serializable, Cloneable
Represents a collection of 64 boolean (on/off) flags. Individual flags are represented by powers of 2. For example,
Flag 1 = 1
Flag 2 = 2
Flag 3 = 4
Flag 4 = 8

or using shift operator to make numbering easier:
Flag 1 = 1 << 0
Flag 2 = 1 << 1
Flag 3 = 1 << 2
Flag 4 = 1 << 3

There cannot be a flag with a value of 3 because that represents Flag 1 and Flag 2 both being on/true.

See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    Create a new Flags object.
    Flags(long flags)
    Initialize a new Flags object with the given flags.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Turn off all flags.
    Clone this Flags object.
    boolean
    Tests if two Flags objects are in the same state.
    long
    Returns the current flags.
    int
    The hash code is based on the current state of the flags.
    boolean
    isOff(long flag)
    Tests whether the given flag is off.
    boolean
    isOn(long flag)
    Tests whether the given flag is on.
    Returns a 64 length String with the first flag on the right and the 64th flag on the left.
    void
    turnOff(long flag)
    Turns off the given flag.
    void
    Turn off all flags.
    void
    turnOn(long flag)
    Turns on the given flag.
    void
    Turn on all 64 flags.

    Methods inherited from class java.lang.Object

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

    • Flags

      public Flags()
      Create a new Flags object.
    • Flags

      public Flags(long flags)
      Initialize a new Flags object with the given flags.
      Parameters:
      flags - collection of boolean flags to represent.
  • Method Details

    • clear

      public void clear()
      Turn off all flags. This is a synonym for turnOffAll().
      Since:
      1.1.1
    • clone

      public Object clone()
      Clone this Flags object.
      Overrides:
      clone in class Object
      Returns:
      a copy of this object.
      See Also:
    • equals

      public boolean equals(Object obj)
      Tests if two Flags objects are in the same state.
      Overrides:
      equals in class Object
      Parameters:
      obj - object being tested
      Returns:
      whether the objects are equal.
      See Also:
    • getFlags

      public long getFlags()
      Returns the current flags.
      Returns:
      collection of boolean flags represented.
    • hashCode

      public int hashCode()
      The hash code is based on the current state of the flags.
      Overrides:
      hashCode in class Object
      Returns:
      the hash code for this object.
      See Also:
    • isOff

      public boolean isOff(long flag)
      Tests whether the given flag is off. If the flag is not a power of 2 (ie. 3) this tests whether the combination of flags is off.
      Parameters:
      flag - Flag value to check.
      Returns:
      whether the specified flag value is off.
    • isOn

      public boolean isOn(long flag)
      Tests whether the given flag is on. If the flag is not a power of 2 (ie. 3) this tests whether the combination of flags is on.
      Parameters:
      flag - Flag value to check.
      Returns:
      whether the specified flag value is on.
    • toString

      public String toString()
      Returns a 64 length String with the first flag on the right and the 64th flag on the left. A 1 indicates the flag is on, a 0 means it's off.
      Overrides:
      toString in class Object
      Returns:
      string representation of this object.
    • turnOff

      public void turnOff(long flag)
      Turns off the given flag. If the flag is not a power of 2 (ie. 3) this turns off multiple flags.
      Parameters:
      flag - Flag value to turn off.
    • turnOffAll

      public void turnOffAll()
      Turn off all flags.
    • turnOn

      public void turnOn(long flag)
      Turns on the given flag. If the flag is not a power of 2 (ie. 3) this turns on multiple flags.
      Parameters:
      flag - Flag value to turn on.
    • turnOnAll

      public void turnOnAll()
      Turn on all 64 flags.