Hey,

I want to propose a change concerning the names of cloned errata.
Currently, names of cloned errata are generated like this:

String clonedAdvisoryName = "CL" + published.getAdvisoryName().substring(3);
String clonedAdvisory = "CL" + published.getAdvisory().substring(3);

The reason for doing it like this might have been a small sized field in the
database, but AFAIK we already upstreamed a patch to enlarge the respective
field. Since cloned errata currently end up with rather strange names, I
would like to propose to do the naming like this instead:

String clonedAdvisoryName = "CL-" + published.getAdvisoryName();
String clonedAdvisory = "CL-" + published.getAdvisory();

Even the classification used for the Red Hat patches (E, S and B) gets lost
when removing the first 3 characters, since names start with RH(E|S|B). So
please tell me if I am missing any reason to keep the old naming scheme.

Attached please find my proposed patch for spacewalk master.

Regards,
Johannes

-- 
SUSE LINUX Products GmbH, HRB 16746 (AG Nürnberg)
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer
>From 30c638790f3f3d354c2381c6f9b2f23c90e20a50 Mon Sep 17 00:00:00 2001
From: Johannes Renner <jren...@suse.de>
Date: Tue, 6 Mar 2012 17:11:55 +0100
Subject: [PATCH] Fix naming of cloned patches to not remove the first 3 chars

---
 .../redhat/rhn/domain/errata/ErrataFactory.java    |    4 ++--
 .../rhn/domain/errata/test/ErrataFactoryTest.java  |    4 ++--
 .../action/channel/manage/PublishErrataHelper.java |    4 ++--
 3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/java/code/src/com/redhat/rhn/domain/errata/ErrataFactory.java b/java/code/src/com/redhat/rhn/domain/errata/ErrataFactory.java
index cda8c6a..6670b86 100644
--- a/java/code/src/com/redhat/rhn/domain/errata/ErrataFactory.java
+++ b/java/code/src/com/redhat/rhn/domain/errata/ErrataFactory.java
@@ -362,8 +362,8 @@ public class ErrataFactory extends HibernateFactory {
     public static Errata createClone(Org org, Errata e) {
 
 
-        String baseClonedAdvisoryName = "CL" + e.getAdvisoryName().substring(3);
-        String baseClonedAdvisory = "CL" + e.getAdvisory().substring(3);
+        String baseClonedAdvisoryName = "CL-" + e.getAdvisoryName();
+        String baseClonedAdvisory = "CL-" + e.getAdvisory();
         String clonedAdvisory = baseClonedAdvisory;
         String clonedAdvisoryName = baseClonedAdvisoryName;
         boolean unusedNameFound = false;
diff --git a/java/code/src/com/redhat/rhn/domain/errata/test/ErrataFactoryTest.java b/java/code/src/com/redhat/rhn/domain/errata/test/ErrataFactoryTest.java
index 601193e..89565df 100644
--- a/java/code/src/com/redhat/rhn/domain/errata/test/ErrataFactoryTest.java
+++ b/java/code/src/com/redhat/rhn/domain/errata/test/ErrataFactoryTest.java
@@ -316,8 +316,8 @@ public class ErrataFactoryTest extends BaseTestCaseWithUser {
        Channel baseChannel = ChannelTestUtils.createBaseChannel(user);
        published.addChannel(baseChannel);
        Errata clone = ErrataFactory.createClone(user.getOrg(), published);
-       String clonedAdvisoryName = "CL" + published.getAdvisoryName().substring(3);
-       String clonedAdvisory = "CL" + published.getAdvisory().substring(3);
+       String clonedAdvisoryName = "CL-" + published.getAdvisoryName();
+       String clonedAdvisory = "CL-" + published.getAdvisory();
 
        assertNotNull(clone.getId());
        assertFalse(published.isCloned());
diff --git a/java/code/src/com/redhat/rhn/frontend/action/channel/manage/PublishErrataHelper.java b/java/code/src/com/redhat/rhn/frontend/action/channel/manage/PublishErrataHelper.java
index c3c7127..c28a6bf 100644
--- a/java/code/src/com/redhat/rhn/frontend/action/channel/manage/PublishErrataHelper.java
+++ b/java/code/src/com/redhat/rhn/frontend/action/channel/manage/PublishErrataHelper.java
@@ -107,8 +107,8 @@ public class PublishErrataHelper {
         }
 
 
-        String baseClonedAdvisoryName = "CL" + original.getAdvisoryName().substring(3);
-        String baseClonedAdvisory = "CL" + original.getAdvisory().substring(3);
+        String baseClonedAdvisoryName = "CL-" + original.getAdvisoryName();
+        String baseClonedAdvisory = "CL-" + original.getAdvisory();
         String clonedAdvisory = baseClonedAdvisory;
         String clonedAdvisoryName = baseClonedAdvisoryName;
         boolean unusedNameFound = false;
-- 
1.7.7

_______________________________________________
Spacewalk-devel mailing list
Spacewalk-devel@redhat.com
https://www.redhat.com/mailman/listinfo/spacewalk-devel

Reply via email to