Class NextSupplier


  • public class NextSupplier
    extends java.lang.Object
    Manages centrally-dispensed value sets for one or more ConfigKeys. Normally, a ConfigKey has a single default. However, in some cases (subset colours) it is desirable for the default to be one of a list, so that the first time the default is acquired it has one value, the second time it has a different value, etc. This object manages groups of default values to achieve that.
    Since:
    15 Mar 2013
    Author:
    Mark Taylor
    • Constructor Summary

      Constructors 
      Constructor Description
      NextSupplier()
      Constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      uk.ac.starlink.ttools.plot2.config.ConfigKey[] getKeys()
      Returns the keys managed by this supplier.
      <T> T getNextValue​(uk.ac.starlink.ttools.plot2.config.ConfigKey<T> key)
      Returns the next unused value to use for a given key.
      <T> void putValues​(uk.ac.starlink.ttools.plot2.config.ConfigKey<T> key, T[] values)
      Adds a key to be managed by this supplier, and provides a set of values to be used for it.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • NextSupplier

        public NextSupplier()
        Constructor.
    • Method Detail

      • putValues

        public <T> void putValues​(uk.ac.starlink.ttools.plot2.config.ConfigKey<T> key,
                                  T[] values)
        Adds a key to be managed by this supplier, and provides a set of values to be used for it. The nextValues will be taken from this list cyclically.
        Parameters:
        key - key to be managed by this supplier
        values - list of distinct values to provide successive defaults for key
      • getKeys

        public uk.ac.starlink.ttools.plot2.config.ConfigKey[] getKeys()
        Returns the keys managed by this supplier.
        Returns:
        managed key list
      • getNextValue

        public <T> T getNextValue​(uk.ac.starlink.ttools.plot2.config.ConfigKey<T> key)
        Returns the next unused value to use for a given key. The value dispensed cycles through the items provided when the key was initialised.
        Parameters:
        key - one of the keys managed by this supplier
        Returns:
        next value for key