KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > sapia > soto > ServiceMetaData


1 package org.sapia.soto;
2
3 import java.util.List JavaDoc;
4
5
6 /**
7  * Holds meta information about a given service.
8  *
9  * @see org.sapia.soto.Service
10  *
11  * @author Yanick Duchesne
12  * <dl>
13  * <dt><b>Copyright:</b><dd>Copyright &#169; 2002-2003 <a HREF="http://www.sapia-oss.org">Sapia Open Source Software</a>. All Rights Reserved.</dd></dt>
14  * <dt><b>License:</b><dd>Read the license.txt file of the jar or visit the
15  * <a HREF="http://www.sapia-oss.org/license.html">license page</a> at the Sapia OSS web site</dd></dt>
16  * </dl>
17  */

18 public class ServiceMetaData {
19   private String JavaDoc _id;
20   private Object JavaDoc _service;
21   private List JavaDoc _layers;
22
23   /**
24    * Constructor for ServiceMetaData.
25    */

26   public ServiceMetaData(String JavaDoc id, Object JavaDoc service, List JavaDoc layers) {
27     _id = id;
28     _service = service;
29     _layers = layers;
30   }
31
32   /**
33    * Returns the identifier of the service to which this instance
34    * corresponds.
35    *
36    * @return a service identifier, or <code>null</code> if the service
37    * to which this instance corresponds is an "anonymous" service (it has
38    * no ID).
39    */

40   public String JavaDoc getServiceID() {
41     return _id;
42   }
43
44   /**
45    * Sets this instance's service.
46    * <p>
47    * <b>WARNING</b>: in general, this method should not be called by
48    * client applications.
49    *
50    * @param a service instance.
51    * @see Service
52    */

53   public void setService(Object JavaDoc obj) {
54     _service = obj;
55   }
56
57   /**
58    * Returns this instance's associated service.
59    *
60    * @return a service.
61    */

62   public Object JavaDoc getService() {
63     return _service;
64   }
65
66   public void init() throws Exception JavaDoc {
67     ((Service) _service).init();
68
69     for (int i = 0; i < _layers.size(); i++) {
70       ((Layer) _layers.get(i)).init(this);
71     }
72   }
73
74   void start() throws Exception JavaDoc {
75     ((Service) _service).start();
76
77     for (int i = 0; i < _layers.size(); i++) {
78       ((Layer) _layers.get(i)).start(this);
79     }
80   }
81
82   void dispose() {
83     for (int i = 0; i < _layers.size(); i++) {
84       ((Layer) _layers.get(i)).dispose();
85     }
86
87     ((Service) _service).dispose();
88   }
89 }
90
Popular Tags