01: package org.andromda.core.namespace;
02:
03: import java.net.URL;
04:
05: /**
06: * This represents a component that can be discovered/registered within a namespace.
07: *
08: * @author Chad Brandon
09: */
10: public interface NamespaceComponent {
11: /**
12: * Sets the namespace to which this component belongs.
13: *
14: * @param namespace the name of the namespace to which this component belongs.
15: */
16: public void setNamespace(String namespace);
17:
18: /**
19: * Gets the namespace to which this component belongs.
20: *
21: * @return the name of the namespace.
22: */
23: public String getNamespace();
24:
25: /**
26: * The entire path to the resource this namespace component instance
27: * is configured from.
28: *
29: * @return URL the path to the resource from which this namespace
30: * component was configured.
31: */
32: public URL getResource();
33:
34: /**
35: * Sets the path of the resource from which this namespace component is configured.
36: *
37: * @param resource the resource URL.
38: */
39: public void setResource(URL resource);
40: }
|