Class OldDataMonitor

All Implemented Interfaces:
ExtensionPoint, ModelObject, SearchableModelObject, SearchItem, org.kohsuke.stapler.StaplerProxy

@Extension @Symbol("oldData") public class OldDataMonitor extends AdministrativeMonitor
Tracks whether any data structure changes were corrected when loading XML, that could be resaved to migrate that data to the new format.
Author:
Alan.Harder@Sun.Com
  • Field Details

  • Constructor Details

    • OldDataMonitor

      public OldDataMonitor()
  • Method Details

    • getDisplayName

      public String getDisplayName()
      Specified by:
      getDisplayName in interface ModelObject
      Overrides:
      getDisplayName in class AdministrativeMonitor
    • isActivated

      public boolean isActivated()
      Description copied from class: AdministrativeMonitor
      Returns true if this monitor is activated and wants to produce a warning message.

      This method is called from the HTML rendering thread, so it should run efficiently.

      Specified by:
      isActivated in class AdministrativeMonitor
    • getData

    • report

      public static void report(Saveable obj, String version)
      Inform monitor that some data in a deprecated format has been loaded, and converted in-memory to a new structure.
      Parameters:
      obj - Saveable object; calling save() on this object will persist the data in its new format to disk.
      version - Hudson release when the data structure changed.
    • report

      public static void report(com.thoughtworks.xstream.converters.UnmarshallingContext context, String version)
      Inform monitor that some data in a deprecated format has been loaded, during XStream unmarshalling when the Saveable containing this object is not available.
      Parameters:
      context - XStream unmarshalling context
      version - Hudson release when the data structure changed.
    • report

      public static void report(Saveable obj, Collection<Throwable> errors)
      Inform monitor that some unreadable data was found while loading.
      Parameters:
      obj - Saveable object; calling save() on this object will discard the unreadable data.
      errors - Exception(s) thrown while loading, regarding the unreadable classes/fields.
    • getVersionList

      @Restricted(org.kohsuke.accmod.restrictions.NoExternalUse.class) public Iterator<VersionNumber> getVersionList()
      Sorted list of unique max-versions in the data set. For select list in jelly.
    • doAct

      public org.kohsuke.stapler.HttpResponse doAct(org.kohsuke.stapler.StaplerRequest req, org.kohsuke.stapler.StaplerResponse rsp) throws IOException
      Depending on whether the user said "yes" or "no", send him to the right place.
      Throws:
      IOException
    • doUpgrade

      public org.kohsuke.stapler.HttpResponse doUpgrade(org.kohsuke.stapler.StaplerRequest req, org.kohsuke.stapler.StaplerResponse rsp)
      Save all or some of the files to persist data in the new forms. Remove those items from the data map.
    • doDiscard

      public org.kohsuke.stapler.HttpResponse doDiscard(org.kohsuke.stapler.StaplerRequest req, org.kohsuke.stapler.StaplerResponse rsp)
      Save all files containing only unreadable data (no data upgrades), which discards this data. Remove those items from the data map.
    • doIndex

      public org.kohsuke.stapler.HttpResponse doIndex(org.kohsuke.stapler.StaplerResponse rsp) throws IOException
      Throws:
      IOException