Re-organize intent related packages

- Delete classes under intent package except for ApplicaitonIntent,
  PacketConnectivityIntent, and OpticalConnectivityIntent
- Move PacketConnectivityIntent and OpticalConnectivityIntent under
  net.onrc.onos.api.newintent package
- Adapt BatchOperation related changes for Intent and IntentId class

This is for ONOS-1887.

Change-Id: I4d25a0f8cbba806e9dd6e00333b6c7157c854658
diff --git a/src/main/java/net/onrc/onos/api/newintent/IntentIdGenerator.java b/src/main/java/net/onrc/onos/api/newintent/IntentIdGenerator.java
new file mode 100644
index 0000000..ec75c7b
--- /dev/null
+++ b/src/main/java/net/onrc/onos/api/newintent/IntentIdGenerator.java
@@ -0,0 +1,19 @@
+package net.onrc.onos.api.newintent;
+
+/**
+ * This interface is for generator of IntentId.
+ *
+ * <p>
+ * {@link #getNewId()} generates a globally unique {@link IntentId} instance
+ * on each invocation. Application developers should not generate IntentId
+ * by themselves. Instead use an implementation of this interface.
+ * </p>
+ */
+public interface IntentIdGenerator {
+    /**
+     * Generates a globally unique {@link IntentId} instance.
+     *
+     * @return a globally unique {@link IntentId} instance.
+     */
+    public IntentId getNewId();
+}