KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > nightlabs > ipanema > trade > OrderRequirement


1 /*
2  * Created on 07.11.2004
3  */

4 package com.nightlabs.ipanema.trade;
5
6 import java.io.Serializable JavaDoc;
7 import java.util.HashMap JavaDoc;
8 import java.util.Map JavaDoc;
9
10 /**
11  * There exists one instance of OrderRequirement for each Order on the side of
12  * its vendor. It bundles all orders that are used to fulfill the main order.
13  * <br/><br/>
14  * This object is never transferred to another vendor/customer organisation and resides
15  * only in the datastore of the vendor for whose Order it has been created.
16  *
17  * @author Marco Schulze - marco at nightlabs dot de
18  *
19  * @jdo.persistence-capable
20  * identity-type = "application"
21  * objectid-class = "com.nightlabs.ipanema.trade.id.OrderRequirementID"
22  * detachable = "true"
23  *
24  * @jdo.inheritance strategy = "new-table"
25  */

26 public class OrderRequirement
27     implements Serializable JavaDoc
28 {
29     /**
30      * @jdo.field primary-key="true"
31      * @jdo.column length="100"
32      */

33     private String JavaDoc organisationID;
34
35     /**
36      * @jdo.field primary-key="true"
37      */

38     private long orderID;
39     
40     /**
41      * @jdo.field persistence-modifier="persistent"
42      */

43     private Order order;
44     
45     /**
46      * @jdo.field persistence-modifier="persistent"
47      */

48     private Trader trader;
49
50     public OrderRequirement() { }
51     
52     public OrderRequirement(Trader trader, Order order)
53     {
54         if (trader == null)
55             throw new NullPointerException JavaDoc("trader");
56         
57         if (order == null)
58             throw new NullPointerException JavaDoc("order");
59
60         this.order = order;
61         this.organisationID = order.getOrganisationID();
62         this.orderID = order.getOrderID();
63     }
64     
65     /**
66      * key: String anchorPK (of the vendor LegalEntity)<br/>
67      * value: Order order
68      * <br/><br/>
69      *
70      * @jdo.field
71      * persistence-modifier="persistent"
72      * collection-type="map"
73      * key-type="java.lang.String"
74      * value-type="Order"
75      *
76      * @jdo.join
77      */

78     private Map JavaDoc ordersByVendor = new HashMap JavaDoc();
79     
80     
81     public void addOrder(Order order) {
82         ordersByVendor.put(order.getVendor().getPrimaryKey(), order);
83     }
84     
85     /**
86      * This method returns the Order for the given vendor or null,
87      * if it does not exist.
88      *
89      * @param vendor
90      * @return Returns the order for the given vendor or <tt>null</tt>.
91      */

92     public Order getOrder(OrganisationLegalEntity vendor)
93     {
94         return (Order)ordersByVendor.get(vendor.getPrimaryKey());
95     }
96 }
97
Popular Tags