unsigned PortNumber

PortNumber class update
- internal representation now uses int
- toString() now converts the value as unsigned integer
- renamed value() to shortValue()
- added value() method returning port number as unsigned long
- added constructor from String
- JSON serialization now uses the new value(), so that special handling for
  unsigned integer is not required

Update classes using PortNumber
- Replaced value() calls with new value(), when the return value was
  converted to long immediately.
- toString() result may change if the object contained PortNumber.
  - e.g., FlowEntryAction, FlowEntry, SwitchPort, ...

Change-Id: I0b1f8aa92208e165b6113c8dd6954076c0513167
diff --git a/src/main/java/net/onrc/onos/apps/proxyarp/ProxyArpManager.java b/src/main/java/net/onrc/onos/apps/proxyarp/ProxyArpManager.java
index 53a2b5d..d276691 100644
--- a/src/main/java/net/onrc/onos/apps/proxyarp/ProxyArpManager.java
+++ b/src/main/java/net/onrc/onos/apps/proxyarp/ProxyArpManager.java
@@ -374,7 +374,7 @@
             ARP arp = (ARP) eth.getPayload();
             learnArp(arp);
             if (arp.getOpCode() == ARP.OP_REQUEST) {
-                handleArpRequest(sw.getDpid().value(), inPort.getNumber().value(),
+                handleArpRequest(sw.getDpid().value(), inPort.getNumber().shortValue(),
                         arp, eth);
             } else if (arp.getOpCode() == ARP.OP_REPLY) {
                 // For replies we simply send a notification via Hazelcast