java/code/src/com/redhat/rhn/common/db/datasource/xml/Org_queries.xml | 9 -----
java/code/src/com/redhat/rhn/domain/channel/ChannelFamilyFactory.java | 1
java/code/src/com/redhat/rhn/domain/channel/NewChannelHelper.java | 17 +---------
java/code/src/com/redhat/rhn/manager/org/CreateOrgCommand.java | 3 +
java/code/src/com/redhat/rhn/manager/org/OrgManager.java | 17 ----------
5 files changed, 5 insertions(+), 42 deletions(-)
New commits:
commit cf74d0129af6493970fc715307eb0aab410dea8c
Author: Brad Buckingham <bbuckingham(a)redhat.com>
Date: Wed Apr 1 10:03:36 2009 -0400
492903 - api - channel.software.create - updates so that new channels will show on
Channel tab
Prior to the changes made with this commit, if a channel was created by
the channel.software.create API, there was a possibility that the channel
would not show up in the Channels tab. These changes will address this issue.
See BZ for more details.
diff --git a/java/code/src/com/redhat/rhn/common/db/datasource/xml/Org_queries.xml
b/java/code/src/com/redhat/rhn/common/db/datasource/xml/Org_queries.xml
index 8fb577a..1d5c88c 100644
--- a/java/code/src/com/redhat/rhn/common/db/datasource/xml/Org_queries.xml
+++ b/java/code/src/com/redhat/rhn/common/db/datasource/xml/Org_queries.xml
@@ -170,13 +170,4 @@ AND sg.max_members > 0
</query>
</callable-mode>
-<write-mode name="create_chan_family">
- <query params="org_id, name, label, url">
-INSERT INTO rhnChannelFamily
- (id, name, label, org_id, product_url)
- VALUES (rhn_channel_family_id_seq.nextval, :name, :label, :org_id, :url)
- </query>
-</write-mode>
-
-
</datasource_modes>
diff --git a/java/code/src/com/redhat/rhn/domain/channel/ChannelFamilyFactory.java
b/java/code/src/com/redhat/rhn/domain/channel/ChannelFamilyFactory.java
index dd8a50a..29bde86 100644
--- a/java/code/src/com/redhat/rhn/domain/channel/ChannelFamilyFactory.java
+++ b/java/code/src/com/redhat/rhn/domain/channel/ChannelFamilyFactory.java
@@ -127,7 +127,6 @@ public class ChannelFamilyFactory extends HibernateFactory {
updateFamilyPermissions(orgIn);
//permission to use it.
}
-
return cfam;
}
diff --git a/java/code/src/com/redhat/rhn/domain/channel/NewChannelHelper.java
b/java/code/src/com/redhat/rhn/domain/channel/NewChannelHelper.java
index 21f4d61..1dc9647 100644
--- a/java/code/src/com/redhat/rhn/domain/channel/NewChannelHelper.java
+++ b/java/code/src/com/redhat/rhn/domain/channel/NewChannelHelper.java
@@ -16,7 +16,6 @@ package com.redhat.rhn.domain.channel;
import com.redhat.rhn.domain.user.User;
import com.redhat.rhn.manager.channel.ChannelManager;
-import com.redhat.rhn.manager.org.OrgManager;
import com.redhat.rhn.manager.user.UserManager;
import java.util.Date;
@@ -126,19 +125,9 @@ public class NewChannelHelper {
}
//adopt the channel into the org's channelfamily
- ChannelFamily family = ChannelFamilyFactory.lookupByOrg(user.getOrg());
- if (family == null) {
- // In most scenarios, the channel family will not be null. Changes
- // were made to ensure that the family is created at org creation (486018)
- // as well as during satellite-sync (446289); however, there is still
- // an edge case where a customer may have an earlier Satellite (e.g. 511)
- // with a configuration that doesn't have a channel family created yet,
- // they upgrade to the version that has these improvements (e.g. 530) and
- // then attempt to clone a channel (e.g. using API). In that case,
- // it is possible the family doesn't yet exist when this method is
called.
- OrgManager.createChannelFamily(user.getOrg());
- family = ChannelFamilyFactory.lookupByOrg(user.getOrg());
- }
+ ChannelFamily family = ChannelFamilyFactory.lookupOrCreatePrivateFamily(
+ user.getOrg());
+
family.getChannels().add(cloned);
cloned.setChannelFamily(family);
diff --git a/java/code/src/com/redhat/rhn/manager/org/CreateOrgCommand.java
b/java/code/src/com/redhat/rhn/manager/org/CreateOrgCommand.java
index d99656a..8119683 100644
--- a/java/code/src/com/redhat/rhn/manager/org/CreateOrgCommand.java
+++ b/java/code/src/com/redhat/rhn/manager/org/CreateOrgCommand.java
@@ -17,6 +17,7 @@ package
com.redhat.rhn.manager.org;
import com.redhat.rhn.common.localization.LocalizationService;
import com.redhat.rhn.common.validator.ValidatorError;
import com.redhat.rhn.common.validator.ValidatorException;
+import com.redhat.rhn.domain.channel.ChannelFamilyFactory;
import com.redhat.rhn.domain.kickstart.KickstartFactory;
import com.redhat.rhn.domain.kickstart.crypto.CryptoKey;
import
com.redhat.rhn.domain.org.Org;
@@ -168,7 +169,7 @@ public class CreateOrgCommand {
createCryptoKey.store();
}
- OrgManager.createChannelFamily(createdOrg);
+ ChannelFamilyFactory.lookupOrCreatePrivateFamily(createdOrg);
return null;
}
diff --git a/java/code/src/com/redhat/rhn/manager/org/OrgManager.java
b/java/code/src/com/redhat/rhn/manager/org/OrgManager.java
index 244e2f6..4bfc858 100644
--- a/java/code/src/com/redhat/rhn/manager/org/OrgManager.java
+++ b/java/code/src/com/redhat/rhn/manager/org/OrgManager.java
@@ -23,7 +23,6 @@ import java.util.Map;
import com.redhat.rhn.common.db.datasource.DataList;
import com.redhat.rhn.common.db.datasource.ModeFactory;
import com.redhat.rhn.common.db.datasource.SelectMode;
-import com.redhat.rhn.common.db.datasource.WriteMode;
import com.redhat.rhn.common.localization.LocalizationService;
import com.redhat.rhn.common.security.PermissionException;
import com.redhat.rhn.common.validator.ValidatorException;
@@ -455,20 +454,4 @@ public class OrgManager extends BaseManager {
}
return dtos;
}
-
-
- /**
- * Creates a channel family for a channel. Should only be used upon org creation
- * @param org the org to create a channel family for.
- */
- public static void createChannelFamily(Org org) {
- WriteMode m = ModeFactory.getWriteMode("Org_queries",
"create_chan_family");
- Map params = new HashMap();
- params.put("org_id", org.getId());
- params.put("label", "private-channel-family-" +
org.getId());
- params.put("name", "Private Channel Family " + org.getId());
- params.put("url", "Org Creation");
- m.executeUpdate(params);
- }
-
}