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.

    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>

    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.
    • Method Detail

      • 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.