org.eso.ias.sink

Members list

Type members

Classlikes

class IasValueProcessor(val processorIdentifier: String, val listeners: List[ValueListener], val kafkaServersOpt: Option[String], hbProducerOpt: Option[HbProducer], cmdManagerOpt: Option[CommandManager], inputSubscriberOpt: Option[InputSubscriber], val iasDao: IasDao, val iasioDaos: List[IasioDao], val templateDaos: List[TemplateDao]) extends InputsListener, AutoCloseable

The IasValueProcessor gets all the IasValues published in the BSDB and sends them to the listener for further processing.

The IasValueProcessor gets all the IasValues published in the BSDB and sends them to the listener for further processing.

The processing is triggered when the buffer receivedValues contains at least minSizeOfValsToProcessAtOnce items. It is also periodically triggered every periodicProcessingTime msecs.

In this version the IasValueProcessor does not take any action if one of the listeners is too slow apart of logging messages. The slowness is detected when the queue of received and not yet processed values grows too much. In this case the IasValueProcessor logs a warning. To avoid submitting too many logs, the message is logged with a throttling.

The buffer is bounded by maxBufferSize: if threads do not consume values fast enough the oldest values in the buffer are removed to avoid out of memory.

The IasValueProcessor monitors the termination time of the threads and kill threads that do not terminate in killThreadAfter seconds. To kill a thread, its close method is invoked and it will be removed from the active listener.

The constructor builds the HB producer, the input subscriber and the command manager unless they are passed as optional parameters. This is useful for customization or for testing but normally, in operation they are expected to be empty.

Value parameters

cmdManagerOpt

Th eoptional command manager

hbProducerOpt

the optional HbProducer

iasDao

The configuration of the IAS read from the CDB

iasioDaos

The configuration of the IASIOs read from the CDB

inputSubscriberOpt

The optional input subscriber

kafkaServersOpt

The optional string with the kafka servers (if empty the default from KafkaHelper will be used

listeners

the processors of the IasValues read from the BSDB

processorIdentifier

the identifier of the value processor

templateDaos

The configuration of templates read from CDB

Attributes

Companion
object
Supertypes
trait AutoCloseable
class Object
trait Matchable
class Any

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
class ProcessorThreadFactory(val processorId: String) extends ThreadFactory

Attributes

Supertypes
trait ThreadFactory
class Object
trait Matchable
class Any
abstract class ValueListener(val id: String)

The listener of IasValues to be processed

The listener of IasValues to be processed

Value parameters

id

The identifier to distinguish between many listeners in the same processor Mainly used for logging messages

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object ValueListener

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type