modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/content/CreateNewPackageUIBean.java
| 12 +++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
New commits:
commit 3502050af25d2a11f4fc2c7aaf1ea8b64436e266
Author: Lukas Krejci <lkrejci(a)redhat.com>
Date: Fri Jun 28 15:39:51 2013 +0200
[BZ 840649] Accomodate for package type plugins when determining pkg version
This is mostly a hack to get us going again on the JSF repository detail
page. I don't want to invest into some more elaborate and complete solution
because content subsystem is a minefield we're hopefully replacing
soon(ish).
diff --git
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/content/CreateNewPackageUIBean.java
b/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/content/CreateNewPackageUIBean.java
index 666cac8..111c39e 100644
---
a/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/content/CreateNewPackageUIBean.java
+++
b/modules/enterprise/gui/portal-war/src/main/java/org/rhq/enterprise/gui/content/CreateNewPackageUIBean.java
@@ -51,6 +51,7 @@ import org.rhq.core.util.MessageDigestGenerator;
import org.rhq.core.util.exception.ThrowableUtil;
import org.rhq.enterprise.gui.util.EnterpriseFacesContextUtility;
import org.rhq.enterprise.server.content.ContentException;
+import org.rhq.enterprise.server.content.ContentManagerHelper;
import org.rhq.enterprise.server.content.ContentManagerLocal;
import org.rhq.enterprise.server.content.ContentUIManagerLocal;
import org.rhq.enterprise.server.content.RepoManagerLocal;
@@ -238,9 +239,18 @@ public class CreateNewPackageUIBean {
packageUploadDetails.put(ContentManagerLocal.UPLOAD_SHA256,
sha);
packageUploadDetails.put(ContentManagerLocal.UPLOAD_DISPLAY_VERSION, displayVersion);
+ //For package types that handle their own versioning, etc.
let's use what the user passed in
+ //as a version. For the standard, i.e. agent-plugin defined,
package types use what we want
+ //to use for them - sha-based versions to deal with improper
versions discovered/declared by
+ //the packages (i.e. versions in MANIFEST.MF not properly
updated)
+ //
+ //Did I say I can't wait for all this to disappear with the
new provisioning? :)
+ boolean nonStandardPackageType =
ContentManagerHelper.getPackageTypePluginContainer().getPluginManager().getBehavior(packageTypeId)
!= null;
+ String versionToUse = nonStandardPackageType ? displayVersion :
formatVersion(sha);
+
Integer iRepoId = usingARepo ? Integer.parseInt(repoId) : null;
packageVersion =
contentManager.getUploadedPackageVersion(subject, packageName, packageTypeId,
- formatVersion(sha), architectureId, packageStream,
packageUploadDetails, iRepoId);
+ versionToUse, architectureId, packageStream,
packageUploadDetails, iRepoId);
} catch (NoResultException nre) {
//eat the exception. Some of the queries return no results if no
package yet exists which is fine.
Show replies by date