public final class Node extends ServiceInstance implements INode, NodeListener
agentService
Modifier | Constructor and Description |
---|---|
protected |
Node(java.lang.String nodeName,
java.lang.String nodeID,
IotIgniteManager instance,
java.lang.String uniqueID,
NodeListener nodeListener) |
Modifier and Type | Method and Description |
---|---|
Thing |
createThing(android.hardware.Sensor androidSensor,
ThingListener listener)
Create
Thing object which is an Android Sensor . |
Thing |
createThing(java.lang.String thingID,
ThingType thingType,
ThingCategory thingCategory,
boolean isActuator,
ThingListener listener,
java.lang.String uniqueID)
|
boolean |
equals(java.lang.Object obj) |
android.content.Context |
getContext()
Get
Context of Node . |
java.util.List<Thing> |
getEveryThing()
Get list of registered
Thing s in IotIgnite. |
static java.lang.String |
getNodeAsJSONString(Node mNode) |
java.lang.String |
getNodeID()
Get id of
Node . |
NodeListener |
getNodeListener()
Return node's listener object.
|
java.lang.String |
getNodeName()
Get human readable
Node name. |
static Node |
getNodeObjectFromJsonString(java.lang.String nodeObjectString) |
java.lang.String |
getPackageName()
Package name of
Node object. |
Thing |
getThingByID(java.lang.String thingID)
|
java.util.List<Thing> |
getThingByName(java.lang.String name)
Get list of registered
Thing s with same name in IotIgnite. |
java.lang.String |
getUniqueID()
Get unique id of
Node . |
int |
hashCode() |
boolean |
isConnected()
Get connection status of
Node . |
boolean |
isRegistered()
Check a
Thing object registered on IotIgnite or not. |
void |
onNodeUnregistered(java.lang.String nodeID)
If
Node is unregistered, callback method notifies the application. |
boolean |
register()
Register
Node to IotIgnite. |
protected void |
setConnected(boolean state) |
void |
setConnected(boolean connected,
java.lang.String description)
Set connection status of
Node . |
void |
setContext(android.content.Context context)
Set
Context of Node . |
void |
setNodeID(java.lang.String nodeID)
Set an id to
Node . |
void |
setNodeListener(NodeListener listener)
Sets
NodeListener for callbacks. |
void |
setNodeName(java.lang.String nodeName)
Set human readable name to
Node . |
void |
setUniqueID(java.lang.String uniqueID)
Set an uniqueID to
Node . |
boolean |
unregister()
Unregister
Node from IotIgnite. |
protected Node(@NonNull java.lang.String nodeName, @NonNull java.lang.String nodeID, IotIgniteManager instance, java.lang.String uniqueID, NodeListener nodeListener)
protected void setConnected(boolean state)
public java.lang.String getNodeName()
INode
Node
name.getNodeName
in interface INode
Node
.public void setNodeName(java.lang.String nodeName)
INode
Node
.setNodeName
in interface INode
nodeName
- : Name of Node
.public java.lang.String getNodeID()
INode
Node
.public void setNodeID(java.lang.String nodeID)
INode
Node
. ID must be UNIQUE.public boolean isConnected()
INode
Node
.isConnected
in interface INode
Node
.public void setConnected(boolean connected, java.lang.String description)
INode
Node
.setConnected
in interface INode
connected
- : Status of connection.description
- : Description about connection state.public java.lang.String getPackageName()
INode
Node
object.getPackageName
in interface INode
String
public java.lang.String getUniqueID()
INode
Node
.getUniqueID
in interface INode
Node
.public void setUniqueID(java.lang.String uniqueID)
INode
Node
. ID must be UNIQUE.setUniqueID
in interface INode
uniqueID
- unique of the Nodepublic android.content.Context getContext()
INode
Context
of Node
.getContext
in interface INode
public void setContext(android.content.Context context)
INode
Context
of Node
.setContext
in interface INode
context
- Context of the Applicationpublic boolean register()
INode
public boolean unregister()
INode
Node
from IotIgnite. Application can only unregister its own Node
s.
Node
s registered by different application are not accessable.unregister
in interface INode
true
or false
success state.IotIgniteManager
,
Thing
public Thing createThing(java.lang.String thingID, ThingType thingType, ThingCategory thingCategory, boolean isActuator, ThingListener listener, java.lang.String uniqueID)
INode
Thing
object and assigns to Node
. To create Thing
object the application must be
authorized in IotIgnite platform. After that it can create Node
and Node
assigned Thing
objects. thingID must follow the rules which are defined with the Regex below:
^[a-zA-Z0-9]+([ ]?[a-zA-Z0-9-.:@]+)*$createThing
in interface INode
thingID
- Set Thing
's ID. Every node must has unique thingId.thingType
- thingType type of the ThingthingCategory
- Could be ThingCategory.BUILTIN
or ThingCategory.EXTERNAL
isActuator
- Actuator state of Thing
objectlistener
- ThingListener
object.uniqueID
- uniqueID of Thing
Thing
: The created Thing
object.ThingManager
,
Thing
,
ThingType
,
ThingListener
,
ThingCategory
public Thing createThing(android.hardware.Sensor androidSensor, ThingListener listener)
INode
Thing
object which is an Android Sensor
. It wraps Android Sensor
to Thing
object.
Creating Thing
objects from builtin Android Sensor
has fewer parameters than generic Thing
object. It only needs Android Sensor
and ThingListener
. Other parameters such as thingID,
thingType, vendor has already provided in Sensor
.
Sensor
s can not act as an actuator so by default this parameter is false
. Application cannot change it.
createThing
in interface INode
androidSensor
- Sensor of the Androidlistener
- ThingListener
object.Thing
: Thing object.ThingManager
,
Thing
,
Sensor
,
ThingListener
public java.util.List<Thing> getEveryThing()
INode
Thing
s in IotIgnite. If no such a Thing
is registered, Node
returns
empty list.getEveryThing
in interface INode
List<Thing>
: List of Thing
's registered on IotIgnite.public Thing getThingByID(java.lang.String thingID)
INode
Thing
object by thingID in registered Node
. If no such Thing
is registered thingID returns
null object.getThingByID
in interface INode
thingID
- : Unique thingID of object.Thing
: Returns null
if no such a thing in that id.public java.util.List<Thing> getThingByName(java.lang.String name)
INode
Thing
s with same name in IotIgnite. If no such Thing
is
registered, Node
returns empty list.getThingByName
in interface INode
name
- Name of the ThingList<Thing>
: List of Thing
s with same thingNames registered on
IotIgnite.public boolean isRegistered()
INode
Thing
object registered on IotIgnite or not.isRegistered
in interface INode
true
or false
: Thing
registration state on IotIgnite.public void setNodeListener(NodeListener listener)
INode
NodeListener
for callbacks.setNodeListener
in interface INode
listener
- : NodeListener
object.NodeListener
public NodeListener getNodeListener()
INode
getNodeListener
in interface INode
NodeListener
public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public static java.lang.String getNodeAsJSONString(Node mNode)
mNode
- public static Node getNodeObjectFromJsonString(java.lang.String nodeObjectString)
nodeObjectString
- public void onNodeUnregistered(java.lang.String nodeID)
NodeListener
Node
is unregistered, callback method notifies the application.onNodeUnregistered
in interface NodeListener
nodeID
- : id of Node
's assigned node.Node}