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 TypeMethodDescriptionbooleanThis 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 thisMountPointinthashCode()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).voidpostEvent(String topic, String[] relativeURIs, String[] newRelativeURIs, Dictionary<String, ?> properties) Posts an event via the DmtAdmin about changes in the current plugins subtree.voidpostEvent(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/ADDEDif the change was caused by an add action-
org/osgi/service/dmt/DmtEvent/DELETEDif the change was caused by a delete action -
org/osgi/service/dmt/DmtEvent/REPLACEDif 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 ornullis permitted. In both cases the value of the eventsEVENT_PROPERTY_NODESproperty 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/RENAMEDif the change was caused by a rename action-
org/osgi/service/dmt/DmtEvent/COPIEDif 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 ornullis permitted. In both cases the value of the eventsEVENT_PROPERTY_NODESproperty 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 ornullis permitted. In both cases the value of the eventsEVENT_PROPERTY_NEW_NODESproperty 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_NODESorEVENT_PROPERTY_NEW_NODES, then the values of these properties are ignored and will be overwritten byrelativeURIsandnewRelativeURIs.- 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)
-