[zb4osgi-changeset] [scm] ZigBee 4 OSGi repository change: r1087 - /projects/zb4osgi/trunk/zigbee.basedriver/src/main/java/it/cnr/isti/zigbee/basedriver/api/impl/ZigBeeNodeImpl.java

scm-notify at zb4osgi.aaloa.org scm-notify at zb4osgi.aaloa.org
Tue Nov 4 15:43:53 CET 2014


Author: stefano.lenzi
Date: Tue Nov  4 15:43:53 2014
New Revision: 1087

Log:
Avoding to store negative network address ( refs #264 )


Modified:
    projects/zb4osgi/trunk/zigbee.basedriver/src/main/java/it/cnr/isti/zigbee/basedriver/api/impl/ZigBeeNodeImpl.java

Modified: projects/zb4osgi/trunk/zigbee.basedriver/src/main/java/it/cnr/isti/zigbee/basedriver/api/impl/ZigBeeNodeImpl.java
==============================================================================
--- projects/zb4osgi/trunk/zigbee.basedriver/src/main/java/it/cnr/isti/zigbee/basedriver/api/impl/ZigBeeNodeImpl.java	(original)
+++ projects/zb4osgi/trunk/zigbee.basedriver/src/main/java/it/cnr/isti/zigbee/basedriver/api/impl/ZigBeeNodeImpl.java	Tue Nov  4 15:43:53 2014
@@ -29,6 +29,9 @@
 import java.util.Dictionary;
 import java.util.Properties;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import com.itaca.ztool.api.ZToolAddress64;
 
 /**
@@ -42,6 +45,8 @@
  */
 public class ZigBeeNodeImpl implements ZigBeeNode {
 
+	private final static Logger logger = LoggerFactory.getLogger(ZigBeeNodeImpl.class);
+	
     private int nwkAddress;
     final private String ieeeAddress;
     final private Properties description;
@@ -62,7 +67,7 @@
         description = new Properties();
         description.put(ZigBeeNode.IEEE_ADDRESS, ieee);
         description.put(ZigBeeNode.NWK_ADDRESS, nwk);
-        description.put(ZigBeeNode.PAN_ID, pan);
+        description.put(ZigBeeNode.PAN_ID, pan & 0xFFFF);
     }
 
     /**
@@ -82,7 +87,10 @@
         description.put(ZigBeeNode.IEEE_ADDRESS, ieee);
         description.put(ZigBeeNode.PAN_ID, Activator.getCurrentConfiguration()
                 .getPanId());
-        setNetworkAddress(nwk);
+        if ( nwk < 0 ) {
+        	logger.debug("Recieved a negative Network Address, but we are normalizing it as positive value");
+        }
+        setNetworkAddress(nwk & 0xFFFF);
     }
 
     public Dictionary getDescription() {




More information about the Commit mailing list