JavaTransfer

org.eso.ias.asce.transfer.JavaTransfer
trait JavaTransfer[T] extends ComputingElement[T]

JavaTransfer calls the java transfer function provided by the user.

Note that the Validity of the output is not set by the transfer function but automatically implemented by the ASCE

Attributes

Graph
Supertypes
class ComputingElement[T]
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods

def initTransferFunction(inputsInfo: Set[IasioInfo], outputInfo: IasioInfo, instance: Option[Int]): Try[Unit]

Initialize the scala transfer function

Initialize the scala transfer function

Value parameters

inputsInfo

The IDs and types of the inputs

instance

the instance

outputInfo

The Id and type of thr output

Attributes

def transfer(inputs: Map[String, InOut[_]], id: Identifier, actualOutput: InOut[T]): Try[InOut[T]]

scala data structs need to be converted before invoking the java code.

scala data structs need to be converted before invoking the java code.

Attributes

See also

ComputingElementBase#transfer

Inherited methods

def ack(): Boolean

ACK the alarm produced by the TF of the ASCE.

ACK the alarm produced by the TF of the ASCE.

This function should be executed only if the type of the output is an alarm so in that case an error message is logged but the TF is not marked as broken. The ratio behind this choice is that the ACK is a command coming from outside: ACKing a value that is not an alarm is an error produced somewhere else that should be reported but not impact the functioning of the ASCE.

The function updates the value of the last produced output. This value will be passed to the TF the next time it is run because the inputs changed.

Attributes

Returns

true if the alarm has been acknowledged, false otherwise

Inherited from:
ComputingElement
def getState(): State

Expose the actual state of this ASCE

Expose the actual state of this ASCE

Attributes

Returns

The state of the ASCE

Inherited from:
ComputingElement
def initialize(): State

Initialize the object.

Initialize the object.

This method must be executed only once before running the TF.

If the initialization fails, the state of the object changes to broken.

Attributes

Returns

The state of the ASCE after the initialization

Inherited from:
ComputingElement
def output: InOut[T]

Getter for the private _output

Getter for the private _output

This method return the last calculated output.

Use getOutputWithUpdatedValidity() if you want the updated with an updated validity.

Attributes

Returns

the last calculated output

Inherited from:
ComputingElement
def shutdown(): Unit

shutdown>/code> must be executed to free the resources of a ComputingElement that later on can be cleanly destroyed.

shutdown>/code> must be executed to free the resources of a ComputingElement that later on can be cleanly destroyed.

One of the tasks of this method is to stop the timer thread to update the output i.e. to execute the transfer function.

Attributes

Inherited from:
ComputingElement
override def toString(): String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Attributes

Returns

a string representation of the object.

Definition Classes
Inherited from:
ComputingElement
def update(iasValues: Set[IASValue[_]]): (Option[InOut[T]], State)

The DASU sent a new set of inputs: they replace the old inputs and trigger the execution of the TF to create a new output. If some of the inputs of the ASCE is not yet initialized, it has a null/empty value and the ASCE cannot run the TF neither produce the output.

The DASU sent a new set of inputs: they replace the old inputs and trigger the execution of the TF to create a new output. If some of the inputs of the ASCE is not yet initialized, it has a null/empty value and the ASCE cannot run the TF neither produce the output.

Value parameters

iasValues

the new inputs received from the DASU

Attributes

Returns

A tuple with 2 fields: 1) the new output generated applying the TF to the inputs and the new state of the ASCE It is None if at least one of the inputs has not yet been initialized 2) the state of the ASCE

Inherited from:
ComputingElement

Concrete fields

The programming language of this TF

The programming language of this TF

Attributes

Inherited fields

val acceptedInputIds: Set[String]

The IDs of all and only the possible inputs of the ASCE

The IDs of all and only the possible inputs of the ASCE

Attributes

Inherited from:
ComputingElement

Attributes

Inherited from:
ComputingElement
lazy val fromTemplate: Boolean

True if the DASU has been generated from a template, False otherwise

True if the DASU has been generated from a template, False otherwise

Attributes

Inherited from:
ComputingElement
val id: String

The ID of the ASCE

The ID of the ASCE

Attributes

Inherited from:
ComputingElement
val inputs: Map[String, InOut[_]]

The inputs that produced the output. This map is initially populated with IASIOs not yet initialized that have a empty value.

The inputs that produced the output. This map is initially populated with IASIOs not yet initialized that have a empty value.

When the DASU sends the last received IASIOs, this map is updated with the new values and a new output is produced

Attributes

Inherited from:
ComputingElement
lazy val isOutputASyntheticParam: Boolean

true if this component produces a synthetic parameter instead of an alarm

true if this component produces a synthetic parameter instead of an alarm

Attributes

Inherited from:
ComputingElement
lazy val isOutputAnAlarm: Boolean

true if this component generates an alarm

true if this component generates an alarm

Attributes

Inherited from:
ComputingElement
val isTooSlow: AtomicBoolean

It is true when the execution tie of the TF is too slow

It is true when the execution tie of the TF is too slow

Attributes

Inherited from:
ComputingElement
val props: Properties

Attributes

Inherited from:
ComputingElement
lazy val templateInstance: Option[Int]

The number of the instance if the DASU has been generated from a template; empty otherwise

The number of the instance if the DASU has been generated from a template; empty otherwise

Attributes

Inherited from:
ComputingElement

Attributes

Inherited from:
ComputingElement
val tooSlowStartTime: AtomicLong

The point in time when the TF begins to be slow calculating the output.

The point in time when the TF begins to be slow calculating the output.

Attributes

Inherited from:
ComputingElement
lazy val validityThreshold: Long

The threshold (msecs) to evaluate the validity

The threshold (msecs) to evaluate the validity

Attributes

Inherited from:
ComputingElement