Package org.osgi.service.dmt.spi
Interface MountPoint
public interface MountPoint
This interface can be implemented to represent a single mount point.
It provides function to get the absolute mounted uri and a shortcut method to post events via the DmtAdmin.
- Since:
- 2.0
-
Method Summary
Modifier and TypeMethodDescriptionboolean
This object must provide a suitable hash function such that a Mount Point given inMountPlugin.mountPointAdded(MountPoint)
is equal to the corresponding Mount Point inMountPlugin.mountPointRemoved(MountPoint)
.String[]
Provides the absolute mount path of thisMountPoint
int
hashCode()
This object must provide a suitable hash function such that a Mount Point given inMountPlugin.mountPointAdded(MountPoint)
has the same hashCode as the corresponding Mount Point inMountPlugin.mountPointRemoved(MountPoint)
.void
postEvent
(String topic, String[] relativeURIs, String[] newRelativeURIs, Dictionary<String, ?> properties) Posts an event via the DmtAdmin about changes in the current plugins subtree.void
postEvent
(String topic, String[] relativeURIs, Dictionary<String, ?> properties) Posts an event via the DmtAdmin about changes in the current plugins subtree.
-
Method Details
-
getMountPath
String[] getMountPath()Provides the absolute mount path of thisMountPoint
- Returns:
- the absolute mount path of this
MountPoint
-
postEvent
Posts an event via the DmtAdmin about changes in the current plugins subtree.This method distributes Events asynchronously to the EventAdmin as well as to matching local DmtEventListeners.
- Parameters:
topic
- the topic of the event to send. Valid values are:org/osgi/service/dmt/DmtEvent/ADDED
if the change was caused by an add action-
org/osgi/service/dmt/DmtEvent/DELETED
if the change was caused by a delete action -
org/osgi/service/dmt/DmtEvent/REPLACED
if the change was caused by a replace action
null
.relativeURIs
- an array of affected nodeURI
's. AllURI
's specified here are relative to the currentMountPoint
's mountPath. The value of this parameter determines the value of the event propertyEVENT_PROPERTY_NODES
. An empty array ornull
is permitted. In both cases the value of the eventsEVENT_PROPERTY_NODES
property will be set to an empty array.properties
- an optional parameter that can be provided to add properties to the Event that is going to be send by the DMTAdmin. If the properties contain a keyEVENT_PROPERTY_NODES
, then the value of this property is ignored and will be overwritten byrelativeURIs
.- Throws:
IllegalArgumentException
- if the topic has not one of the defined values
-
postEvent
void postEvent(String topic, String[] relativeURIs, String[] newRelativeURIs, Dictionary<String, ?> properties) Posts an event via the DmtAdmin about changes in the current plugins subtree.This method distributes Events asynchronously to the EventAdmin as well as to matching local DmtEventListeners.
- Parameters:
topic
- the topic of the event to send. Valid values are:org/osgi/service/dmt/DmtEvent/RENAMED
if the change was caused by a rename action-
org/osgi/service/dmt/DmtEvent/COPIED
if the change was caused by a copy action
null
.relativeURIs
- an array of affected nodeURI
's.All
URI
's specified here are relative to the currentMountPoint
's mountPath. The value of this parameter determines the value of the event propertyEVENT_PROPERTY_NODES
. An empty array ornull
is permitted. In both cases the value of the eventsEVENT_PROPERTY_NODES
property will be set to an empty array.newRelativeURIs
- an array of affected nodeURI
's. The value of this parameter determines the value of the event propertyEVENT_PROPERTY_NEW_NODES
. An empty array ornull
is permitted. In both cases the value of the eventsEVENT_PROPERTY_NEW_NODES
property will be set to an empty array.properties
- an optional parameter that can be provided to add properties to the Event that is going to be send by the DMTAdmin. If the properties contain the keysEVENT_PROPERTY_NODES
orEVENT_PROPERTY_NEW_NODES
, then the values of these properties are ignored and will be overwritten byrelativeURIs
andnewRelativeURIs
.- Throws:
IllegalArgumentException
- if the topic has not one of the defined values
-
hashCode
int hashCode()This object must provide a suitable hash function such that a Mount Point given inMountPlugin.mountPointAdded(MountPoint)
has the same hashCode as the corresponding Mount Point inMountPlugin.mountPointRemoved(MountPoint)
.Object.hashCode()
-
equals
This object must provide a suitable hash function such that a Mount Point given inMountPlugin.mountPointAdded(MountPoint)
is equal to the corresponding Mount Point inMountPlugin.mountPointRemoved(MountPoint)
.Object.equals(Object)
-