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      | JKeyTypes.BooleanKey      |
    | Character    | KeyType.CharKey         | JKeyTypes.JCharKey        |
    | Byte         | KeyType.ByteKey         | JKeyTypes.ByteKey         |
    | Short        | KeyType.ShortKey        | JKeyTypes.ShortKey        |
    | Long         | KeyType.LongKey         | JKeyTypes.LongKey         |
    | Int          | KeyType.IntKey          | JKeyTypes.IntKey          |
    | Float        | KeyType.FloatKey        | JKeyTypes.FloatKey        |
    | Double       | KeyType.DoubleKey       | JKeyTypes.DoubleKey       |
    | String       | KeyType.StringKey       | JKeyTypes.StringKey       |
    | Timestamp    | KeyType.TimestampKey    | JKeyTypes.TimestampKey    |
    | ----------   | ----------              | ----------                |
    | ByteArray    | KeyType.ByteArrayKey    | JKeyTypes.ByteArrayKey    |
    | ShortArray   | KeyType.ShortArrayKey   | JKeyTypes.ShortArrayKey   |
    | LongArray    | KeyType.LongArrayKey    | JKeyTypes.LongArrayKey    |
    | IntArray     | KeyType.IntArrayKey     | JKeyTypes.IntArrayKey     |
    | FloatArray   | KeyType.FloatArrayKey   | JKeyTypes.FloatArrayKey   |
    | DoubleArray  | KeyType.DoubleArrayKey  | JKeyTypes.DoubleArrayKey  |
    | ----------   | ----------              | ----------                |
    | ByteMatrix   | KeyType.ByteMatrixKey   | JKeyTypes.ByteMatrixKey   |
    | ShortMatrix  | KeyType.ShortMatrixKey  | JKeyTypes.ShortMatrixKey  |
    | LongMatrix   | KeyType.LongMatrixKey   | JKeyTypes.LongMatrixKey   |
    | IntMatrix    | KeyType.IntMatrixKey    | JKeyTypes.IntMatrixKey    |
    | FloatMatrix  | KeyType.FloatMatrixKey  | JKeyTypes.FloatMatrixKey  |
    | DoubleMatrix | KeyType.DoubleMatrixKey | JKeyTypes.DoubleMatrixKey |
    | ----------   | ----------              | ----------                |
    | Choice       | KeyType.ChoiceKey       | JKeyTypes.ChoiceKey       |
    | RaDec        | KeyType.RaDecKey        | JKeyTypes.RaDecKey        |
    | Struct       | KeyType.StructKey       | JKeyTypes.StructKey       |
    +--------------+-------------------------+---------------------------+

    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 commands
    Definition Classes
    params
  • Command
  • CommandIssue
  • CommandList
  • CommandName
  • CommandResponse
  • ControlCommand
  • Keys
  • Nameable
  • Observe
  • Result
  • SequenceCommand
  • Setup
  • Wait
  • package core
    Definition Classes
    params
  • package events
    Definition Classes
    params
  • package extensions
    Definition Classes
    params
  • package javadsl
    Definition Classes
    params
p

csw.params

commands

package commands

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. All

Type Members

  1. sealed trait Command extends AnyRef

    Common trait representing commands in TMT like Setup, Observe and Wait

  2. sealed trait CommandIssue extends AnyRef

    Describes a command issue with appropriate reason for validation failure

  3. final case class CommandList(commands: Seq[SequenceCommand]) extends Product with Serializable

    Contains a list of commands that can be sent to a sequencer

    Contains a list of commands that can be sent to a sequencer

    commands

    sequence of SequenceCommand

  4. case class CommandName(name: String) extends Product with Serializable

    Model representing the name as an identifier of a command

    Model representing the name as an identifier of a command

    name

    represents the name describing command

  5. sealed trait CommandResponse extends TMTSerializable
  6. sealed trait ControlCommand extends SequenceCommand

    Marker trait for control parameter sets which i applicable to Assembly and HCD type of components

  7. trait Nameable[T] extends AnyRef
  8. case class Observe extends ParameterSetType[Observe] with ControlCommand with Product with Serializable

    A parameter set for setting telescope and instrument parameters.

    A parameter set for setting telescope and instrument parameters. Constructor is private to ensure RunId is created internally to guarantee unique value.

  9. case class Result extends ParameterSetType[Result] with ParameterSetKeyData with Product with Serializable

    A result containing parameters for command response

  10. sealed trait SequenceCommand extends Command

    Marker trait for sequence parameter sets which is applicable to Sequencer type of components

  11. case class Setup extends ParameterSetType[Setup] with ControlCommand with Product with Serializable

    A parameter set for setting telescope and instrument parameters.

    A parameter set for setting telescope and instrument parameters. Constructor is private to ensure RunId is created internally to guarantee unique value.

  12. case class Wait extends ParameterSetType[Wait] with SequenceCommand with Product with Serializable

    A parameter set for setting telescope and instrument parameters.

    A parameter set for setting telescope and instrument parameters. Constructor is private to ensure RunId is created internally to guarantee unique value.

Value Members

  1. object CommandIssue
  2. object CommandName extends Serializable
  3. object CommandResponse extends Serializable

    The nature of CommandResponse as an intermediate response of command execution or a final response which could be positive or negative

  4. object Keys

    A helper class providing predefined parameter Keys

  5. object Observe extends Serializable
  6. object Result extends Serializable
  7. object Setup extends Serializable
  8. object Wait extends Serializable

Ungrouped