KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > dataregistry > OrderBean


1 /*
2  * Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved. U.S.
3  * Government Rights - Commercial software. Government users are subject
4  * to the Sun Microsystems, Inc. standard license agreement and
5  * applicable provisions of the FAR and its supplements. Use is subject
6  * to license terms.
7  *
8  * This distribution may include materials developed by third parties.
9  * Sun, Sun Microsystems, the Sun logo, Java and J2EE are trademarks
10  * or registered trademarks of Sun Microsystems, Inc. in the U.S. and
11  * other countries.
12  *
13  * Copyright (c) 2005 Sun Microsystems, Inc. Tous droits reserves.
14  *
15  * Droits du gouvernement americain, utilisateurs gouvernementaux - logiciel
16  * commercial. Les utilisateurs gouvernementaux sont soumis au contrat de
17  * licence standard de Sun Microsystems, Inc., ainsi qu'aux dispositions
18  * en vigueur de la FAR (Federal Acquisition Regulations) et des
19  * supplements a celles-ci. Distribue par des licences qui en
20  * restreignent l'utilisation.
21  *
22  * Cette distribution peut comprendre des composants developpes par des
23  * tierces parties. Sun, Sun Microsystems, le logo Sun, Java et J2EE
24  * sont des marques de fabrique ou des marques deposees de Sun
25  * Microsystems, Inc. aux Etats-Unis et dans d'autres pays.
26  */

27
28 package dataregistry;
29
30 import java.math.BigDecimal JavaDoc;
31 import java.sql.Timestamp JavaDoc;
32 import java.util.Collection JavaDoc;
33 import java.util.Date JavaDoc;
34 import java.util.Iterator JavaDoc;
35 import javax.ejb.EJBException JavaDoc;
36
37 /**
38  * This is the bean class for the OrdersBean enterprise bean.
39  */

40 public abstract class OrderBean implements javax.ejb.EntityBean JavaDoc, dataregistry.OrderLocalBusiness {
41     private javax.ejb.EntityContext JavaDoc context;
42     
43     // <editor-fold defaultstate="collapsed" desc="EJB infrastructure methods. Click on the + sign on the left to edit the code.">
44
// TODO Consider creating Transfer Object to encapsulate data
45
// TODO Review finder methods
46
/**
47      * @see javax.ejb.EntityBean#setEntityContext(javax.ejb.EntityContext)
48      */

49     public void setEntityContext(javax.ejb.EntityContext JavaDoc aContext) {
50         context = aContext;
51     }
52     
53     /**
54      * @see javax.ejb.EntityBean#ejbActivate()
55      */

56     public void ejbActivate() {
57         
58     }
59     
60     /**
61      * @see javax.ejb.EntityBean#ejbPassivate()
62      */

63     public void ejbPassivate() {
64         
65     }
66     
67     /**
68      * @see javax.ejb.EntityBean#ejbRemove()
69      */

70     public void ejbRemove() {
71         
72     }
73     
74     /**
75      * @see javax.ejb.EntityBean#unsetEntityContext()
76      */

77     public void unsetEntityContext() {
78         context = null;
79     }
80     
81     /**
82      * @see javax.ejb.EntityBean#ejbLoad()
83      */

84     public void ejbLoad() {
85         
86     }
87     
88     /**
89      * @see javax.ejb.EntityBean#ejbStore()
90      */

91     public void ejbStore() {
92         
93     }
94     // </editor-fold>
95

96     
97     public abstract java.lang.Integer JavaDoc getOrderId();
98     public abstract void setOrderId(java.lang.Integer JavaDoc orderId);
99     
100     public abstract java.lang.String JavaDoc getStatus();
101     public abstract void setStatus(java.lang.String JavaDoc status);
102     
103     public abstract java.sql.Timestamp JavaDoc getLastUpdate();
104     public abstract void setLastUpdate(java.sql.Timestamp JavaDoc lastUpdate);
105     
106     public abstract java.math.BigDecimal JavaDoc getDiscount();
107     public abstract void setDiscount(java.math.BigDecimal JavaDoc discount);
108     
109     public abstract java.lang.String JavaDoc getShipmentInfo();
110     public abstract void setShipmentInfo(java.lang.String JavaDoc shipmentInfo);
111     
112     public abstract java.util.Collection JavaDoc getLineitemBean();
113     public abstract void setLineitemBean(java.util.Collection JavaDoc lineitemBean);
114     
115     
116     public java.lang.Integer JavaDoc ejbCreate(java.lang.Integer JavaDoc orderId, java.lang.String JavaDoc status, java.sql.Timestamp JavaDoc lastUpdate, java.math.BigDecimal JavaDoc discount, java.lang.String JavaDoc shipmentInfo) throws javax.ejb.CreateException JavaDoc {
117         if (orderId == null) {
118             throw new javax.ejb.CreateException JavaDoc("The field \"orderId\" must not be null");
119         }
120         if (status == null) {
121             throw new javax.ejb.CreateException JavaDoc("The field \"status\" must not be null");
122         }
123         if (lastUpdate == null) {
124             throw new javax.ejb.CreateException JavaDoc("The field \"lastUpdate\" must not be null");
125         }
126         if (discount == null) {
127             throw new javax.ejb.CreateException JavaDoc("The field \"discount\" must not be null");
128         }
129         
130         // TODO add additional validation code, throw CreateException if data is not valid
131
setOrderId(orderId);
132         setStatus(status);
133         setLastUpdate(lastUpdate);
134         setDiscount(discount);
135         setShipmentInfo(shipmentInfo);
136         
137         return null;
138     }
139     
140     public void ejbPostCreate(java.lang.Integer JavaDoc orderId, java.lang.String JavaDoc status, java.sql.Timestamp JavaDoc lastUpdate, java.math.BigDecimal JavaDoc discount, java.lang.String JavaDoc shipmentInfo) {
141         // TODO populate relationships here if appropriate
142

143     }
144
145     public java.lang.Integer JavaDoc ejbCreate(java.lang.Integer JavaDoc orderId, java.lang.String JavaDoc status, java.math.BigDecimal JavaDoc discount, java.lang.String JavaDoc shipmentInfo) throws javax.ejb.CreateException JavaDoc {
146         //TODO implement ejbCreate
147
setOrderId(orderId);
148         setStatus(status);
149         setLastUpdate(new Timestamp JavaDoc(new Date JavaDoc().getTime()));
150         setDiscount(discount);
151         setShipmentInfo(shipmentInfo);
152         
153         return null;
154     }
155
156     public void ejbPostCreate(java.lang.Integer JavaDoc orderId, java.lang.String JavaDoc status, java.math.BigDecimal JavaDoc doscount, java.lang.String JavaDoc shipmentInfo) throws javax.ejb.CreateException JavaDoc {
157         //TODO implement ejbPostCreate
158
}
159
160     public double calculateAmmount() {
161         //TODO implement calculateAmmount
162
double ammount = 0;
163         Collection JavaDoc items = getLineitemBean();
164                                                                            
165         for (Iterator JavaDoc it = items.iterator(); it.hasNext();) {
166             LineItemLocal item = (LineItemLocal) it.next();
167             VendorPartLocal part = item.getVendorPartNumber();
168             ammount += (part.getPrice().doubleValue() * item.getQuantity().doubleValue());
169         }
170                                                                            
171         return (ammount * (100 - getDiscount().intValue())) / 100;
172
173     }
174
175     public void ejbHomeAdjustDiscount(int adjustment) {
176         //TODO implement ejbHomeHomeAdjustDiscount
177
try {
178             Collection JavaDoc orders = ejbSelectAll();
179                                                                            
180             for (Iterator JavaDoc it = orders.iterator(); it.hasNext();) {
181                 OrderLocal order = (OrderLocal) it.next();
182                 int newDiscount = order.getDiscount().intValue() + adjustment;
183                 order.setDiscount((newDiscount > 0) ? new BigDecimal JavaDoc(newDiscount) : new BigDecimal JavaDoc(0));
184             }
185         } catch (Exception JavaDoc ex) {
186             throw new EJBException JavaDoc(ex.getMessage());
187         }
188
189     }
190
191     public abstract java.util.Collection JavaDoc ejbSelectAll() throws javax.ejb.FinderException JavaDoc;
192
193     public int getNexId() {
194         return getLineitemBean().size() + 1;
195     }
196 }
197
Popular Tags