java/code/src/com/redhat/rhn/domain/channel/ChannelArch.hbm.xml | 3 ++ java/code/src/com/redhat/rhn/domain/channel/ChannelFactory.java | 12 ++++++++++ java/code/src/com/redhat/rhn/frontend/xmlrpc/distchannel/DistChannelHandler.java | 2 - schema/spacewalk/common/tables/rhnChannelArch.sql | 3 ++ schema/spacewalk/upgrade/spacewalk-schema-1.7-to-spacewalk-schema-1.8/034-rhnChannelArch.sql | 3 ++ 5 files changed, 22 insertions(+), 1 deletion(-)
New commits: commit b7783bb27ab216c20cc9a7086862b7dbc387bfb4 Author: Tomas Lestach tlestach@redhat.com Date: Fri Apr 27 11:16:36 2012 +0200
use arch label in distchannel.setDefaultMap API as stated in the API doc
diff --git a/java/code/src/com/redhat/rhn/domain/channel/ChannelArch.hbm.xml b/java/code/src/com/redhat/rhn/domain/channel/ChannelArch.hbm.xml index 411e6b4..5cc2537 100644 --- a/java/code/src/com/redhat/rhn/domain/channel/ChannelArch.hbm.xml +++ b/java/code/src/com/redhat/rhn/domain/channel/ChannelArch.hbm.xml @@ -47,4 +47,7 @@ PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" <query name="ChannelArch.findByName"> <![CDATA[from com.redhat.rhn.domain.channel.ChannelArch as c where c.name = :name]]> </query> + <query name="ChannelArch.findByLabel"> + <![CDATA[from com.redhat.rhn.domain.channel.ChannelArch as c where c.label = :label]]> + </query> </hibernate-mapping> diff --git a/java/code/src/com/redhat/rhn/domain/channel/ChannelFactory.java b/java/code/src/com/redhat/rhn/domain/channel/ChannelFactory.java index 6eb274e..9e8d93b 100644 --- a/java/code/src/com/redhat/rhn/domain/channel/ChannelFactory.java +++ b/java/code/src/com/redhat/rhn/domain/channel/ChannelFactory.java @@ -697,6 +697,18 @@ public class ChannelFactory extends HibernateFactory { }
/** + * Lookup a ChannelArch based on its label + * @param label arch label + * @return ChannelArch if found, otherwise null + */ + public static ChannelArch lookupArchByLabel(String label) { + Map params = new HashMap(); + params.put("label", label); + return (ChannelArch) + singleton.lookupObjectByNamedQuery("ChannelArch.findByLabel", params); + } + + /** * Get package ids for a channel * @param cid the channel id * @return List of package ids diff --git a/java/code/src/com/redhat/rhn/frontend/xmlrpc/distchannel/DistChannelHandler.java b/java/code/src/com/redhat/rhn/frontend/xmlrpc/distchannel/DistChannelHandler.java index c75b2f3..c8553eb 100644 --- a/java/code/src/com/redhat/rhn/frontend/xmlrpc/distchannel/DistChannelHandler.java +++ b/java/code/src/com/redhat/rhn/frontend/xmlrpc/distchannel/DistChannelHandler.java @@ -74,7 +74,7 @@ public class DistChannelHandler extends BaseHandler { throw new PermissionException(RoleFactory.SAT_ADMIN); }
- ChannelArch channelArch = ChannelFactory.lookupArchByName(archLabel); + ChannelArch channelArch = ChannelFactory.lookupArchByLabel(archLabel); if (channelArch == null) { throw new InvalidChannelArchException(archLabel); }
commit 75b95280e2b7b405fb49be3e3514f0973587baa8 Author: Tomas Lestach tlestach@redhat.com Date: Fri Apr 27 11:11:21 2012 +0200
add unique constraint on rhnChannelArch.name
diff --git a/schema/spacewalk/common/tables/rhnChannelArch.sql b/schema/spacewalk/common/tables/rhnChannelArch.sql index 018b878..9464610 100644 --- a/schema/spacewalk/common/tables/rhnChannelArch.sql +++ b/schema/spacewalk/common/tables/rhnChannelArch.sql @@ -39,3 +39,6 @@ ALTER TABLE rhnChannelArch ADD CONSTRAINT rhn_carch_label_uq UNIQUE (label) USING INDEX TABLESPACE [[2m_tbs]];
+ALTER TABLE rhnChannelArch + ADD CONSTRAINT rhn_carch_name_uq UNIQUE (name) + USING INDEX TABLESPACE [[2m_tbs]]; diff --git a/schema/spacewalk/upgrade/spacewalk-schema-1.7-to-spacewalk-schema-1.8/034-rhnChannelArch.sql b/schema/spacewalk/upgrade/spacewalk-schema-1.7-to-spacewalk-schema-1.8/034-rhnChannelArch.sql new file mode 100644 index 0000000..08a314a --- /dev/null +++ b/schema/spacewalk/upgrade/spacewalk-schema-1.7-to-spacewalk-schema-1.8/034-rhnChannelArch.sql @@ -0,0 +1,3 @@ +ALTER TABLE rhnChannelArch + ADD CONSTRAINT rhn_carch_name_uq UNIQUE (name) + USING INDEX TABLESPACE [[2m_tbs]];
spacewalk-commits@lists.fedorahosted.org