KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > jonas > jtests > servlets > endpoint > AddressBookImpl


1 package org.objectweb.jonas.jtests.servlets.endpoint;
2
3 import java.util.Hashtable JavaDoc;
4 import java.util.Map JavaDoc;
5
6 public class AddressBookImpl implements AddressBook {
7
8     /**
9      * Hack !! used to keep a state in this ws !
10      */

11     private static Map JavaDoc addresses = null;
12
13     private static void initAddresses() {
14         addresses = new Hashtable JavaDoc();
15         Address a = new Address();
16         a.setName("JOnAS");
17         a.setCompany("ObjectWeb Consortium");
18         a.setVersion(4.0f);
19         addresses.put(a.getName(), a);
20     }
21
22     public AddressBookImpl() {
23         if (addresses == null) {
24             initAddresses();
25         }
26     }
27
28     public void addAddress(Address addr) throws AddressBookException {
29         if (isPresent(addr.getName())) {
30             throw new AddressBookException("Address " + addr + " already present in Book");
31         }
32
33         addresses.put(addr.getName(), addr);
34     }
35
36     public Address getAddress(String JavaDoc name) {
37         return (Address) addresses.get(name);
38     }
39
40     public Address[] getAddresses() {
41         Address[] exported = new Address[addresses.size()];
42         return (Address[]) addresses.values().toArray(exported);
43     }
44     
45     public boolean isPresent(String JavaDoc name) {
46         return (getAddress(name) != null);
47     }
48
49     public void reset() {
50         addresses = null;
51     }
52 }
53
Popular Tags