summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDevan Goodwin <dgoodwin@redhat.com>2009-12-07 09:48:11 -0400
committerDevan Goodwin <dgoodwin@redhat.com>2009-12-07 09:48:11 -0400
commit318450b755e8a849e035e8d1b8895c1cfb5b278e (patch)
treed188f42a37c21c1cc426fd6e2de765857ef2c1f4
parent1bee200575dda5cf1b41bf879f79471e47311740 (diff)
downloadcandlepin-318450b755e8a849e035e8d1b8895c1cfb5b278e.tar.gz
candlepin-318450b755e8a849e035e8d1b8895c1cfb5b278e.tar.xz
candlepin-318450b755e8a849e035e8d1b8895c1cfb5b278e.zip
Change consumer -> consumer info relationship.
Previously was using the PrimaryKeyJoinColumn where the consumer and it's info both had exactly the same ID. This made it appear as if the info was disjoint in an ERD however. Changing to a more normal join column.
-rw-r--r--proxy/code/src/META-INF/persistence.xml2
-rw-r--r--proxy/code/src/org/fedoraproject/candlepin/model/Consumer.java3
-rw-r--r--proxy/code/src/org/fedoraproject/candlepin/model/test/ConsumerTest.java12
3 files changed, 13 insertions, 4 deletions
diff --git a/proxy/code/src/META-INF/persistence.xml b/proxy/code/src/META-INF/persistence.xml
index b41164a..83eda51 100644
--- a/proxy/code/src/META-INF/persistence.xml
+++ b/proxy/code/src/META-INF/persistence.xml
@@ -12,7 +12,7 @@
<property name="hibernate.hbm2ddl.auto" value="create-drop"/>
<property name="hibernate.connection.username" value="sa"/>
<property name="hibernate.connection.password" value=""/>
- <property name="hibernate.show_sql" value="false" />
+ <property name="hibernate.show_sql" value="true" />
</properties>
</persistence-unit>
diff --git a/proxy/code/src/org/fedoraproject/candlepin/model/Consumer.java b/proxy/code/src/org/fedoraproject/candlepin/model/Consumer.java
index 6869420..1e07c7b 100644
--- a/proxy/code/src/org/fedoraproject/candlepin/model/Consumer.java
+++ b/proxy/code/src/org/fedoraproject/candlepin/model/Consumer.java
@@ -30,7 +30,6 @@ import javax.persistence.ManyToMany;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;
-import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.Table;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
@@ -98,7 +97,7 @@ public class Consumer {
private Set<Entitlement> entitlements;
@OneToOne(cascade=CascadeType.ALL)
- @PrimaryKeyJoinColumn
+ @JoinColumn(name="consumer_info_id")
private ConsumerInfo info;
public Consumer(String name, Owner owner, ConsumerType type) {
diff --git a/proxy/code/src/org/fedoraproject/candlepin/model/test/ConsumerTest.java b/proxy/code/src/org/fedoraproject/candlepin/model/test/ConsumerTest.java
index d9a986f..51399e1 100644
--- a/proxy/code/src/org/fedoraproject/candlepin/model/test/ConsumerTest.java
+++ b/proxy/code/src/org/fedoraproject/candlepin/model/test/ConsumerTest.java
@@ -102,6 +102,11 @@ public class ConsumerTest extends DatabaseTestFixture {
@Test
public void testMetadataInfo() {
beginTransaction();
+ Consumer consumer2 = new Consumer("consumer2", owner, consumerType);
+ consumer2.setMetadataField("foo", "bar2");
+ em.persist(consumer2);
+ commitTransaction();
+
Consumer lookedUp = (Consumer)em.find(Consumer.class, consumer.getId());
Map<String, String> metadata = lookedUp.getInfo().getMetadata();
assertEquals(2, metadata.keySet().size());
@@ -110,7 +115,12 @@ public class ConsumerTest extends DatabaseTestFixture {
assertEquals("bar1", metadata.get("foo1"));
assertEquals("bar1", lookedUp.getInfo().getMetadataField("foo1"));
assertEquals(consumer.getId(), lookedUp.getInfo().getConsumer().getId());
- commitTransaction();
+
+ Consumer lookedUp2 = (Consumer)em.find(Consumer.class, consumer2.getId());
+ metadata = lookedUp2.getInfo().getMetadata();
+ assertEquals(1, metadata.keySet().size());
+ assertEquals("bar2", metadata.get("foo"));
+
}
@Test