PortNumber fixes

- hide new PortNumber(short) and use PortNumber.uint16 instead
- added utility to get PortNumber

Change-Id: Ia39fbe6e7126a3d9465d3035a06850c1d54a7f25
diff --git a/src/main/java/net/onrc/onos/core/packetservice/PacketModule.java b/src/main/java/net/onrc/onos/core/packetservice/PacketModule.java
index 35aca3a..61fa735 100644
--- a/src/main/java/net/onrc/onos/core/packetservice/PacketModule.java
+++ b/src/main/java/net/onrc/onos/core/packetservice/PacketModule.java
@@ -157,6 +157,7 @@
 
         Ethernet eth = IFloodlightProviderService.bcStore.
                 get(cntx, IFloodlightProviderService.CONTEXT_PI_PAYLOAD);
+        // FIXME losing port number precision
         short inport = (short) cntx.getStorage()
                 .get(IFloodlightProviderService.CONTEXT_PI_INPORT);
 
@@ -165,7 +166,7 @@
         try {
             topology.acquireReadLock();
             Dpid dpid = new Dpid(sw.getId());
-            PortNumber p = new PortNumber(inport);
+            PortNumber p = PortNumber.uint16(inport);
             topologySwitch = topology.getSwitch(dpid);
             inPort = topology.getPort(dpid, p);
         } finally {