Packages

class LimitedNumberSource extends NumberSource

A NumberSource is considered a master "pool" of numbers from which all numbers are available to be drawn. The numbers are considered to be exclusive.

Produce a series of numbers from 0 to a maximum number (inclusive) to be used as globally unique identifiers (GUIDs).

Source
LimitedNumberSource.scala
Exceptions thrown

IllegalArgumentException if max is less than zero (therefore the count of generated numbers is at most zero)

java.lang.NegativeArraySizeException if the count of numbers generated due to max is negative

Linear Supertypes
NumberSource, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LimitedNumberSource
  2. NumberSource
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new LimitedNumberSource(max: Int)

    max

    the highest number to be generated by this source; must be a positive integer or zero

    Exceptions thrown

    IllegalArgumentException if max is less than zero (therefore the count of generated numbers is at most zero)

    java.lang.NegativeArraySizeException if the count of numbers generated due to max is negative

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def Available(number: Int): Option[LoanedKey]

    Produce a modifiable wrapper for the Monitor for this number, only if the number has not been used.

    Produce a modifiable wrapper for the Monitor for this number, only if the number has not been used. The Monitor should be updated before being wrapped, if necessary.

    number

    the number

    returns

    the wrapped Monitor, or None

    Definition Classes
    LimitedNumberSourceNumberSource
  5. def Clear(): List[IdentifiableEntity]

    Reset all number Monitors so that their underlying number is not longer treated as assigned.

    Reset all number Monitors so that their underlying number is not longer treated as assigned. Perform some level of housecleaning to ensure that all dependencies are resolved in some manner. This is the only way to free Monitors that are marked as Restricted.

    returns

    a List of assignments maintained by all the currently-used number Monitors

    Definition Classes
    LimitedNumberSourceNumberSource
  6. def CountAvailable: Int

    The count of numbers that can still be drawn.

    The count of numbers that can still be drawn.

    returns

    the count

    Definition Classes
    LimitedNumberSourceNumberSource
  7. def CountUsed: Int

    The count of numbers that can not be drawn.

    The count of numbers that can not be drawn.

    returns

    the count

    Definition Classes
    LimitedNumberSourceNumberSource
  8. def FinalizeRestrictions: List[Int]

    Numbers from this source may not longer be marked as Restricted.

    Numbers from this source may not longer be marked as Restricted.

    returns

    the List of all numbers that have been restricted

    Definition Classes
    LimitedNumberSourceNumberSource
  9. def Get(number: Int): Option[SecureKey]

    Produce an un-modifiable wrapper for the Monitor for this number.

    Produce an un-modifiable wrapper for the Monitor for this number.

    number

    the number

    returns

    the wrapped Monitor

    Definition Classes
    LimitedNumberSourceNumberSource
  10. def Restrict(number: Int): Option[LoanedKey]

    Produce a modifiable wrapper for the Monitor for this number, only if the number has not been used.

    Produce a modifiable wrapper for the Monitor for this number, only if the number has not been used. This wrapped Monitor can only be assigned once and the number may not be Returned to this source.

    number

    the number

    returns

    the wrapped Monitor

    Definition Classes
    LimitedNumberSourceNumberSource
    Exceptions thrown

    ArrayIndexOutOfBoundsException if the requested number is above or below the range

  11. def Return(number: Int): Option[IdentifiableEntity]

    Consume the number of a Monitor and release that number from its previous assignment/use.

    Consume the number of a Monitor and release that number from its previous assignment/use.

    number

    the number

    returns

    any object previously using this number

    Definition Classes
    LimitedNumberSourceNumberSource
  12. def Return(monitor: LoanedKey): Option[IdentifiableEntity]

    Consume a wrapped Monitor and release its number from its previous assignment/use.

    Consume a wrapped Monitor and release its number from its previous assignment/use.

    monitor

    the Monitor

    returns

    any object previously using this Monitor

    Definition Classes
    NumberSource
  13. def Return(monitor: SecureKey): Option[IdentifiableEntity]

    Consume a wrapped Monitor and release its number from its previous assignment/use.

    Consume a wrapped Monitor and release its number from its previous assignment/use.

    monitor

    the Monitor

    returns

    any object previously using this Monitor

    Definition Classes
    NumberSource
  14. def Size: Int

    The count of numbers allocated to this source.

    The count of numbers allocated to this source.

    returns

    the count

    Definition Classes
    LimitedNumberSourceNumberSource
  15. def Test(number: Int): Boolean

    Is this number a member of this number source?

    Is this number a member of this number source?

    number

    the number

    returns

    true, if it is a member; false, otherwise

    Definition Classes
    NumberSource
  16. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  17. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  18. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  19. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  20. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  21. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  22. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  23. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  24. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  25. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  26. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  27. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  28. def toString(): String
    Definition Classes
    AnyRef → Any
  29. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  30. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  31. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from NumberSource

Inherited from AnyRef

Inherited from Any

Ungrouped