|
JXTA | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.jxta.id.ID
net.jxta.platform.ModuleSpecID
public abstract class ModuleSpecID
A ModuleSpecID uniquely identifies a particular network behaviour (wire protocol and choregraphy) that may be embodied by a Jxta Module. There may be any number of implementations of a given SpecID. All such implementations are assumed to be network compatible.
The Specification that corresponds to a given ModuleSpecID may be published in a ModuleSpecAdvertisement. This advertisement is uniquely identified by the ModuleSpecID that it describes.
The various implementations of a given SpecID may be published in ModuleImplAdvertisements. These advertisements are identified by the ModuleSpecID that they implement and a compatibility statement. ModuleImplAdvertisements baring the same SpecID and compatibility statement are theorethicaly interchangeable. However they may be subsequently discriminated by a Description element.
A ModuleSpecID embeds a ModuleClassID which uniquely identifies a base Module class. A base module class defines a local behaviour and one API per compatible JXTA implementation.
A ModuleSpecID therefore uniquely identifies an abstract module, of which an implementation compatible with the local JXTA implementation may be located and instantiated.
In the standard PeerGroup implementation of the java reference implementation the various services are specified as a list of ModuleSpecID, for each of which the group locates and loads an implementation as part of the group's initialization.
PeerGroup
,
Module
,
ModuleClassID
,
ModuleSpecAdvertisement
,
ModuleImplAdvertisement
,
ID
,
Advertisement
,
Serialized FormField Summary |
---|
Fields inherited from class net.jxta.id.ID |
---|
nullID, URIEncodingName, URNNamespace |
Constructor Summary | |
---|---|
ModuleSpecID()
|
Method Summary | |
---|---|
static ModuleSpecID |
create(URI fromURI)
Creates an ID by parsing the given URI. |
abstract ModuleClassID |
getBaseClass()
Return a ModuleClassID of the same base class but with the role portion set to zero. aka "the base class". |
ModuleSpecID |
intern()
Returns a canonical representation for the ID object. |
abstract boolean |
isOfSameBaseClass(ModuleClassID id)
Returns true if this ModuleSpecID is of the same base class than the given class. |
abstract boolean |
isOfSameBaseClass(ModuleSpecID id)
Returns true if this ModuleSpecID is of the same base class than the the given ModuleSpecID. |
Methods inherited from class net.jxta.id.ID |
---|
getIDFormat, getUniqueValue, getURL, toString, toURI |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public ModuleSpecID()
Method Detail |
---|
public static ModuleSpecID create(URI fromURI)
This convenience factory method works as if by invoking the
IDFactory.fromURI(URI)
method; any
URISyntaxException
thrown is caught and wrapped in a
new IllegalArgumentException
object, which is then thrown.
This method is provided for use in situations where it is known that
the given string is a legal ID, for example for ID constants declared
within in a program, and so it would be considered a programming error
for the URI not to parse as such. The IDFactory
,
which throws URISyntaxException
directly, should be used
situations where a ID is being constructed from user input or from some
other source that may be prone to errors.
fromURI
- The URI to be parsed into an ID
NullPointerException
- If fromURI
is null
.
IllegalArgumentException
- If the given URI is not a valid ID.public ModuleSpecID intern()
intern
in class ID
public abstract boolean isOfSameBaseClass(ModuleClassID id)
id
- Module class id to compare with
public abstract boolean isOfSameBaseClass(ModuleSpecID id)
id
- Module spec id to compare with
public abstract ModuleClassID getBaseClass()
|
JXSE | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |