Skip to content

Commit

Permalink
change address list to map
Browse files Browse the repository at this point in the history
  • Loading branch information
tifoha committed Oct 28, 2015
1 parent 3fcf089 commit c3ab326
Show file tree
Hide file tree
Showing 3 changed files with 110 additions and 55 deletions.
96 changes: 48 additions & 48 deletions ivis-client/src/main/webapp/WEB-INF/web.xml
Original file line number Diff line number Diff line change
Expand Up @@ -160,32 +160,32 @@
<load-on-startup>1</load-on-startup>
</servlet>

<servlet>
<servlet-name>EditTextTest</servlet-name>
<servlet-class>com.imcode.imcms.servlet.apis.TextApiServlet</servlet-class>
</servlet>
<!--<servlet>-->
<!--<servlet-name>EditTextTest</servlet-name>-->
<!--<servlet-class>com.imcode.imcms.servlet.apis.TextApiServlet</servlet-class>-->
<!--</servlet>-->

<servlet>
<servlet-name>EditMenuTest</servlet-name>
<servlet-class>com.imcode.imcms.servlet.apis.MenuApiServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>DocumentApi</servlet-name>
<servlet-class>com.imcode.imcms.servlet.apis.DocumentApiServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>LanguageApi</servlet-name>
<servlet-class>com.imcode.imcms.servlet.apis.LanguageApiServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>LoopApi</servlet-name>
<servlet-class>com.imcode.imcms.servlet.apis.LoopApiServlet</servlet-class>
</servlet>
<!--<servlet>-->
<!--<servlet-name>EditMenuTest</servlet-name>-->
<!--<servlet-class>com.imcode.imcms.servlet.apis.MenuApiServlet</servlet-class>-->
<!--</servlet>-->
<!--<servlet>-->
<!--<servlet-name>DocumentApi</servlet-name>-->
<!--<servlet-class>com.imcode.imcms.servlet.apis.DocumentApiServlet</servlet-class>-->
<!--</servlet>-->
<!--<servlet>-->
<!--<servlet-name>LanguageApi</servlet-name>-->
<!--<servlet-class>com.imcode.imcms.servlet.apis.LanguageApiServlet</servlet-class>-->
<!--</servlet>-->
<!--<servlet>-->
<!--<servlet-name>LoopApi</servlet-name>-->
<!--<servlet-class>com.imcode.imcms.servlet.apis.LoopApiServlet</servlet-class>-->
<!--</servlet>-->

<servlet>
<servlet-name>TemplateApi</servlet-name>
<servlet-class>com.imcode.imcms.servlet.apis.TemplateApiServlet</servlet-class>
</servlet>
<!--<servlet>-->
<!--<servlet-name>TemplateApi</servlet-name>-->
<!--<servlet-class>com.imcode.imcms.servlet.apis.TemplateApiServlet</servlet-class>-->
<!--</servlet>-->

<servlet>
<servlet-name>RD</servlet-name>
Expand Down Expand Up @@ -441,32 +441,32 @@
<url-pattern>/api/image/*</url-pattern>
</servlet-mapping-->

<servlet-mapping>
<servlet-name>EditTextTest</servlet-name>
<url-pattern>/edit/*</url-pattern>
</servlet-mapping>
<!--<servlet-mapping>-->
<!--<servlet-name>EditTextTest</servlet-name>-->
<!--<url-pattern>/edit/*</url-pattern>-->
<!--</servlet-mapping>-->

<servlet-mapping>
<servlet-name>EditMenuTest</servlet-name>
<url-pattern>/editmenu/*</url-pattern>
</servlet-mapping>
<!--<servlet-mapping>-->
<!--<servlet-name>EditMenuTest</servlet-name>-->
<!--<url-pattern>/editmenu/*</url-pattern>-->
<!--</servlet-mapping>-->

<servlet-mapping>
<servlet-name>DocumentApi</servlet-name>
<url-pattern>/api/document/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>LanguageApi</servlet-name>
<url-pattern>/api/language/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>TemplateApi</servlet-name>
<url-pattern>/api/template/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>LoopApi</servlet-name>
<url-pattern>/api/loop/*</url-pattern>
</servlet-mapping>
<!--<servlet-mapping>-->
<!--<servlet-name>DocumentApi</servlet-name>-->
<!--<url-pattern>/api/document/*</url-pattern>-->
<!--</servlet-mapping>-->
<!--<servlet-mapping>-->
<!--<servlet-name>LanguageApi</servlet-name>-->
<!--<url-pattern>/api/language/*</url-pattern>-->
<!--</servlet-mapping>-->
<!--<servlet-mapping>-->
<!--<servlet-name>TemplateApi</servlet-name>-->
<!--<url-pattern>/api/template/*</url-pattern>-->
<!--</servlet-mapping>-->
<!--<servlet-mapping>-->
<!--<servlet-name>LoopApi</servlet-name>-->
<!--<url-pattern>/api/loop/*</url-pattern>-->
<!--</servlet-mapping>-->

<servlet-mapping>
<servlet-name>com.imcode.imcms.servlet.superadmin.AdminProfiles</servlet-name>
Expand Down
61 changes: 58 additions & 3 deletions ivis-core/src/main/java/com/imcode/entities/Person.java
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
package com.imcode.entities;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.imcode.entities.embed.Address;
import com.imcode.entities.embed.Email;
import com.imcode.entities.embed.Phone;
import com.imcode.entities.enums.AddressTypeEnum;
import com.imcode.entities.superclasses.AbstractIdEntity;
import org.hibernate.annotations.LazyCollection;
import org.hibernate.annotations.LazyCollectionOption;
Expand Down Expand Up @@ -33,9 +35,18 @@ public class Person extends AbstractIdEntity<Long> implements Serializable {
// @JoinTable(name = "dbo_person_address_cross",
// joinColumns = @JoinColumn(name = "personId", referencedColumnName = "id"),
// inverseJoinColumns = @JoinColumn(name = "addressId", referencedColumnName = "id"))


@ElementCollection
@CollectionTable(name = "dbo_person_address", joinColumns = @JoinColumn(name = "ownerId"))
private List<Address> addresses;
@MapKeyEnumerated(EnumType.STRING)
@MapKeyColumn(name="addressTypeKey")
private Map<AddressTypeEnum, Address> addresses;


// @ElementCollection
// @CollectionTable(name = "dbo_person_address", joinColumns = @JoinColumn(name = "ownerId"))
// private Map<AddressTypeEnum, Address> addresses;

@LazyCollection(LazyCollectionOption.FALSE)
// @ManyToMany(cascade = {CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REFRESH})//(fetch = FetchType.EAGER)
Expand Down Expand Up @@ -90,14 +101,58 @@ public void setLastName(String lastName) {
this.lastName = lastName;
}

public List<Address> getAddresses() {
public Map<AddressTypeEnum, Address> getAddresses() {
return addresses;
}

public void setAddresses(List<Address> addresses) {
public void setAddresses(Map<AddressTypeEnum, Address> addresses) {
if (!(addresses instanceof EnumMap)) {
addresses = new EnumMap<>(addresses);

}

this.addresses = addresses;
}

@JsonIgnore
public Address getRegistredAddress() {
return getAddress(AddressTypeEnum.REGISTERED);
}

@JsonIgnore
public Address getResidentalAddress() {
return getAddress(AddressTypeEnum.RESIDENTIAL);
}

@JsonIgnore
public Address getBoarderdAddress() {
return getAddress(AddressTypeEnum.BOARDER);
}


@JsonIgnore
public Address getAddress(AddressTypeEnum addressType) {
Objects.requireNonNull(addressType);

if (addresses == null) {
return null;
}

return addresses.get(addressType);
}

@JsonIgnore
public void setAddress(Address address) {
Objects.requireNonNull(address);
Objects.requireNonNull(address.getAddressType());

if (addresses == null) {
addresses = new EnumMap<>(AddressTypeEnum.class);
}

addresses.put(address.getAddressType(), address);
}

public String getPersonalId() {
return personalId;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ public static AddressTypeEnum fromInt(int id) {
throw new IllegalArgumentException();
}

@Override
public String toString() {
return representation;
}
// @Override
// public String toString() {
// return representation;
// }
}

0 comments on commit c3ab326

Please sign in to comment.