@Override public synchronized void load() { // for backward compatibility, if we don't have our own data yet, then // load from Mailer. XmlFile file = getConfigFile(); if(!file.exists()) { XStream2 xs = new XStream2(); xs.addCompatibilityAlias("hudson.tasks.Mailer$DescriptorImpl",JenkinsLocationConfiguration.class); file = new XmlFile(xs,new File(Jenkins.get().getRootDir(),"hudson.tasks.Mailer.xml")); if (file.exists()) { try { file.unmarshal(this); if (jenkinsUrl==null) jenkinsUrl = hudsonUrl; } catch (IOException e) { LOGGER.log(Level.WARNING, "Failed to load "+file, e); } } } else { super.load(); } updateSecureSessionFlag(); }
/** * Version 0.4 to 0.5 */ private static void c_0_4__0_5() { // CustomVirtualenvBuilder becomes CustomPythonBuilder Items.XSTREAM2.addCompatibilityAlias("jenkins.plugins.shiningpanda.CustomVirtualenvBuilder", CustomPythonBuilder.class); // StandardPythonBuilder becomes PythonBuilder Items.XSTREAM2.addCompatibilityAlias("jenkins.plugins.shiningpanda.StandardPythonBuilder", PythonBuilder.class); // VirtualenvBuilder is now in a builders package Items.XSTREAM2.addCompatibilityAlias("jenkins.plugins.shiningpanda.VirtualenvBuilder", VirtualenvBuilder.class); // PythonAxis is now in a matrix package. Compatibility with // configuration... Items.XSTREAM2.addCompatibilityAlias("jenkins.plugins.shiningpanda.PythonAxis", PythonAxis.class); // ... and with builds Run.XSTREAM2.addCompatibilityAlias("jenkins.plugins.shiningpanda.PythonAxis", PythonAxis.class); }
@Initializer(before = InitMilestone.PLUGINS_STARTED) public static void addAliases() { Jenkins.XSTREAM2.addCompatibilityAlias( "com.microsoft.azure.AzureVMCloud", AzureVMCloud.class); Jenkins.XSTREAM2.addCompatibilityAlias( "com.microsoft.azure.AzureVMAgent", AzureVMAgent.class); Jenkins.XSTREAM2.addCompatibilityAlias( "com.microsoft.azure.remote.AzureVMAgentSSHLauncher", AzureVMAgentSSHLauncher.class); Jenkins.XSTREAM2.addCompatibilityAlias( "com.microsoft.azure.AzureVMAgentTemplate", AzureVMAgentTemplate.class); Jenkins.XSTREAM2.addCompatibilityAlias( "com.microsoft.azure.AzureVMCloudRetensionStrategy", AzureVMCloudRetensionStrategy.class); Jenkins.XSTREAM2.addCompatibilityAlias( "com.microsoft.azure.AzureVMAgentPostBuildAction", AzureVMAgentPostBuildAction.class); Jenkins.XSTREAM2.addCompatibilityAlias( "com.microsoft.azure.Messages", Messages.class); }
@Initializer(before = InitMilestone.PLUGINS_STARTED) public static void addAliases() { Jenkins.XSTREAM2.addCompatibilityAlias( "org.csanchez.jenkins.plugins.kubernetes.OpenShiftBearerTokenCredentialImpl", org.jenkinsci.plugins.kubernetes.credentials.OpenShiftBearerTokenCredentialImpl.class); Jenkins.XSTREAM2.addCompatibilityAlias( "org.csanchez.jenkins.plugins.kubernetes.OpenShiftTokenCredentialImpl", StringCredentialsImpl.class); Jenkins.XSTREAM2.addCompatibilityAlias("org.csanchez.jenkins.plugins.kubernetes.ServiceAccountCredential", org.jenkinsci.plugins.kubernetes.credentials.FileSystemServiceAccountCredential.class); }
@Initializer(before = InitMilestone.PLUGINS_STARTED) public static void xStreamCompatibility() { XSTREAM2.addCompatibilityAlias("jenkins.plugins.http_request.HttpRequest$DescriptorImpl", HttpRequestGlobalConfig.class); XSTREAM2.addCompatibilityAlias("jenkins.plugins.http_request.util.NameValuePair", HttpRequestNameValuePair.class); }
@Initializer(before = InitMilestone.PLUGINS_STARTED) public static void addAliases() { Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.testlink.testng.Suite", Suite.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.testlink.testng.Test", com.tupilabs.testng.parser.Test.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.testlink.testng.TestMethod", com.tupilabs.testng.parser.TestMethod.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.testlink.testng.Class", com.tupilabs.testng.parser.Class.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.testlink.testng.ParserException", com.tupilabs.testng.parser.ParserException.class); Items.XSTREAM2.alias("hudson.plugins.testlink.testng.Class.list", java.util.LinkedList.class, java.util.LinkedHashSet.class); }
/** * In docker-java 0.10.0, packages got renamed. * These aliases are required to read builds persisted by Jenkins Build Step * Plugin prior to 1.10. * * @since 1.10 */ @Initializer(before=PLUGINS_STARTED) public static void addXStreamAliases() { Run.XSTREAM2.addCompatibilityAlias( "com.github.dockerjava.client.model.ExposedPort", com.github.dockerjava.api.model.ExposedPort.class); Run.XSTREAM2.addCompatibilityAlias( "com.github.dockerjava.client.model.Ports$Binding", com.github.dockerjava.api.model.Ports.Binding.class); }
Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.PerformanceBuildAction", PerformanceBuildAction.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.PerformanceProjectAction", PerformanceProjectAction.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.ExternalBuildReport", ExternalBuildReportAction.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.constraints.PreviousResultsBlock", PreviousResultsBlock.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.constraints.TestCaseBlock", TestCaseBlock.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.CookieHandler", CookieHandler.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.constraints.ConstraintSettings", ConstraintSettings.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.HttpSample", HttpSample.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.PerformanceReportPosition", PerformanceReportPosition.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.TaurusStatusReport", TaurusFinalStats.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.constraints.ConstraintDescriptor", ConstraintDescriptor.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.PerformanceReportParserDescriptor", PerformanceReportParserDescriptor.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.GraphConfigurationDetail", GraphConfigurationDetail.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.TestSuiteReportDetail", TestSuiteReportDetail.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.TrendReportDetail", TrendReportDetail.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.AbstractParser", AbstractParser.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.IagoParser", IagoParser.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.JMeterCsvParser", JMeterCsvParser.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.JMeterParser", JMeterParser.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.JmeterSummarizerParser", JmeterSummarizerParser.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.JUnitParser", JUnitParser.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.PerformanceReportParser", PerformanceReportParser.class); Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.performance.TaurusParser", TaurusParser.class);
@Initializer(before = InitMilestone.JOB_LOADED) @Restricted(NoExternalUse.class) public static void packageRenameConverting() { for(XStream2 xs : Arrays.asList(Items.XSTREAM2, Run.XSTREAM2, Jenkins.XSTREAM2, getFingerprintXStream())) { xs.addCompatibilityAlias("org.jenkinsci.plugins.dockerhub.notification.DockerHubTrigger", DockerHubTrigger.class); xs.addCompatibilityAlias("org.jenkinsci.plugins.dockerhub.notification.DockerHubWebHookCause", DockerHubWebHookCause.class); xs.addCompatibilityAlias("org.jenkinsci.plugins.dockerhub.notification.DockerPullImageBuilder", DockerPullImageBuilder.class); //TODO no back-compat tests for the column and filter xs.addCompatibilityAlias("org.jenkinsci.plugins.dockerhub.notification.TriggerListViewColumn", TriggerListViewColumn.class); xs.addCompatibilityAlias("org.jenkinsci.plugins.dockerhub.notification.TriggerViewFilter", TriggerViewFilter.class); //The TriggerOption extension point has also changed package name and will not be backwards compatible API xs.addCompatibilityAlias("org.jenkinsci.plugins.dockerhub.notification.opt.impl.TriggerForAllUsedInJob", TriggerForAllUsedInJob.class); xs.addCompatibilityAlias("org.jenkinsci.plugins.dockerhub.notification.opt.impl.TriggerOnSpecifiedImageNames", TriggerOnSpecifiedImageNames.class); xs.addCompatibilityAlias("org.jenkinsci.plugins.dockerhub.notification.TriggerStore$TriggerEntry", TriggerStore.TriggerEntry.class); xs.addCompatibilityAlias("org.jenkinsci.plugins.dockerhub.notification.TriggerStore$TriggerEntry$RunEntry", TriggerStore.TriggerEntry.RunEntry.class); } }
@Initializer(before= InitMilestone.PLUGINS_STARTED) public static void addAliases() { Items.XSTREAM2.addCompatibilityAlias( "org.jenkinsci.plugins.jenkinsreviewbot.RevieboardPollingBuilder", ReviewboardPollingBuilder.class); } }
/** Retain backward compatibility. */ @Initializer(before = InitMilestone.PLUGINS_STARTED) public static void addAliases() { Run.XSTREAM2.addCompatibilityAlias("io.jenkins.plugins.analysis.core.views.ResultAction", ResultAction.class); }
@Override public void start() throws Exception { super.start(); Items.XSTREAM2.addCompatibilityAlias("jenkins.plugins.nodejs.tools.NpmPackagesBuildWrapper", NodeJSBuildWrapper.class); Items.XSTREAM2.addCompatibilityAlias("jenkins.plugins.nodejs.NodeJsCommandInterpreter", NodeJSCommandInterpreter.class); try { load(); } catch (IOException e) { // NOSONAR // ignore read XStream errors } }
@Initializer(before = InitMilestone.PLUGINS_STARTED) public static void addAliases() { Items.XSTREAM2.addCompatibilityAlias("org.jenkinsci.plugins.cloverphp.CloverPublisher", CloverPHPPublisher.class); }
@Initializer(before = InitMilestone.PLUGINS_STARTED) public static void addAliases() { Items.XSTREAM2.addCompatibilityAlias("hudson.plugins.humbug.HumbugNotifier", ZulipNotifier.class); }
@Initializer(before = InitMilestone.PLUGINS_STARTED) public static void addAliases() { XSTREAM2.addCompatibilityAlias("org.jenkinsci.plugins.github_branch_source.OriginGitHubSCMSource", GitHubSCMSource.class); }
@Override protected XmlFile getConfigFile() { final XStream2 customXstream = new XStream2(); customXstream.addCompatibilityAlias("org.jvnet.hudson.plugins.SSHSite", CredentialsSSHSite.LegacySSHSite.class); return new XmlFile(customXstream, new File(Jenkins.getInstance().getRootDir(),getId()+".xml")); }
/** * Registers XStream alias and converters to handle backwards compatibility with old data. */ protected static void doXStreamRegistrations() { logger.trace("doing XStream alias registrations."); //Register it in all known XStreams just to be sure. Items.XSTREAM.registerConverter(new TriggerContextConverter()); Jenkins.XSTREAM.registerConverter(new TriggerContextConverter()); //This is where the problems where, reading builds. Run.XSTREAM.registerConverter(new TriggerContextConverter()); Run.XSTREAM2.addCompatibilityAlias( "com.sonyericsson.hudson.plugins.gerrit.gerritevents.dto.events.ManualPatchsetCreated", ManualPatchsetCreated.class); Items.XSTREAM.aliasPackage("com.sonyericsson.hudson.plugins.gerrit.gerritevents", "com.sonymobile.tools.gerrit.gerritevents"); Jenkins.XSTREAM.aliasPackage("com.sonyericsson.hudson.plugins.gerrit.gerritevents", "com.sonymobile.tools.gerrit.gerritevents"); Run.XSTREAM.aliasPackage("com.sonyericsson.hudson.plugins.gerrit.gerritevents", "com.sonymobile.tools.gerrit.gerritevents"); logger.trace("XStream alias registrations done."); }
@Override public synchronized void load() { // for backward compatibility, if we don't have our own data yet, then // load from Mailer. XmlFile file = getConfigFile(); if(!file.exists()) { XStream2 xs = new XStream2(); xs.addCompatibilityAlias("hudson.tasks.Mailer$DescriptorImpl",JenkinsLocationConfiguration.class); file = new XmlFile(xs,new File(Jenkins.getInstance().getRootDir(),"hudson.tasks.Mailer.xml")); if (file.exists()) { try { file.unmarshal(this); if (jenkinsUrl==null) jenkinsUrl = hudsonUrl; } catch (IOException e) { LOGGER.log(Level.WARNING, "Failed to load "+file, e); } } } else { super.load(); } updateSecureSessionFlag(); }