Interface TunableRecorder<T extends TunableHandler>

Type Parameters:
T - The generic TunableHandler type of this TunableRecorder.

public interface TunableRecorder<T extends TunableHandler>
TunableRecorder is a special type of tunable interceptor that reads the state of the tunables but does not modify the value of the tunables. There may be many TunableRecorder services registered at once. TunableRecorders will be called by the TaskManager after the TunableMutator is called, but before the Task is executed.
TunableRecorders are designed to help record the state of Cytoscape for provenance and other tracability purposes.
When implementing this interface, it is recommended that you use the AbstractTunableInterceptor class to do so.

Cytoscape Backwards Compatibility (SPI Interface): We expect that this interface will be implemented. Therefore to maintain backwards compatibility this interface will only be modified for major version updates.

Module: work-api

To use this in your app, include the following dependency in your POM:

<dependency>
    <groupId>org.cytoscape</groupId>
    <artifactId>work-api</artifactId>
</dependency>
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    The method called for each tunable object processed by a TaskManager.
  • Method Details

    • recordTunableState

      void recordTunableState(Object objs)
      The method called for each tunable object processed by a TaskManager. This method may observe and record the state of tunables associated with the argument object, but may NOT modify the tunable values.
      To prevent any performance problems TunableRecorders should return as fast as possible. This might mean spawning a new thread to do the actual recording so as not to interrupt the the system.
      Parameters:
      objs - The object containing fields and methods annotated with the Tunable annotation.