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 states
    Definition Classes
    core
  • CurrentState
  • CurrentStates
  • DemandState
  • StateName
  • StateVariable

case class CurrentState(prefix: Prefix, stateName: StateName, paramSet: Set[Parameter[_]]) extends ParameterSetType[CurrentState] with ParameterSetKeyData with StateVariable with Product with Serializable

A state variable that indicates the current or actual state.

prefix

identifies the target subsystem

stateName

identifies the name of the state

paramSet

an optional initial set of items (keys with values)

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CurrentState
  2. Serializable
  3. Product
  4. Equals
  5. StateVariable
  6. CommandSerializable
  7. ParameterSetKeyData
  8. ParameterSetType
  9. AnyRef
  10. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new CurrentState(currentStateName: StateName, command: Setup)

    A Java helper method to create a CurrentState from a Setup

  2. new CurrentState(prefix: Prefix, currentStateName: StateName)

    A Java helper method to construct with String

  3. new CurrentState(prefix: Prefix, stateName: StateName, paramSet: Set[Parameter[_]])

    prefix

    identifies the target subsystem

    stateName

    identifies the name of the state

    paramSet

    an optional initial set of items (keys with values)

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 add[P <: Parameter[_]](parameter: P): CurrentState

    Adds a parameter to the parameter set

    Adds a parameter to the parameter set

    P

    the Parameter type

    parameter

    the parameter to add

    returns

    a new instance of this parameter set with the given parameter added

    Definition Classes
    ParameterSetType
  5. final def apply[S](key: Key[S]): Parameter[S]

    Return the parameter associated with a Key rather than an Option

    Return the parameter associated with a Key rather than an Option

    S

    the Scala value type

    key

    the Key to be used for lookup

    returns

    the parameter associated with the Key or a NoSuchElementException if the key does not exist

    Definition Classes
    ParameterSetType
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  8. def contains(key: Key[_]): Boolean

    Returns true if the data contains the given key

    Returns true if the data contains the given key

    Definition Classes
    ParameterSetType
  9. def create(data: Set[Parameter[_]]): CurrentState

    Create a new CurrentState instance when a parameter is added or removed

    Create a new CurrentState instance when a parameter is added or removed

    data

    set of parameters

    returns

    a new instance of CurrentState with provided data

    Attributes
    protected
    Definition Classes
    CurrentStateParameterSetType
  10. def dataToString: String

    A comma separated string representation of parameters

    A comma separated string representation of parameters

    Attributes
    protected
    Definition Classes
    ParameterSetType
  11. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. def exists[S](key: Key[S]): Boolean

    Returns true if the key exists in the parameter set

    Returns true if the key exists in the parameter set

    S

    the Scala value type

    key

    the key to check for

    returns

    true if the key is found

    Definition Classes
    ParameterSetType
  13. def find[S](parameter: Parameter[S]): Option[Parameter[S]]

    Find a parameter based on it's keyName and keyType

    Find a parameter based on it's keyName and keyType

    S

    the type of values the Parameter holds

    parameter

    who's keyName and keyType is used to get values and units

    returns

    an Option of Parameter[S] if it is found, otherwise None

    Definition Classes
    ParameterSetType
  14. def get[S](keyName: String, keyType: KeyType[S]): Option[Parameter[S]]

    Returns an Option with the parameter for the key if found, otherwise None

    Returns an Option with the parameter for the key if found, otherwise None

    S

    the value type

    keyName

    the keyName for a key

    keyType

    the keyType for a key

    returns

    the parameter for the key, if found

    Definition Classes
    ParameterSetType
  15. def get[S](key: Key[S]): Option[Parameter[S]]

    Returns an Option with the parameter for the key if found, otherwise None

    Returns an Option with the parameter for the key if found, otherwise None

    S

    the value type

    key

    the Key to be used for lookup

    returns

    the parameter for the key, if found

    Definition Classes
    ParameterSetType
  16. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  17. def getStringMap: Map[String, String]

    Returns a map based on this object where the keys and values are in string get (Could be useful for exporting in a get that other languages can read).

    Returns a map based on this object where the keys and values are in string get (Could be useful for exporting in a get that other languages can read). Derived classes might want to add values to this map for fixed fields.

    Definition Classes
    ParameterSetType
  18. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  19. def jFind[S](parameter: Parameter[S]): Optional[Parameter[S]]

    A Java helper to find a parameter based on it's keyName and keyType

    A Java helper to find a parameter based on it's keyName and keyType

    S

    the type of values the Parameter holds

    parameter

    who's keyName and keyType is used to get values and units

    returns

    an Optional of Parameter[S] if it is found, otherwise empty

    Definition Classes
    ParameterSetType
  20. def jGet[S](keyName: String, keyType: KeyType[S]): Optional[Parameter[S]]

    Returns an Optional with the parameter for the key if found, otherwise empty

    Returns an Optional with the parameter for the key if found, otherwise empty

    S

    the value type

    keyName

    the keyName for a key

    keyType

    the keyType for a key

    returns

    the parameter for the key, if found

    Definition Classes
    ParameterSetType
  21. def jGet[S](key: Key[S]): Optional[Parameter[S]]

    Returns an Optional with the parameter for the key if found, otherwise empty

    Returns an Optional with the parameter for the key if found, otherwise empty

    S

    the value type

    key

    the Key to be used for lookup

    returns

    the parameter for the key, if found

    Definition Classes
    ParameterSetType
  22. def jGetStringMap: Map[String, String]

    A Java helper that returns a map based on this object where the keys and values are in string get (Could be useful for exporting in a get that other languages can read).

    A Java helper that returns a map based on this object where the keys and values are in string get (Could be useful for exporting in a get that other languages can read). Derived classes might want to add values to this map for fixed fields.

    Definition Classes
    ParameterSetType
  23. def jMadd[P <: Parameter[_]](parametersToAdd: Set[P]): CurrentState
    Definition Classes
    ParameterSetType
  24. def jMissingKeys(keys: Key[_]*): Set[String]

    A Java helper that returns a set containing the names of any of the given keys that are missing in the data

    A Java helper that returns a set containing the names of any of the given keys that are missing in the data

    keys

    one or more keys

    Definition Classes
    ParameterSetType
    Annotations
    @varargs()
  25. def jParamSet: Set[Parameter[_]]

    A Java helper to get parameters for this parameter set

    A Java helper to get parameters for this parameter set

    Definition Classes
    ParameterSetType
  26. def madd[P <: Parameter[_]](parametersToAdd: Set[P]): CurrentState

    Adds several parameters to the parameter set

    Adds several parameters to the parameter set

    P

    must be a subclass of Parameter

    parametersToAdd

    the list of parameters to add to the parameter set

    returns

    a new instance of this parameter set with the given parameter added

    Definition Classes
    ParameterSetType
    Note

    madd ensures check for duplicate key

  27. def madd[P <: Parameter[_]](parametersToAdd: P*): CurrentState

    Adds several parameters to the parameter set

    Adds several parameters to the parameter set

    P

    must be a subclass of Parameter

    parametersToAdd

    the list of parameters to add to the parameter set

    returns

    a new instance of this parameter set with the given parameter added

    Definition Classes
    ParameterSetType
    Annotations
    @varargs()
    Note

    madd ensures check for duplicate key

  28. def missingKeys(keys: Key[_]*): Set[String]

    Returns a set containing the names of any of the given keys that are missing in the data

    Returns a set containing the names of any of the given keys that are missing in the data

    keys

    one or more keys

    returns

    a Set of key names

    Definition Classes
    ParameterSetType
  29. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  30. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  31. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  32. val paramSet: Set[Parameter[_]]

    an optional initial set of items (keys with values)

    an optional initial set of items (keys with values)

    Definition Classes
    CurrentStateStateVariableParameterSetType
  33. final def parameter[S](key: Key[S]): Parameter[S]

    Returns the actual parameter associated with a key

    Returns the actual parameter associated with a key

    S

    the Scala value type

    key

    the Key to be used for lookup

    returns

    the parameter associated with the key or a NoSuchElementException if the key does not exist

    Definition Classes
    ParameterSetType
  34. val prefix: Prefix

    identifies the target subsystem

    identifies the target subsystem

    Definition Classes
    CurrentStateStateVariableParameterSetKeyData
  35. final def prefixStr: String

    The prefix for the parameter set

    The prefix for the parameter set

    Definition Classes
    ParameterSetKeyData
  36. def productElementNames: Iterator[String]
    Definition Classes
    Product
  37. def remove[P <: Parameter[_]](parameter: P): CurrentState

    Removes a parameter based on the parameter

    Removes a parameter based on the parameter

    P

    the type of the parameter to be removed

    parameter

    to be removed from the parameter set

    returns

    a new T, where T is a parameter set child with the parameter removed or identical if the parameter is not present

    Definition Classes
    ParameterSetType
  38. def remove[S](key: Key[S]): CurrentState

    Remove a parameter from the parameter set by key

    Remove a parameter from the parameter set by key

    S

    the Scala value type

    key

    the Key to be used for removal

    returns

    a new T, where T is a parameter set child with the key removed or identical if the key is not present

    Definition Classes
    ParameterSetType
  39. def size: Int

    The number of parameters in this parameter set

    The number of parameters in this parameter set

    returns

    the number of parameters in the parameter set

    Definition Classes
    ParameterSetType
  40. val stateName: StateName

    identifies the name of the state

    identifies the name of the state

    Definition Classes
    CurrentStateStateVariable
  41. final def subsystem: Subsystem

    The subsystem for the parameter set

    The subsystem for the parameter set

    Definition Classes
    ParameterSetKeyData
  42. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  43. def toString(): String

    A common toString method for all concrete implementation

    A common toString method for all concrete implementation

    returns

    the string representation of command

    Definition Classes
    StateVariable → AnyRef → Any
  44. def typeName: String

    A name identifying the type of parameter set, such as "setup", "observe".

    A name identifying the type of parameter set, such as "setup", "observe". This is used in the JSON and toString output.

    Definition Classes
    ParameterSetType
  45. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  46. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  47. 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 Serializable

Inherited from Product

Inherited from Equals

Inherited from StateVariable

Inherited from CommandSerializable

Inherited from ParameterSetKeyData

Inherited from AnyRef

Inherited from Any

Ungrouped