java/code/src/com/redhat/rhn/frontend/xmlrpc/channel/software/ChannelSoftwareHandler.java
| 56 ++++++----
1 file changed, 34 insertions(+), 22 deletions(-)
New commits:
commit 54fa83c2691b75bee0598281f56a05b63aef1418
Author: Tomas Lestach <tlestach(a)redhat.com>
Date: Thu Nov 29 11:36:54 2012 +0100
851942 - copy GPG information from the original channel within
channel.software.clone API, when the user omits it
in case the user sets GPG info - even if empty - it will be used
diff --git
a/java/code/src/com/redhat/rhn/frontend/xmlrpc/channel/software/ChannelSoftwareHandler.java
b/java/code/src/com/redhat/rhn/frontend/xmlrpc/channel/software/ChannelSoftwareHandler.java
index 1c4995f..f091117 100644
---
a/java/code/src/com/redhat/rhn/frontend/xmlrpc/channel/software/ChannelSoftwareHandler.java
+++
b/java/code/src/com/redhat/rhn/frontend/xmlrpc/channel/software/ChannelSoftwareHandler.java
@@ -1937,28 +1937,6 @@ public class ChannelSoftwareHandler extends BaseHandler {
String archLabel = (String) channelDetails.get("arch_label");
String summary = (String) channelDetails.get("summary");
String description = (String) channelDetails.get("description");
- String gpgUrl;
- if (channelDetails.get("gpg_key_url") == null) {
- gpgUrl = (String) channelDetails.get("gpg_url");
- }
- else {
- gpgUrl = (String) channelDetails.get("gpg_key_url");
- }
- String gpgId;
- if ((String) channelDetails.get("gpg_key_id") == null) {
- gpgId = (String) channelDetails.get("gpg_id");
- }
- else {
- gpgId = (String) channelDetails.get("gpg_key_id");
- }
- String gpgFingerprint;
- if (channelDetails.get("gpg_key_fp") == null) {
- gpgFingerprint = (String) channelDetails.get("gpg_fingerprint");
- }
- else {
- gpgFingerprint = (String) channelDetails.get("gpg_key_fp");
- }
-
if (ChannelFactory.lookupByLabel(loggedInUser.getOrg(), label) != null) {
throw new DuplicateChannelLabelException(label);
@@ -1983,6 +1961,40 @@ public class ChannelSoftwareHandler extends BaseHandler {
arch = originalChan.getChannelArch();
}
+ String gpgUrl, gpgId, gpgFingerprint;
+ if (channelDetails.containsKey("gpg_key_url") ||
+ channelDetails.containsKey("gpg_url") ||
+ channelDetails.containsKey("gpg_key_id") ||
+ channelDetails.containsKey("gpg_id") ||
+ channelDetails.containsKey("gpg_key_fp") ||
+ channelDetails.containsKey("gpg_fingerprint")) {
+ // if one of the GPG information was set, use it
+ if (channelDetails.get("gpg_key_url") == null) {
+ gpgUrl = (String) channelDetails.get("gpg_url");
+ }
+ else {
+ gpgUrl = (String) channelDetails.get("gpg_key_url");
+ }
+ if ((String) channelDetails.get("gpg_key_id") == null) {
+ gpgId = (String) channelDetails.get("gpg_id");
+ }
+ else {
+ gpgId = (String) channelDetails.get("gpg_key_id");
+ }
+ if (channelDetails.get("gpg_key_fp") == null) {
+ gpgFingerprint = (String)
channelDetails.get("gpg_fingerprint");
+ }
+ else {
+ gpgFingerprint = (String) channelDetails.get("gpg_key_fp");
+ }
+ }
+ else {
+ // copy GPG info from the original channel
+ gpgUrl = originalChan.getGPGKeyUrl();
+ gpgId = originalChan.getGPGKeyId();
+ gpgFingerprint = originalChan.getGPGKeyFp();
+ }
+
NewChannelHelper helper = new NewChannelHelper();
helper.setName(name);
helper.setArch(arch);
Show replies by date