address comments
diff --git a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/IPAddress.java b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/IPAddress.java
index a9e04fb..5e4e818 100644
--- a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/IPAddress.java
+++ b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/types/IPAddress.java
@@ -1,5 +1,7 @@
 package org.projectfloodlight.openflow.types;
 
+import java.net.Inet4Address;
+import java.net.Inet6Address;
 import java.net.InetAddress;
 
 import javax.annotation.Nonnull;
@@ -83,10 +85,17 @@
      * Factory function for InetAddress values.
      * @param address the InetAddress you wish to parse into an IPAddress object.
      * @return the IPAddress object.
+     * @throws NullPointerException if address is null
      */
     @Nonnull
     public static IPAddress<?> fromInetAddress(@Nonnull InetAddress address) {
         Preconditions.checkNotNull(address, "address must not be null");
-        return IPAddress.of(address.getHostAddress());
+        byte [] bytes = address.getAddress();
+        if(address instanceof Inet4Address)
+            return IPv4Address.of(bytes);
+        else if (address instanceof Inet6Address)
+            return IPv6Address.of(bytes);
+        else
+            return IPAddress.of(address.getHostAddress());
     }
 }