diff --git a/src/test/java/com/avaje/tests/model/embedded/EAddress.java b/src/test/java/com/avaje/tests/model/embedded/EAddress.java index b857fb5b6..a663c5e87 100644 --- a/src/test/java/com/avaje/tests/model/embedded/EAddress.java +++ b/src/test/java/com/avaje/tests/model/embedded/EAddress.java @@ -1,16 +1,21 @@ package com.avaje.tests.model.embedded; import javax.persistence.Embeddable; +import javax.persistence.EnumType; +import javax.persistence.Enumerated; @Embeddable public class EAddress { String street; - + String suburb; - + String city; + @Enumerated(EnumType.STRING) + EAddressStatus status; + public String getStreet() { return street; } @@ -35,4 +40,11 @@ public class EAddress { this.city = city; } + public EAddressStatus getStatus() { + return status; + } + + public void setStatus(EAddressStatus status) { + this.status = status; + } } diff --git a/src/test/java/com/avaje/tests/model/embedded/EAddressStatus.java b/src/test/java/com/avaje/tests/model/embedded/EAddressStatus.java new file mode 100644 index 000000000..8e327ed76 --- /dev/null +++ b/src/test/java/com/avaje/tests/model/embedded/EAddressStatus.java @@ -0,0 +1,6 @@ +package com.avaje.tests.model.embedded; + +public enum EAddressStatus { + ONE, + TWO +} diff --git a/src/test/java/com/avaje/tests/model/embedded/EInvoice.java b/src/test/java/com/avaje/tests/model/embedded/EInvoice.java index 01a75f8f8..0636d69d5 100644 --- a/src/test/java/com/avaje/tests/model/embedded/EInvoice.java +++ b/src/test/java/com/avaje/tests/model/embedded/EInvoice.java @@ -20,28 +20,29 @@ public class EInvoice { public enum State { New, Processing, Approved } - + @Id Long id; - + @Version Long version; - + Date invoiceDate; - + State state; - + @ManyToOne EPerson person; - + @Embedded @AttributeOverrides({ @AttributeOverride(name = "street", column = @Column(name = "ship_street")), @AttributeOverride(name = "suburb", column = @Column(name = "ship_suburb")), - @AttributeOverride(name = "city", column = @Column(name = "ship_city")) - }) + @AttributeOverride(name = "city", column = @Column(name = "ship_city")), + @AttributeOverride(name = "status", column = @Column(name = "ship_status")) + }) EAddress shipAddress; - + @Embedded EAddress billAddress; @@ -60,7 +61,7 @@ public class EInvoice { public void setVersion(Long version) { this.version = version; } - + public State getState() { return state; } @@ -100,5 +101,5 @@ public class EInvoice { public void setBillAddress(EAddress billAddress) { this.billAddress = billAddress; } - + } diff --git a/src/test/java/com/avaje/tests/model/embedded/EPerson.java b/src/test/java/com/avaje/tests/model/embedded/EPerson.java index c7c496b38..fa122f0a3 100644 --- a/src/test/java/com/avaje/tests/model/embedded/EPerson.java +++ b/src/test/java/com/avaje/tests/model/embedded/EPerson.java @@ -1,5 +1,8 @@ package com.avaje.tests.model.embedded; +import javax.persistence.AttributeOverride; +import javax.persistence.AttributeOverrides; +import javax.persistence.Column; import javax.persistence.Embedded; import javax.persistence.Entity; import javax.persistence.Id; @@ -19,6 +22,10 @@ public class EPerson { String notes; @Embedded + @AttributeOverrides({ + @AttributeOverride(name="city", column = @Column(name="addr_city")), + @AttributeOverride(name="status", column = @Column(name="addr_status")) + }) EAddress address; public Long getId() {