KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > serviceapi > ServiceModule


1 /*
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * When distributing Covered Code, include this CDDL Header Notice in each file
10  * and include the License file at http://www.netbeans.org/cddl.txt.
11  * If applicable, add the following below the CDDL Header, with the fields
12  * enclosed by brackets [] replaced by your own identifying information:
13  * "Portions Copyrighted [year] [name of copyright owner]"
14  *
15  * The Original Software is NetBeans. The Initial Developer of the Original
16  * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
17  * Microsystems, Inc. All Rights Reserved.
18  */

19 package org.netbeans.modules.serviceapi;
20
21 import java.beans.PropertyChangeListener JavaDoc;
22 import java.beans.PropertyChangeSupport JavaDoc;
23 import java.util.Collection JavaDoc;
24 import org.netbeans.api.project.Project;
25
26 /**
27  * Represents a unit in designing and composing service-based application.
28  *
29  * @author Nam Nguyen
30  * @author Chris Webster
31  * @author Jiri Kopsa
32  */

33 public abstract class ServiceModule {
34
35     /**
36      * Property name of change event on service components.
37      */

38     public static final String JavaDoc SERVICE_COMPONENT_ADDED_PROPERTY = "serviceComponentAdded";
39     public static final String JavaDoc SERVICE_COMPONENT_REMOVED_PROPERTY = "serviceComponentRemoved";
40
41     private PropertyChangeSupport JavaDoc pcs = new PropertyChangeSupport JavaDoc(this);
42     
43     /**
44      * Adds/removes listener from this service module.
45      */

46     public void addPropertyListener(PropertyChangeListener JavaDoc listener) {
47         pcs.addPropertyChangeListener(listener);
48     }
49     public void removePropertyListener(PropertyChangeListener JavaDoc listener) {
50         pcs.removePropertyChangeListener(listener);
51     }
52
53     /**
54      * @return name of the service module.
55      */

56     public abstract String JavaDoc getName();
57
58     /**
59      * Returns service components contained in this module.
60      */

61     public abstract Collection JavaDoc<ServiceComponent> getServiceComponents();
62     
63     /**
64      * Add service component.
65      */

66     
67     public abstract void addServiceComponent(ServiceComponent component);
68     
69     /**
70      * Remove service component.
71      */

72     public abstract void removeServiceComponent(ServiceComponent component);
73
74     /**
75      * @return the project if applicable (not applicable for service modules from appserver).
76      */

77     public abstract Project getProject();
78 }
79
Popular Tags