public class UDControlPoint extends java.lang.Object implements SSDPListener, UDIDeviceStateListenerStd
UDControlPoint
is the representation of UPnP ControlPoint.
All UPnP traffic/events are intercepted and notified to the appropriate
listeners.
Node: UDControlPoint
is an intergral
part of UDI Network and Services Layer and, as such, a lot of care should
be taken in using the methods/attributes therein independently.
Modifier and Type | Field and Description |
---|---|
static char |
ALL_DEVICES_ON_LINE_AND_AUTHENTICATED |
static java.util.ArrayList<com.universaldevices.device.model.elec.IElectricityListener> |
autoDRListeners
An
ArrayList of Auto DR listeners of type IElectricityListener |
static java.util.ArrayList<com.universaldevices.device.model.elec.IBillingListener> |
billingListeners
an
ArrayList of Billing listeners of type IBillingListener |
static java.util.ArrayList<com.universaldevices.device.model.climate.IClimateListener> |
climateListeners
An
ArrayList of Climate listeners of type IClimateListener |
static java.util.Hashtable<java.lang.String,UDProxyDevice> |
devices
A
Hashtable of UDProxyDevice s representing
ISYs indexed using their uuid |
static java.lang.String |
deviceType
The filter used to limit the types of devices which are
handled in
UDControlPoint |
static java.util.ArrayList<com.universaldevices.device.model.elec.IEMonitorListener> |
electricityListeners
an
ArrayList of Electricity listeners of type IEMonitorListener |
static java.util.ArrayList<com.universaldevices.device.model.elec.IEMeterListener> |
eMeterListeners
An
ArrayList of AMI/EMeter listeners of type IEMeterListener |
static UDProxyDevice |
firstDevice
First ever ISY discovered by
UDControlPoint |
static java.util.Hashtable<java.lang.String,UDFolder> |
folders
A
Hashtable of all the folders (UDGroup )
in all the discovered ISYs |
static java.util.ArrayList<com.universaldevices.device.model.gas.IGasMeterListener> |
gasMeterListeners
an
ArrayList of Gas listeners of type IGasMeterListener |
static java.util.Hashtable<java.lang.String,UDGroup> |
groups
A
Hashtable of all the groups/scenes (UDGroup )
in all the discovered ISYs |
static java.util.ArrayList<IModelChangeListener> |
modelListeners
An
ArrayList of model listeners of type IModelChangeListener |
static java.util.Hashtable<java.lang.String,UDProxyDevice> |
other_devices
A
Hashtable of UDProxyDevice s representing
non-ISYs indexed using their uuid |
static java.util.ArrayList<ISecuritySystemChangeListener> |
securitySystemListeners
An
ArrayList of security system listeners of type ISecuritySystemChangeListener |
static char |
SOME_DEVICES_OFF_LINE |
static char |
SOME_DEVICES_UNAUTHENTICATED |
static java.util.ArrayList<ISystemAlertsListener> |
systemAlertsListeners
An
ArrayList of System Alert listeners of type ISystemAlertsListener |
static java.util.ArrayList<com.universaldevices.device.model.zigbee.IZigbeeEventListener> |
zigbeeListeners
an
ArrayList of Electricity listeners of type IZigbeeEventListener |
Modifier and Type | Method and Description |
---|---|
void |
addBillingListener(com.universaldevices.device.model.elec.IBillingListener listener)
Adds a
IBillingListener to the list of listeners |
void |
addClimateListener(com.universaldevices.device.model.climate.IClimateListener listener)
Adds a
IClimateListener to the list of listeners |
void |
addDevice(UDProxyDevice edev)
Adds an embedded device
|
void |
addDevices(java.lang.String lanDevices,
java.net.URL base)
Manually add devices to the list of devices supported by
UDControlPoint |
void |
addElectricityListener(com.universaldevices.device.model.elec.IElectricityListener listener)
Adds a
IElectricityListener to the list of listeners |
void |
addEMeterListener(com.universaldevices.device.model.elec.IEMeterListener listener)
Adds a
IEMeterListener to the list of listeners |
void |
addEMonitorListener(com.universaldevices.device.model.elec.IEMonitorListener listener)
Adds a
IEMonitorListener to the list of listeners |
void |
addEventListener(java.lang.String webServiceName,
UDIEventListener listener)
Registers a listener for events from a specific Web Service.
|
static void |
addFolder(java.lang.String name)
This method adds a folder (
UDFolder ) |
protected static void |
addFolder(UDFolder folder,
java.lang.Object dev)
Adds a folder when in initialization mode
|
void |
addGasMeterListener(com.universaldevices.device.model.gas.IGasMeterListener listener)
Adds a
IGasMeterListener to the list of listeners |
static void |
addGroup(java.lang.String name,
char type)
This method adds a group/scene (
UDGroup ) |
static void |
addGroup(java.lang.String name,
java.lang.String id,
char type)
This method adds a group/scene (
UDGroup ) |
protected static void |
addGroup(UDGroup group,
java.lang.Object dev)
Adds a group when in initialization mode
|
void |
addRawEventListener(UDRawEventListener listener)
Registers a listener for all events, normally used only for logging and/or debug purposes.
|
void |
addSecuritySystemChangeListener(ISecuritySystemChangeListener listener)
Adds a
ISecuritySystemChangeListener to the list of listeners |
void |
addSystemAlertsListener(ISystemAlertsListener listener)
Adds a
IElectricityListener to the list of listeners |
void |
addUDModelChangeListener(IModelChangeListener listener)
Adds a
IModelChangeListener to the list of listeners |
void |
addZigbeeListener(com.universaldevices.device.model.zigbee.IZigbeeEventListener listener)
Adds a
IZigbeeEventListener to the list of listeners |
void |
deviceRemoved(java.lang.String uuid)
A device was removed (got a bye byte)
|
void |
deviceStateChanged(UDProxyDevice device,
java.lang.String control,
java.lang.String action,
java.lang.String node,
XMLElement ei,
boolean is_group)
There was a change in a node attached/linked to ISY
|
void |
deviceStateChanged(UDProxyDevice device,
UDIEventProcessor.Info info,
java.lang.String control,
java.lang.String action,
java.lang.String node,
XMLElement ei,
boolean is_group)
ISY's state changed
|
static char |
getAllDevicesStatus()
Returns the general status of all the devices
|
com.universaldevices.common.properties.UDPropertyFactory |
getDefaultPropertyFactory() |
static int |
getFreePort()
Gets a free port from the pool of available ports
Note: do not use this method independently
|
static UDGroup |
getGroupWhereNodeIsMaster(java.lang.String nodeId,
UDProxyDevice device)
Returns the group where the specified node plays the role of a controller/master
|
static UDControlPoint |
getInstance()
This method has to be called after
Start() has been called |
UDNodeDevicePropertiesProcessor |
getNodeDevicePropertiesProcessor() |
static java.util.ArrayList<UDGroup> |
getNodeGroups(java.lang.String nodeId,
UDProxyDevice device)
Returns all the groups a node belongs to
|
static java.lang.String |
getRootDeviceGroupAddress(UDProxyDevice device)
Returns the address for the root group
|
static boolean |
isSupportMultipleDevices()
Returns whether or not
UDControlPoint should keep track of multiple devices with the same type. |
static void |
MinimalStart()
Creates a UDControlPoint instance but does not
start any of the services |
void |
newDeviceAnnounced(java.lang.String uuid,
java.lang.String type,
java.lang.String descURL,
int max_age)
A devices was added to the network
|
void |
newServiceAnnounced(java.lang.String uuid,
java.lang.String type,
java.lang.String descURL)
A service was removed from the network
|
void |
offLine(UDProxyDevice device)
Device is offLine or not responding
|
void |
onLine(UDProxyDevice device)
Device is onLine
|
void |
registerDefaultPropertyFactory(com.universaldevices.common.properties.UDPropertyFactory propertyFactory)
Registers the default property factory to use when parsing properties.
|
void |
registerEventProcessor(java.lang.String webServiceName,
UDIEventProcessor processor)
Registers an Event processor for a given Web Service whose responsibility is to call back
all listeners registered to the processor.
|
void |
removeBillingListener(com.universaldevices.device.model.elec.IBillingListener listener)
Removes the
IBillingListener from the list of listeners |
void |
removeClimateListeners(com.universaldevices.device.model.climate.IClimateListener listener)
Removes the
IClimateListener from the list of listeners |
void |
removeElectricityListener(com.universaldevices.device.model.elec.IElectricityListener listener)
Removes the
IElectricityListener from the list of listeners |
void |
removeEMeterListener(com.universaldevices.device.model.elec.IEMeterListener listener)
Removes a
IEMeterListener to the list of listeners |
void |
removeEMonitorListener(com.universaldevices.device.model.elec.IEMonitorListener listener)
Removes the
IEMonitorListener from the list of listeners |
void |
removeEventListener(java.lang.String webServiceName,
UDIEventListener listener)
Removes a listener for events from a specific Web Service.
|
void |
removeEventProcessor(java.lang.String webServiceName)
Removes the Event processor for a given Web Service.
|
static void |
removeFolder(java.lang.String id)
Removes a folder
|
void |
removeGasMeterListener(com.universaldevices.device.model.gas.IGasMeterListener listener)
Removes the
IGasMeterListener from the list of listeners |
static void |
removeGroup(java.lang.String id)
Removes a group/scene
|
void |
removeRawEventListener(UDRawEventListener listener)
Removes a listener for all events, normally used only for logging and/or debug purposes.
|
void |
removeSecuritySystemChangeListener(ISecuritySystemChangeListener listener)
Removes the
ISecuritySystemChangeListener from the list of listeners |
void |
removeSystemAlertsListener(ISystemAlertsListener listener)
Removes the
ISystemAlertsListener from the list of listeners |
void |
removeUDModelChangeListener(IModelChangeListener listener)
Removes the
IModelChangeListener from the list of listeners |
void |
removeZigbeeListener(com.universaldevices.device.model.zigbee.IZigbeeEventListener listener)
Removes the
IZigbeeEventListener from the list of listeners |
static void |
renameGroup(java.lang.String id,
java.lang.String name)
Renames a group/scene
|
void |
search(java.lang.String uuid,
boolean asynch)
Starts a UPnP search for the given uuid, if one is found, then
SSDPListener.searchResult(boolean, String, String) method is called |
void |
searchForRootDevices()
Starts a search for UPnP Root Devices
|
void |
searchResult(boolean isUD,
java.lang.String uuid,
java.lang.String descURL)
Results of a search request
|
void |
serviceRemoved(java.lang.String uuid,
java.lang.String type)
A service was removed
|
static void |
setDeviceTypeFilter(java.lang.String deviceType)
Sets the device type filter
|
static void |
setFreePort(int port)
Makes a port available to be reused again
|
void |
setSearching(boolean is_searching)
Sets whether or not we are searching the network
|
static void |
setSupportMultipleDevices(boolean supportMultipleDevices)
Sets whether or not
UDControlPoint should keep track of multiple devices with the same type. |
static void |
Start()
Starts ControlPoint services
|
static void |
StartServices()
|
static void |
Stop()
Stops all the activities of the
UDControlPoint |
static void |
stopActiveThreads() |
static void |
stopOnlineDevices() |
void |
systemStatus(UDProxyDevice device,
java.lang.String event)
Notifies all the
IModelChangeListener s of system status
changes (busy, ready, progress update) |
public static java.util.Hashtable<java.lang.String,UDProxyDevice> devices
Hashtable
of UDProxyDevice
s representing
ISYs indexed using their uuidpublic static java.util.Hashtable<java.lang.String,UDProxyDevice> other_devices
Hashtable
of UDProxyDevice
s representing
non-ISYs indexed using their uuidpublic static java.util.ArrayList<IModelChangeListener> modelListeners
ArrayList
of model listeners of type IModelChangeListener
public static java.util.ArrayList<ISecuritySystemChangeListener> securitySystemListeners
ArrayList
of security system listeners of type ISecuritySystemChangeListener
public static java.util.ArrayList<com.universaldevices.device.model.elec.IElectricityListener> autoDRListeners
ArrayList
of Auto DR listeners of type IElectricityListener
public static java.util.ArrayList<com.universaldevices.device.model.elec.IEMeterListener> eMeterListeners
ArrayList
of AMI/EMeter listeners of type IEMeterListener
public static java.util.ArrayList<ISystemAlertsListener> systemAlertsListeners
ArrayList
of System Alert listeners of type ISystemAlertsListener
public static java.util.ArrayList<com.universaldevices.device.model.climate.IClimateListener> climateListeners
ArrayList
of Climate listeners of type IClimateListener
public static java.util.ArrayList<com.universaldevices.device.model.elec.IEMonitorListener> electricityListeners
ArrayList
of Electricity listeners of type IEMonitorListener
public static java.util.ArrayList<com.universaldevices.device.model.elec.IBillingListener> billingListeners
ArrayList
of Billing listeners of type IBillingListener
public static java.util.ArrayList<com.universaldevices.device.model.gas.IGasMeterListener> gasMeterListeners
ArrayList
of Gas listeners of type IGasMeterListener
public static java.util.ArrayList<com.universaldevices.device.model.zigbee.IZigbeeEventListener> zigbeeListeners
ArrayList
of Electricity listeners of type IZigbeeEventListener
public static UDProxyDevice firstDevice
UDControlPoint
public static java.lang.String deviceType
UDControlPoint
public static java.util.Hashtable<java.lang.String,UDGroup> groups
Hashtable
of all the groups/scenes (UDGroup
)
in all the discovered ISYspublic static java.util.Hashtable<java.lang.String,UDFolder> folders
Hashtable
of all the folders (UDGroup
)
in all the discovered ISYspublic static char ALL_DEVICES_ON_LINE_AND_AUTHENTICATED
public static char SOME_DEVICES_OFF_LINE
public static char SOME_DEVICES_UNAUTHENTICATED
public void registerEventProcessor(java.lang.String webServiceName, UDIEventProcessor processor)
addEventListener(java.lang.String, com.universaldevices.upnp.UDIEventListener)
to add a listener for your application.webServiceName
- The web service of this processorprocessor
- The event processorpublic void removeEventProcessor(java.lang.String webServiceName)
removeEventListener(java.lang.String, com.universaldevices.upnp.UDIEventListener)
to remove a listener for your application.webServiceName
- The web service of the processor to removepublic void addEventListener(java.lang.String webServiceName, UDIEventListener listener)
webServiceName
- listener
- public void removeEventListener(java.lang.String webServiceName, UDIEventListener listener)
webServiceName
- listener
- public void addRawEventListener(UDRawEventListener listener)
webServiceName
- listener
- public void removeRawEventListener(UDRawEventListener listener)
webServiceName
- listener
- public com.universaldevices.common.properties.UDPropertyFactory getDefaultPropertyFactory()
public UDNodeDevicePropertiesProcessor getNodeDevicePropertiesProcessor()
public void registerDefaultPropertyFactory(com.universaldevices.common.properties.UDPropertyFactory propertyFactory)
propertyFactory
- - The default UDPropertyFactory
.public void addUDModelChangeListener(IModelChangeListener listener)
IModelChangeListener
to the list of listenerslistener
- - a IModelChangeListener
to be addedIModelChangeListener
public void removeUDModelChangeListener(IModelChangeListener listener)
IModelChangeListener
from the list of listenerslistener
- - the IModelChangeListener
to be removedIModelChangeListener
public void addSecuritySystemChangeListener(ISecuritySystemChangeListener listener)
ISecuritySystemChangeListener
to the list of listenerslistener
- - a ISecuritySystemChangeListener
to be addedISecuritySystemChangeListener
public void removeSecuritySystemChangeListener(ISecuritySystemChangeListener listener)
ISecuritySystemChangeListener
from the list of listenerslistener
- - the ISecuritySystemChangeListener
to be removedISecuritySystemChangeListener
public void addElectricityListener(com.universaldevices.device.model.elec.IElectricityListener listener)
IElectricityListener
to the list of listenerslistener
- - a IElectricityListener
to be addedIElectricityListener
public void removeElectricityListener(com.universaldevices.device.model.elec.IElectricityListener listener)
IElectricityListener
from the list of listenerslistener
- - the IElectricityListener
to be removedIElectricityListener
public void addEMeterListener(com.universaldevices.device.model.elec.IEMeterListener listener)
IEMeterListener
to the list of listenerslistener
- - a IEMeterListener
to be addedIEMeterListener
public void removeEMeterListener(com.universaldevices.device.model.elec.IEMeterListener listener)
IEMeterListener
to the list of listenerslistener
- - a IEMeterListener
to be addedIEMeterListener
public void addSystemAlertsListener(ISystemAlertsListener listener)
IElectricityListener
to the list of listenerslistener
- - a IElectricityListener
to be addedISecuritySystemChangeListener
public void removeSystemAlertsListener(ISystemAlertsListener listener)
ISystemAlertsListener
from the list of listenerslistener
- - the ISystemAlertsListener
to be removedISecuritySystemChangeListener
public void addClimateListener(com.universaldevices.device.model.climate.IClimateListener listener)
IClimateListener
to the list of listenerslistener
- - a IClimateListener
to be addedIClimateListener
public void removeClimateListeners(com.universaldevices.device.model.climate.IClimateListener listener)
IClimateListener
from the list of listenerslistener
- - the IClimateListener
to be removedIClimateListener
public void addEMonitorListener(com.universaldevices.device.model.elec.IEMonitorListener listener)
IEMonitorListener
to the list of listenerslistener
- - a IEMonitorListener
to be addedIEMonitorListener
public void removeEMonitorListener(com.universaldevices.device.model.elec.IEMonitorListener listener)
IEMonitorListener
from the list of listenerslistener
- - the IEMonitorListener
to be removedIEMonitorListener
public void addGasMeterListener(com.universaldevices.device.model.gas.IGasMeterListener listener)
IGasMeterListener
to the list of listenerslistener
- - a IGasMeterListener
to be addedIGasMeterListener
public void removeGasMeterListener(com.universaldevices.device.model.gas.IGasMeterListener listener)
IGasMeterListener
from the list of listenerslistener
- - the IGasMeterListener
to be removedIGasMeterListener
public void addZigbeeListener(com.universaldevices.device.model.zigbee.IZigbeeEventListener listener)
IZigbeeEventListener
to the list of listenerslistener
- - a IZigbeeEventListener
to be addedIZigbeeEventListener
public void removeZigbeeListener(com.universaldevices.device.model.zigbee.IZigbeeEventListener listener)
IZigbeeEventListener
from the list of listenerslistener
- - the IZigbeeEventListener
to be removedIZigbeeEventListener
public void addBillingListener(com.universaldevices.device.model.elec.IBillingListener listener)
IBillingListener
to the list of listenerslistener
- - a IBillingListener
to be addedIBillingListener
public void removeBillingListener(com.universaldevices.device.model.elec.IBillingListener listener)
IBillingListener
from the list of listenerslistener
- - the IBillingListener
to be removedIBillingListener
public void addDevices(java.lang.String lanDevices, java.net.URL base)
UDControlPoint
This method is especially important when firewall issues stop UPnP traffic through and if you wish to add a device bound to a static IP address
lanDevices
- - a comma separated list of uuid&descriptionURL
for each devicebase
- - the URL base of where the client is pointing to
(such as http://192.168.0.126:2626/0/p).
If this is a local (not browser based) client, the base may be
null.public void setSearching(boolean is_searching)
Searching for other UPnP devices?
setSearching
in interface SSDPListener
is_searching
- - true if we are already searching, false otherwisepublic void searchForRootDevices()
public void deviceRemoved(java.lang.String uuid)
This method is called by SSDPClient
when a device
is removed from the network.
deviceRemoved
in interface SSDPListener
uuid
- - the uuid of the device removedpublic void newDeviceAnnounced(java.lang.String uuid, java.lang.String type, java.lang.String descURL, int max_age)
This method is called by SSDPClient
when a device
is added to the network.
Note: do not use this method independently
newDeviceAnnounced
in interface SSDPListener
uuid
- - the uuid of the device addedtype
- - the type of the device addeddescURL
- - the URL where the description of the service may be
retrieved frommax_age
- - the maximum amount of time this advertisement is valid
and after which time we can consider the device dead (if not followed
by another advertisement)public void newServiceAnnounced(java.lang.String uuid, java.lang.String type, java.lang.String descURL)
This method is called by SSDPClient
when a service
is added to the network.
Note: this method is not implemented; subclasses
may choose to implement this method
newServiceAnnounced
in interface SSDPListener
uuid
- - the uuid of the service addedtype
- - the type of the service addeddescURL
- - the URL where the description of the service may be
retrieved frompublic void serviceRemoved(java.lang.String uuid, java.lang.String type)
This method is called by SSDPClient
when a service
is removed from the network.
Note: this method is not implemented; subclasses
may choose to implement this method
serviceRemoved
in interface SSDPListener
uuid
- - the uuid of the device/service removedtype
- - the type of the service removedpublic void search(java.lang.String uuid, boolean asynch)
SSDPListener.searchResult(boolean, String, String)
method is calleduuid
- - the uuid of the device/service we're searching forasynch
- - whether or not the search is synchronous (wait for the result)UDProxyDevice
public void searchResult(boolean isUD, java.lang.String uuid, java.lang.String descURL)
This method is called by SSDPClient
when a search request
was successful
Note: do not use this method independently
searchResult
in interface SSDPListener
isUD
- - whether or not the discovered device is an ISYuuid
- - the uuid of the devicedescURL
- - the URL where the description of the device may be
foundpublic void deviceStateChanged(UDProxyDevice device, java.lang.String control, java.lang.String action, java.lang.String node, XMLElement ei, boolean is_group)
UDDeviceStateListener
deviceStateChanged
in interface UDDeviceStateListener
device
- - the device UDProxyDevice
where the change
took placecontrol
- - the [name of] the control which was affectedaction
- - the [name of] the action (with in the context of a control) which was
performednode
- - the [address of] the node which was affectedei
- - general event information to be processed by clientsis_group
- - whether or not the affected node is a group/sceneUDControl
,
UDAction
,
UDNode
,
UDProxyDevice
public void deviceStateChanged(UDProxyDevice device, UDIEventProcessor.Info info, java.lang.String control, java.lang.String action, java.lang.String node, XMLElement ei, boolean is_group)
This method is called by UDProxyDevice
when any change is detected
in ISY and, subsequently, all IModelChangeListener
s are notified
deviceStateChanged
in interface UDIDeviceStateListenerStd
device
- - the device (UDProxyDevice
) where the change
took placecontrol
- - the [name of] the control which was affectedaction
- - the [name of] the action (with in the context of a control) which was
performednode
- - the [address of] the node which was affectedei
- - general event information to be processed by clientsis_group
- - whether or not the affected node is a group/sceneUDControl
,
UDAction
,
UDNode
,
UDProxyDevice
public void offLine(UDProxyDevice device)
Note: do not use this method independently
offLine
in interface UDDeviceStateListener
device
- - the UDProxyDevice
public void onLine(UDProxyDevice device)
Note: do not use this method independently
onLine
in interface UDDeviceStateListener
device
- - the UDProxyDevice
public void addDevice(UDProxyDevice edev)
Note: this method is not implemented nor are embedded UPnP devices supported
edev
- - the embedded UDProxyDevice
to be addedpublic static void setDeviceTypeFilter(java.lang.String deviceType)
Filter limits the types of devices
UDControlPoint
is goint to maintain in its list
of active devices
deviceType
- - the String representation of device typepublic static void setFreePort(int port)
Note: do not use this method independently
port
- - the port which is now availablepublic static UDControlPoint getInstance()
Start()
has been calledUDControlPoint
public static void stopActiveThreads()
public static void stopOnlineDevices()
public static void Stop()
UDControlPoint
-Stops the SSDPClient
if running
-Clears the lists of devices
-Clears the list of groups/scenes
public static void Start()
- Creates the UDControlPoint instance
- SSDPClient
public static void MinimalStart()
public static void StartServices()
Starts
- SSDPClient
public static int getFreePort()
Note: do not use this method independently
public static char getAllDevicesStatus()
All devices that are associated with this instance of UDControlPoint
ALL_DEVICES_ON_LINE_AND_AUTHENTICATED
SOME_DEVICES_OFF_LINE
SOME_DEVICES_UNAUTHENTICATED
public static void addGroup(java.lang.String name, java.lang.String id, char type)
UDGroup
)
The new created group/scene is added to all the devices (UDProxyDevice
) associated with this UDControlPoint
name
- - the name of the group to be createdid
- - the address of the grouptype
- - must always be Constants.NODE_IS_A_GROUPUDGroup
,
UDProxyDevice
public static void addGroup(java.lang.String name, char type)
UDGroup
)
The new created group/scene is added to all the devices (UDProxyDevice
) associated with this UDControlPoint
This method generates and guarantees unique ids for each group
name
- - the name of the group to be createdtype
- - must always be Constants.NODE_IS_A_GROUPUDGroup
,
UDProxyDevice
public static void addFolder(java.lang.String name)
UDFolder
)
The new created folder is added to all the devices (UDProxyDevice
) associated with this UDControlPoint
This method guarantees unique ids for each folder
name
- - the folder of the group to be createdUDFolder
,
UDProxyDevice
protected static void addGroup(UDGroup group, java.lang.Object dev)
This method is invoked by UDProxyDevice
upon
initialization. In effect, UDProxyDevice
reads the nodes
configuration DIML/XML and, for each group, calls this method.
group
- - the UDGroup
being addeddev
- - the UDProxyDevice
this event was originated fromprotected static void addFolder(UDFolder folder, java.lang.Object dev)
This method is invoked by UDProxyDevice
upon
initialization. In effect, UDProxyDevice
reads the nodes
configuration DIML/XML and, for each group, calls this method.
folder
- - the UDFolder
being addeddev
- - the UDProxyDevice
this event was originated frompublic static void removeGroup(java.lang.String id)
This method removes a group/scene (UDGroup
) from all the
devices (UDProxyDevice
) associated with UDControlPoint
id
- - the uuid/id of the group/scene to be removedpublic static void removeFolder(java.lang.String id)
This method removes a folder (UDFolder
) from all the
devices (UDProxyDevice
) associated with UDControlPoint
id
- - the uuid/id of the folder to be removedpublic static void renameGroup(java.lang.String id, java.lang.String name)
This method renames a group/scene (UDGroup
) in all the
devices (UDProxyDevice
) associated with UDControlPoint
This method guarantees unique ids for each group
id
- - the uuid/id of the group to be renamedname
- - the new name for the grouppublic static UDGroup getGroupWhereNodeIsMaster(java.lang.String nodeId, UDProxyDevice device)
nodeId
- - the id of the node to be checkeddevice
- - the UDProxyDevice
to which the node is linked/attached
toUDGroup
where the node is a controller/master;
otherwise, nullpublic static java.util.ArrayList<UDGroup> getNodeGroups(java.lang.String nodeId, UDProxyDevice device)
public static java.lang.String getRootDeviceGroupAddress(UDProxyDevice device)
Root group is the logical representation of ISY
device
- - the UDProxyDevice
for which we want
the group addresspublic void systemStatus(UDProxyDevice device, java.lang.String event)
IModelChangeListener
s of system status
changes (busy, ready, progress update)systemStatus
in interface UDDeviceStateListener
device
- - the ISY (UDProxyDevice
) originating this eventevent
- - the type of eventUDProxyDevice
public static boolean isSupportMultipleDevices()
UDControlPoint
should keep track of multiple devices with public static void setSupportMultipleDevices(boolean supportMultipleDevices)
UDControlPoint
should keep track of multiple devices with supportMultipleDevices
- the supportMultipleDevices to set