Import Floodlight v0.90
diff --git a/src/ext/floodlight/src/main/java/net/floodlightcontroller/virtualnetwork/IVirtualNetworkService.java b/src/ext/floodlight/src/main/java/net/floodlightcontroller/virtualnetwork/IVirtualNetworkService.java
new file mode 100644
index 0000000..4304a33
--- /dev/null
+++ b/src/ext/floodlight/src/main/java/net/floodlightcontroller/virtualnetwork/IVirtualNetworkService.java
@@ -0,0 +1,46 @@
+package net.floodlightcontroller.virtualnetwork;
+
+import java.util.Collection;
+import net.floodlightcontroller.core.module.IFloodlightService;
+import net.floodlightcontroller.util.MACAddress;
+
+public interface IVirtualNetworkService extends IFloodlightService {
+    /**
+     * Creates a new virtual network. This can also be called
+     * to modify a virtual network. To update a network you specify the GUID
+     * and the fields you want to update.
+     * @param network The network name. Must be unique.
+     * @param guid The ID of the network. Must be unique.
+     * @param gateway The IP address of the network gateway, null if none.
+     */
+    public void createNetwork(String guid, String network, Integer gateway);
+    
+    /**
+     * Deletes a virtual network.
+     * @param guid The ID (not name) of virtual network to delete.
+     */
+    public void deleteNetwork(String guid);
+    
+    /**
+     * Adds a host to a virtual network. If a mapping already exists the
+     * new one will override the old mapping.
+     * @param mac The MAC address of the host to add.
+     * @param network The network to add the host to.
+     * @param port The logical port name to attach the host to. Must be unique.
+     */
+    public void addHost(MACAddress mac, String network, String port); 
+    
+    /**
+     * Deletes a host from a virtual network. Either the MAC or Port must
+     * be specified.
+     * @param mac The MAC address to delete.
+     * @param port The logical port the host is attached to.
+     */
+    public void deleteHost(MACAddress mac, String port);
+    
+    /**
+     * Return list of all virtual networks.
+     * @return Collection <VirtualNetwork>
+     */
+    public Collection <VirtualNetwork> listNetworks();
+}