Changing Intent Ids to use explicit id assignment
Change-Id: I5a4bff87842c37a869e7691b353529eaefc929db
diff --git a/core/net/src/main/java/org/onlab/onos/core/impl/IdBlockAllocator.java b/core/net/src/main/java/org/onlab/onos/core/impl/IdBlockAllocator.java
new file mode 100644
index 0000000..4e59862
--- /dev/null
+++ b/core/net/src/main/java/org/onlab/onos/core/impl/IdBlockAllocator.java
@@ -0,0 +1,23 @@
+package org.onlab.onos.core.impl;
+
+import org.onlab.onos.core.IdBlock;
+
+/**
+ * An interface that gives unique ID spaces.
+ */
+public interface IdBlockAllocator {
+ /**
+ * Allocates a unique Id Block.
+ *
+ * @return Id Block.
+ */
+ IdBlock allocateUniqueIdBlock();
+
+ /**
+ * Allocates next unique id and retrieve a new range of ids if needed.
+ *
+ * @param range range to use for the identifier
+ * @return Id Block.
+ */
+ IdBlock allocateUniqueIdBlock(long range);
+}