Interface TunableValidator

public interface TunableValidator
If implemented, this interface is used to apply a test to the modified values of a Tunable.

     If using this Test class :
         public class Test {
             String name = "John";
 Then we can provide a method to check if the new value for this tunable matches with the 
 conditions that we have set :
         public class Test implements TunableValidator{
             String name = new String("John");
             ValidationState getValidationState(Appendable message){
                 if (name == null || name.isEmpty()) {
                     message.append("Name not specified!");
                     return INVALID;
                 } else if (name.equals("Johnny")) {
                     message.append("Are you sure you want to use a nickname?");
                     return REQUEST_CONFIRMATION;
                 } else {
                     return OK;

The String message returned by validate() method is displayed to the user.

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:

  • Method Details

    • getValidationState

      TunableValidator.ValidationState getValidationState(Appendable errMsg)
      Executes the validation test on the annotated Tunables.
      errMsg - if the validation failed an explanatory message can be found here and accessed via errMsg.toString()
      OK if the test succeeded and INVALID if it failed and REQUEST_CONFIRMATION if the user has to be asked for confirmation, e.g. if a file would have to be overwritten etc.