View Javadoc

1   package org.kuali.ole.patron.api;
2   
3   import org.kuali.rice.core.api.mo.AbstractDataTransferObject;
4   import org.kuali.rice.core.api.mo.ModelBuilder;
5   import org.kuali.rice.kim.api.identity.address.EntityAddress;
6   import org.kuali.rice.krms.api.KrmsConstants;
7   
8   import javax.xml.bind.annotation.*;
9   import java.io.Serializable;
10  
11  /**
12   * Created with IntelliJ IDEA.
13   * User: ?
14   * Date: 5/28/12
15   * Time: 12:09 PM
16   * To change this template use File | Settings | File Templates.
17   */
18  @XmlRootElement(name = OleEntityAddressDefinition.Constants.ROOT_ELEMENT_NAME)
19  @XmlAccessorType(XmlAccessType.NONE)
20  @XmlType(name = OleEntityAddressDefinition.Constants.TYPE_NAME, propOrder = {
21          OleEntityAddressDefinition.Elements.OLE_ADDRESS,
22          OleEntityAddressDefinition.Elements.ENTITY_ADDRESS
23  })
24  public class OleEntityAddressDefinition extends AbstractDataTransferObject implements OleEntityAddressContract {
25  
26      private static final long serialVersionUID = 1L;
27  
28      @XmlElement(name = Elements.OLE_ADDRESS, required = false)
29      private final OleAddressDefinition oleAddressBo;
30      @XmlElement(name = Elements.ENTITY_ADDRESS, required = false)
31      private final EntityAddress entityAddressBo;
32  
33      public OleEntityAddressDefinition () {
34          oleAddressBo = null;
35          entityAddressBo = null;
36      }
37  
38      public OleEntityAddressDefinition(Builder builder) {
39          oleAddressBo = builder.getOleAddressBo().build();
40          entityAddressBo = builder.getEntityAddressBo().build();
41  
42      }
43  
44      @Override
45      public EntityAddress getEntityAddressBo() {
46          return entityAddressBo;
47      }
48  
49      @Override
50      public OleAddressDefinition getOleAddressBo() {
51          return oleAddressBo;
52      }
53  
54      public static class Builder implements OleEntityAddressContract, ModelBuilder, Serializable {
55          private static final long serialVersionUID = 1L;
56  
57          public OleAddressDefinition.Builder oleAddressBo;
58          public EntityAddress.Builder entityAddressBo;
59  
60          public String patronNoteId;
61          public String olePatronId;
62          public String patronNoteTypeId;
63          public String patronNoteText;
64          public OlePatronNoteTypeDefinition.Builder olePatronNoteType;
65          public OlePatronDefinition.Builder olePatron;
66          public Long versionNumber;
67          public boolean active;
68          public String objectId;
69  
70          private Builder (OleAddressDefinition.Builder oleAddressBo, EntityAddress.Builder entityAddressBo) {
71  
72              setOleAddressBo(oleAddressBo);
73              setEntityAddressBo(entityAddressBo);
74  
75          }
76  
77          public static Builder create (OleAddressDefinition.Builder oleAddressBo, EntityAddress.Builder entityAddressBo){
78              //OlePatronDefinition.Builder olePatron) {
79              return new Builder(oleAddressBo, entityAddressBo);
80          }
81          public static Builder create (OleEntityAddressContract oleEntityAddressContract) {
82              Builder builder = Builder.create(OleAddressDefinition.Builder.create(oleEntityAddressContract.getOleAddressBo()),EntityAddress.Builder.create(oleEntityAddressContract.getEntityAddressBo()));
83              return builder;
84  
85          }
86  
87  
88          @Override
89          public OleAddressDefinition.Builder getOleAddressBo() {
90              return this.oleAddressBo;
91          }
92  
93  
94          public EntityAddress.Builder getEntityAddressBo() {
95              return this.entityAddressBo;
96          }
97  
98          public void setOleAddressBo(OleAddressDefinition.Builder oleAddressBo) {
99              this.oleAddressBo = oleAddressBo;
100         }
101 
102         public void setEntityAddressBo(EntityAddress.Builder entityAddressBo) {
103             this.entityAddressBo = entityAddressBo;
104         }
105 
106         @Override
107         public OleEntityAddressDefinition build() {
108             return new OleEntityAddressDefinition(this);
109         }
110     }
111 
112 
113     /*public OlePatronDefinition getOlePatron() {
114         return this.olePatron;
115     }*/
116     static class Constants {
117         public static final String ROOT_ELEMENT_NAME = "oleEntityAddressDefinition";
118         public static final String TYPE_NAME = "oleEntityAddressDefinitionType";
119     }
120 
121     static class Elements {
122         public static final String OLE_ADDRESS = "oleAddressBo";
123         public static final String ENTITY_ADDRESS = "entityAddressBo";
124 
125     }
126 
127     public static class Cache {
128         public static final String NAME = KrmsConstants.Namespaces.KRMS_NAMESPACE_2_0 + "/" + OleEntityAddressDefinition.Constants.TYPE_NAME;
129     }
130 }