Packages

  • package root
    Definition Classes
    root
  • package csw
    Definition Classes
    root
  • package params

    This project is intended to hold reusable models and params used throughout the csw source code.

    Params

    This project is intended to hold reusable models and params used throughout the csw source code.

    This also provides out of the box support to cater to the diverse communication requirements. Consumer of this library will be able to create Commands, Events, States to store ParameterSets.

    Imp Packages

    Commands and Events

    This packages contains classes, traits and models used to create *commands* and *events*. These are all based on type-safe keys and items (a set of values with optional units). Each key has a specific type and the key's values must be of that type.

    Two types of csw.params.commands.Command are supported:

    Following are the concrete commands supported by csw:

    Two types of csw.params.events.Event are supported:

    core

    This package supports serialization and deserialization of commands, events and state variables in JSON format csw.params.core.formats.JsonSupport.

    Scala and Java APIs

    All the param and event classes are immutable. The set methods return a new instance of the object with a new item added and the get methods return an Option, in case the Key is not found. There are also value methods that return a value directly, throwing an exception if the key or value is not found.

    Key Types

    A set of standard key types and matching items are defined. Each key accepts one or more values of the given type.

    Following csw.params.core.generics.KeyType are supported by csw:

    +--------------+-------------------------+---------------------------+
    |  Primitive   |      Scala KeyType      |       Java KeyType        |
    +--------------+-------------------------+---------------------------+
    | Boolean      | KeyType.BooleanKey      | JKeyType.BooleanKey      |
    | Character    | KeyType.CharKey         | JKeyType.JCharKey        |
    | Byte         | KeyType.ByteKey         | JKeyType.ByteKey         |
    | Short        | KeyType.ShortKey        | JKeyType.ShortKey        |
    | Long         | KeyType.LongKey         | JKeyType.LongKey         |
    | Int          | KeyType.IntKey          | JKeyType.IntKey          |
    | Float        | KeyType.FloatKey        | JKeyType.FloatKey        |
    | Double       | KeyType.DoubleKey       | JKeyType.DoubleKey       |
    | String       | KeyType.StringKey       | JKeyType.StringKey       |
    | UtcTime      | KeyType.UTCTimeKey      | JKeyType.UTCTimeKey      |
    | TaiTime      | KeyType.TAITimeKey      | JKeyType.TAITimeKey      |
    | ----------   | ----------              | ----------               |
    | ByteArray    | KeyType.ByteArrayKey    | JKeyType.ByteArrayKey    |
    | ShortArray   | KeyType.ShortArrayKey   | JKeyType.ShortArrayKey   |
    | LongArray    | KeyType.LongArrayKey    | JKeyType.LongArrayKey    |
    | IntArray     | KeyType.IntArrayKey     | JKeyType.IntArrayKey     |
    | FloatArray   | KeyType.FloatArrayKey   | JKeyType.FloatArrayKey   |
    | DoubleArray  | KeyType.DoubleArrayKey  | JKeyType.DoubleArrayKey  |
    | ----------   | ----------              | ----------               |
    | ByteMatrix   | KeyType.ByteMatrixKey   | JKeyType.ByteMatrixKey   |
    | ShortMatrix  | KeyType.ShortMatrixKey  | JKeyType.ShortMatrixKey  |
    | LongMatrix   | KeyType.LongMatrixKey   | JKeyType.LongMatrixKey   |
    | IntMatrix    | KeyType.IntMatrixKey    | JKeyType.IntMatrixKey    |
    | FloatMatrix  | KeyType.FloatMatrixKey  | JKeyType.FloatMatrixKey  |
    | DoubleMatrix | KeyType.DoubleMatrixKey | JKeyType.DoubleMatrixKey |
    | ----------   | ----------              | ----------               |
    | Choice       | KeyType.ChoiceKey       | JKeyType.ChoiceKey       |
    +--------------+-------------------------+---------------------------+

    Detailed information about creating Keys and Parameters can be found here: https://tmtsoftware.github.io/csw/services/messages/keys-parameters.html

    Detailed information about creating commands can be found here: https://tmtsoftware.github.io/csw/services/messages/commands.html

    Detailed information about creating events can be found here: https://tmtsoftware.github.io/csw/services/messages/events.html

    Definition Classes
    csw
  • package core
    Definition Classes
    params
  • package generics
    Definition Classes
    core
  • ArrayKeyType
  • GChoiceKey
  • Key
  • KeyType
  • MatrixKeyType
  • Parameter
  • ParameterSetFilters
  • ParameterSetKeyData
  • ParameterSetType
  • SimpleKeyType
  • SimpleKeyTypeWithUnits

class GChoiceKey extends Key[Choice]

A key for a choice item similar to an enumeration

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. GChoiceKey
  2. Key
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new GChoiceKey(name: String, keyType: KeyType[Choice], units: Units, choices: Choices)

    name

    the name of the key

    keyType

    reference to an object of type KeyType[Choice]

    choices

    the available choices, the values set must be in the choices

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. def ->(value: Choice): Parameter[Choice]

    Sets the values for the key This definition enables writing code like this:

    Sets the values for the key This definition enables writing code like this:

    val setup = sc(
     prefix,
      key1 -> value1 withUnits UnitsOfMeasure.Deg,
      key2 -> value2  // with default units
    )
    returns

    a parameter containing the key name and one value (call withUnits() on the result to set the units)

    Definition Classes
    Key
  4. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. val choices: Choices
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def equals(that: Any): Boolean

    Equals this Key instance with other by the keyName

    Equals this Key instance with other by the keyName

    that

    the other Key instance that is to be equated against this Key instance

    returns

    a Boolean indicating whether two Key instances are equal or not

    Definition Classes
    Key → Equals → AnyRef → Any
  10. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  11. def hashCode(): Int
    Definition Classes
    Key → AnyRef → Any
  12. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  13. val keyName: String
    Definition Classes
    Key
  14. val keyType: KeyType[Choice]
    Definition Classes
    Key
  15. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  17. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  18. def productElementNames: Iterator[String]
    Definition Classes
    Product
  19. def set(value: Choice, values: Choice*): Parameter[Choice]

    Sets the values for the key using a variable number of arguments

    Sets the values for the key using a variable number of arguments

    values

    one or more values

    returns

    a parameter containing the key name, values

    Definition Classes
    GChoiceKeyKey
  20. def setAll(values: Array[Choice]): Parameter[Choice]

    Set values against this key

    Set values against this key

    values

    an Array of values

    returns

    an instance of Parameter[S] containing the key name, values (call withUnits() on the result to set the units)

    Definition Classes
    Key
  21. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  22. def toString(): String

    Returns a string representation of Key as keyName

    Returns a string representation of Key as keyName

    Definition Classes
    Key → AnyRef → Any
  23. val units: Units
    Definition Classes
    Key
  24. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  25. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  26. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from Key[Choice]

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped