modules/core/dbutils/pom.xml
| 4 -
modules/core/dbutils/src/main/scripts/dbupgrade/db-upgrade.xml
| 8 ++
modules/core/domain/src/main/java/org/rhq/core/domain/configuration/Configuration.java
| 2
modules/core/domain/src/main/java/org/rhq/core/domain/plugin/Plugin.java
| 20 ++++-
modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ConfigurationTest.java
| 37 ++++++++++
modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/PluginTest.java
| 9 ++
modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/resource/metadata/ResourceMetadataManagerBean.java
| 1
7 files changed, 76 insertions(+), 5 deletions(-)
New commits:
commit 904487ce4305c46e70710399a7b719cbcf8e4f8f
Merge: 0cb5c04... 0d0de27...
Author: John Sanda <jsanda(a)redhat.com>
Date: Tue Oct 27 10:46:00 2009 -0400
Merge branch 'raw-config' of ssh://jsanda@git.fedorahosted.org/git/rhq/rhq
into raw-config
commit 0cb5c04df3cd30ab4340c36ff463b1632349e399
Author: John Sanda <jsanda(a)redhat.com>
Date: Fri Oct 23 16:38:33 2009 -0400
[US 403] Adding support for ampsVersion in data model and in schema.
This commit includes:
* dbupgrade task to add AMPS_VERSION column to RHQ_PLUGIN table
* Add ampsVersion property and JPA mapping to Plugin class
* Update Plugin JPAQL queries to include ampsVersion property
* Modify ResourceMetadataManagerBean to persist ampsVersion found in plugin
descriptor
* Bumping up schema version in dbutils/pom.xml
[US 403] Bumping up schema version to 2.59.1
diff --git a/modules/core/dbutils/pom.xml b/modules/core/dbutils/pom.xml
index cb40351..565b753 100644
--- a/modules/core/dbutils/pom.xml
+++ b/modules/core/dbutils/pom.xml
@@ -22,7 +22,7 @@
<properties>
<scm.module.path>modules/core/dbutils/</scm.module.path>
- <db.schema.version>2.59</db.schema.version>
+ <db.schema.version>2.59.1</db.schema.version>
</properties>
<dependencies>
@@ -272,4 +272,4 @@
</profiles>
-</project>
\ No newline at end of file
+</project>
diff --git a/modules/core/dbutils/src/main/scripts/dbupgrade/db-upgrade.xml
b/modules/core/dbutils/src/main/scripts/dbupgrade/db-upgrade.xml
index 948df51..d3336fa 100644
--- a/modules/core/dbutils/src/main/scripts/dbupgrade/db-upgrade.xml
+++ b/modules/core/dbutils/src/main/scripts/dbupgrade/db-upgrade.xml
@@ -1580,6 +1580,14 @@ DB Upgrade:
</schemaSpec>
+ <schemaSpec version="2.59.1">
+ <schema-addColumn table="RHQ_PLUGIN" column="AMPS_VERSION"
columnType="VARCHAR2"/>
+ <schema-alterColumn table="RHQ_PLUGIN"
+ column="AMPS_VERSION"
+ columnType="VARCHAR2"
+ precision="16"/>
+ </schemaSpec>
+
</dbupgrade>
</target>
diff --git a/modules/core/domain/src/main/java/org/rhq/core/domain/plugin/Plugin.java
b/modules/core/domain/src/main/java/org/rhq/core/domain/plugin/Plugin.java
index 1ee09e0..0c8336b 100644
--- a/modules/core/domain/src/main/java/org/rhq/core/domain/plugin/Plugin.java
+++ b/modules/core/domain/src/main/java/org/rhq/core/domain/plugin/Plugin.java
@@ -61,6 +61,7 @@ import org.rhq.core.util.MessageDigestGenerator;
+ " p.help, " //
+ " p.md5, " //
+ " p.version, " //
+ + " p.ampsVersion, "
+ " p.ctime, " //
+ " p.mtime) " //
+ " FROM Plugin AS p " //
@@ -78,6 +79,7 @@ import org.rhq.core.util.MessageDigestGenerator;
+ " p.help, " //
+ " p.md5, " //
+ " p.version, " //
+ + " p.ampsVersion, "
+ " p.ctime, " //
+ " p.mtime) " //
+ " FROM Plugin AS p "), //
@@ -91,6 +93,7 @@ import org.rhq.core.util.MessageDigestGenerator;
+ " p.enabled = :enabled, " //
+ " p.help = :help, " //
+ " p.version = :version, " //
+ + " p.ampsVersion = :ampsVersion,"
+ " p.path = :path, " //
+ " p.md5 = :md5, " //
+ " p.mtime = :mtime " //
@@ -108,6 +111,7 @@ import org.rhq.core.util.MessageDigestGenerator;
+ " p.help, " //
+ " p.md5, " //
+ " p.version, " //
+ + " p.ampsVersion, "
+ " p.ctime, " //
+ " p.mtime) " //
+ " FROM Plugin p " //
@@ -152,6 +156,9 @@ public class Plugin implements Serializable {
@Column(name = "VERSION", nullable = true)
private String version;
+ @Column(name = "AMPS_VERSION", nullable = true)
+ private String ampsVersion;
+
@Column(name = "PATH", nullable = false)
private String path;
@@ -167,7 +174,7 @@ public class Plugin implements Serializable {
@Column(name = "CONTENT", nullable = true)
private byte[] content;
- protected Plugin() {
+ public Plugin() {
}
/**
@@ -236,7 +243,7 @@ public class Plugin implements Serializable {
* @param mtime
*/
public Plugin(int id, String name, String path, String displayName, boolean enabled,
String description,
- String help, String md5, String version, long ctime, long mtime) {
+ String help, String md5, String version, String ampsVersion, long ctime, long
mtime) {
this.id = id;
this.name = name;
this.path = path;
@@ -246,6 +253,7 @@ public class Plugin implements Serializable {
this.help = help;
this.md5 = md5;
this.version = version;
+ this.ampsVersion = ampsVersion;
this.ctime = ctime;
this.mtime = mtime;
}
@@ -356,6 +364,14 @@ public class Plugin implements Serializable {
this.version = version;
}
+ public String getAmpsVersion() {
+ return ampsVersion;
+ }
+
+ public void setAmpsVersion(String ampsVersion) {
+ this.ampsVersion = ampsVersion;
+ }
+
public String getMd5() {
return md5;
}
diff --git
a/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ConfigurationTest.java
b/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ConfigurationTest.java
index 93dc5c4..c502f99 100644
---
a/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ConfigurationTest.java
+++
b/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ConfigurationTest.java
@@ -116,7 +116,7 @@ public class ConfigurationTest {
@Test
public void deepCopyWithoutProxiesShouldSetParentReferenceOfCopiedRawConfigurations()
{
Configuration original = createConfiguration();
- original.addRawConfiguration(createRawConfiguration("/tmp/foo");
+ original.addRawConfiguration(createRawConfiguration("/tmp/foo"));
Configuration copy = original.deepCopyWithoutProxies();
RawConfiguration copiedRawConfig = getCopiedRawConfiguration(copy);
diff --git
a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/PluginTest.java
b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/PluginTest.java
index 07ab588..9fc810a 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/PluginTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/resource/test/PluginTest.java
@@ -28,6 +28,7 @@ import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.List;
+import java.lang.reflect.Constructor;
import javax.naming.InitialContext;
import javax.persistence.EntityManager;
@@ -40,6 +41,11 @@ import org.rhq.core.domain.plugin.Plugin;
import org.rhq.core.domain.test.AbstractEJB3Test;
import org.rhq.core.util.MessageDigestGenerator;
import org.rhq.core.util.stream.StreamUtil;
+import org.hibernate.Session;
+import org.hibernate.transform.ResultTransformer;
+import org.hibernate.type.Type;
+import org.hibernate.criterion.Example;
+import org.hibernate.criterion.Projections;
@Test
public class PluginTest extends AbstractEJB3Test {
@@ -90,6 +96,7 @@ public class PluginTest extends AbstractEJB3Test {
enabled = !enabled;
md5 = md5 + "00000";
String version = "version-UPDATED";
+ String ampsVersion = "ampsVersion-UPDATED";
String description = "description-UPDATED";
String help = "help-UPDATED";
@@ -106,6 +113,7 @@ public class PluginTest extends AbstractEJB3Test {
q.setParameter("enabled", enabled);
q.setParameter("md5", md5);
q.setParameter("version", version);
+ q.setParameter("ampsVersion", ampsVersion);
q.setParameter("description", description);
q.setParameter("help", help);
q.setParameter("mtime", System.currentTimeMillis());
@@ -496,4 +504,5 @@ public class PluginTest extends AbstractEJB3Test {
}
}
}
+
}
\ No newline at end of file
diff --git
a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/resource/metadata/ResourceMetadataManagerBean.java
b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/resource/metadata/ResourceMetadataManagerBean.java
index 4bde2aa..7d2265a 100644
---
a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/resource/metadata/ResourceMetadataManagerBean.java
+++
b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/resource/metadata/ResourceMetadataManagerBean.java
@@ -204,6 +204,7 @@ public class ResourceMetadataManagerBean implements
ResourceMetadataManagerLocal
q.setParameter("enabled", plugin.isEnabled());
q.setParameter("md5", plugin.getMD5());
q.setParameter("version", plugin.getVersion());
+ q.setParameter("ampsVersion", plugin.getAmpsVersion());
q.setParameter("description", plugin.getDescription());
q.setParameter("help", plugin.getHelp());
q.setParameter("mtime", plugin.getMtime());
commit ea57695afbcda010f30e9d34513dc5330b2ddb8e
Author: John Sanda <jsanda(a)redhat.com>
Date: Wed Oct 21 11:48:54 2009 -0400
Fixing typo/comiler error in unit test
diff --git
a/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ConfigurationTest.java
b/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ConfigurationTest.java
index 2838b26..93dc5c4 100644
---
a/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ConfigurationTest.java
+++
b/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ConfigurationTest.java
@@ -116,7 +116,7 @@ public class ConfigurationTest {
@Test
public void deepCopyWithoutProxiesShouldSetParentReferenceOfCopiedRawConfigurations()
{
Configuration original = createConfiguration();
- original.addRawConfiguration(createRawConfiguration("/tmp/foo"););
+ original.addRawConfiguration(createRawConfiguration("/tmp/foo");
Configuration copy = original.deepCopyWithoutProxies();
RawConfiguration copiedRawConfig = getCopiedRawConfiguration(copy);
commit ea87ff2ad0e8faba3ee81db903960427095bf586
Author: John Sanda <jsanda(a)redhat.com>
Date: Mon Oct 19 16:50:58 2009 -0400
Updating deepCopyWithoutProxies() to copy rawConfigurations collection.
diff --git
a/modules/core/domain/src/main/java/org/rhq/core/domain/configuration/Configuration.java
b/modules/core/domain/src/main/java/org/rhq/core/domain/configuration/Configuration.java
index 237b27b..3fab412 100644
---
a/modules/core/domain/src/main/java/org/rhq/core/domain/configuration/Configuration.java
+++
b/modules/core/domain/src/main/java/org/rhq/core/domain/configuration/Configuration.java
@@ -499,7 +499,7 @@ public class Configuration implements Externalizable, Cloneable,
AbstractPropert
}
for (RawConfiguration rawConfig : rawConfigurations) {
-
+ copy.addRawConfiguration(rawConfig.deepCopy());
}
return copy;
diff --git
a/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ConfigurationTest.java
b/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ConfigurationTest.java
index ddbdc83..2838b26 100644
---
a/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ConfigurationTest.java
+++
b/modules/core/domain/src/test/java/org/rhq/core/domain/configuration/ConfigurationTest.java
@@ -99,6 +99,43 @@ public class ConfigurationTest {
}
@Test
+ public void deepCopyWithoutProxiesShouldCopyRawConfigurations() {
+ Configuration original = createConfiguration();
+ original.addRawConfiguration(createRawConfiguration("/tmp/foo"));
+
+ Configuration copy = original.deepCopyWithoutProxies();
+
+ assertNotSame(
+ copy.getRawConfigurations(),
+ original.getRawConfigurations(),
+ "The rawConfigurations property should not refer to the original
rawConfigurations of the copied object."
+ );
+ assertEquals(copy.getRawConfigurations(), original.getRawConfigurations(),
"Failed to copy rawConfigurations property.");
+ }
+
+ @Test
+ public void deepCopyWithoutProxiesShouldSetParentReferenceOfCopiedRawConfigurations()
{
+ Configuration original = createConfiguration();
+ original.addRawConfiguration(createRawConfiguration("/tmp/foo"););
+
+ Configuration copy = original.deepCopyWithoutProxies();
+ RawConfiguration copiedRawConfig = getCopiedRawConfiguration(copy);
+
+ assertSame(
+ copiedRawConfig.getConfiguration(),
+ copy,
+ "The reference to the parent configuration should point to the newly
copied configuration, not the original configuration."
+ );
+ }
+
+ private RawConfiguration getCopiedRawConfiguration(Configuration config) {
+ for (RawConfiguration rawConfig : config.getRawConfigurations()) {
+ return rawConfig;
+ }
+ return null;
+ }
+
+ @Test
public void equalsShouldBeFalseWhenArgumentIsNull() {
Configuration config = new Configuration();