Move deprecated flow batch APIs to a less obvious place

Change-Id: I8078aadbafad1e5a339d74859bed94e25c9c6e8c
diff --git a/core/api/src/main/java/org/onosproject/net/flow/FlowRuleProvider.java b/core/api/src/main/java/org/onosproject/net/flow/FlowRuleProvider.java
index cbf1da5..d20f9aa 100644
--- a/core/api/src/main/java/org/onosproject/net/flow/FlowRuleProvider.java
+++ b/core/api/src/main/java/org/onosproject/net/flow/FlowRuleProvider.java
@@ -16,6 +16,7 @@
 package org.onosproject.net.flow;
 
 import org.onosproject.core.ApplicationId;
+import org.onosproject.net.flow.oldbatch.FlowRuleBatchOperation;
 import org.onosproject.net.provider.Provider;
 
 /**
diff --git a/core/api/src/main/java/org/onosproject/net/flow/FlowRuleStore.java b/core/api/src/main/java/org/onosproject/net/flow/FlowRuleStore.java
index 13a91a7..ff0bbe1 100644
--- a/core/api/src/main/java/org/onosproject/net/flow/FlowRuleStore.java
+++ b/core/api/src/main/java/org/onosproject/net/flow/FlowRuleStore.java
@@ -18,6 +18,8 @@
 import java.util.List;
 
 import org.onosproject.net.DeviceId;
+import org.onosproject.net.flow.oldbatch.FlowRuleBatchEvent;
+import org.onosproject.net.flow.oldbatch.FlowRuleBatchOperation;
 import org.onosproject.store.Store;
 
 /**
diff --git a/core/api/src/main/java/org/onosproject/net/flow/FlowRuleStoreDelegate.java b/core/api/src/main/java/org/onosproject/net/flow/FlowRuleStoreDelegate.java
index 7b31f48..3e712f2 100644
--- a/core/api/src/main/java/org/onosproject/net/flow/FlowRuleStoreDelegate.java
+++ b/core/api/src/main/java/org/onosproject/net/flow/FlowRuleStoreDelegate.java
@@ -15,6 +15,7 @@
  */
 package org.onosproject.net.flow;
 
+import org.onosproject.net.flow.oldbatch.FlowRuleBatchEvent;
 import org.onosproject.store.StoreDelegate;
 
 /**
diff --git a/core/api/src/main/java/org/onosproject/net/flow/FlowRuleBatchEntry.java b/core/api/src/main/java/org/onosproject/net/flow/oldbatch/FlowRuleBatchEntry.java
similarity index 85%
rename from core/api/src/main/java/org/onosproject/net/flow/FlowRuleBatchEntry.java
rename to core/api/src/main/java/org/onosproject/net/flow/oldbatch/FlowRuleBatchEntry.java
index 964647b..905af60 100644
--- a/core/api/src/main/java/org/onosproject/net/flow/FlowRuleBatchEntry.java
+++ b/core/api/src/main/java/org/onosproject/net/flow/oldbatch/FlowRuleBatchEntry.java
@@ -13,9 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.net.flow;
+package org.onosproject.net.flow.oldbatch;
 
-import org.onosproject.net.flow.FlowRuleBatchEntry.FlowRuleOperation;
+import org.onosproject.net.flow.BatchOperationEntry;
+import org.onosproject.net.flow.FlowRule;
+import org.onosproject.net.flow.oldbatch.FlowRuleBatchEntry.FlowRuleOperation;
 
 @Deprecated
 /**
diff --git a/core/api/src/main/java/org/onosproject/net/flow/FlowRuleBatchEvent.java b/core/api/src/main/java/org/onosproject/net/flow/oldbatch/FlowRuleBatchEvent.java
similarity index 97%
rename from core/api/src/main/java/org/onosproject/net/flow/FlowRuleBatchEvent.java
rename to core/api/src/main/java/org/onosproject/net/flow/oldbatch/FlowRuleBatchEvent.java
index f70067f..ab41753 100644
--- a/core/api/src/main/java/org/onosproject/net/flow/FlowRuleBatchEvent.java
+++ b/core/api/src/main/java/org/onosproject/net/flow/oldbatch/FlowRuleBatchEvent.java
@@ -13,10 +13,11 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.net.flow;
+package org.onosproject.net.flow.oldbatch;
 
 import org.onosproject.event.AbstractEvent;
 import org.onosproject.net.DeviceId;
+import org.onosproject.net.flow.CompletedBatchOperation;
 
 @Deprecated
 /**
diff --git a/core/api/src/main/java/org/onosproject/net/flow/FlowRuleBatchOperation.java b/core/api/src/main/java/org/onosproject/net/flow/oldbatch/FlowRuleBatchOperation.java
similarity index 94%
rename from core/api/src/main/java/org/onosproject/net/flow/FlowRuleBatchOperation.java
rename to core/api/src/main/java/org/onosproject/net/flow/oldbatch/FlowRuleBatchOperation.java
index a721cc8..d252e6a 100644
--- a/core/api/src/main/java/org/onosproject/net/flow/FlowRuleBatchOperation.java
+++ b/core/api/src/main/java/org/onosproject/net/flow/oldbatch/FlowRuleBatchOperation.java
@@ -13,9 +13,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.net.flow;
+package org.onosproject.net.flow.oldbatch;
 
 import org.onosproject.net.DeviceId;
+import org.onosproject.net.flow.BatchOperation;
 
 import java.util.Collection;
 
diff --git a/core/api/src/main/java/org/onosproject/net/flow/FlowRuleBatchRequest.java b/core/api/src/main/java/org/onosproject/net/flow/oldbatch/FlowRuleBatchRequest.java
similarity index 97%
rename from core/api/src/main/java/org/onosproject/net/flow/FlowRuleBatchRequest.java
rename to core/api/src/main/java/org/onosproject/net/flow/oldbatch/FlowRuleBatchRequest.java
index d1e74cd..33539e4 100644
--- a/core/api/src/main/java/org/onosproject/net/flow/FlowRuleBatchRequest.java
+++ b/core/api/src/main/java/org/onosproject/net/flow/oldbatch/FlowRuleBatchRequest.java
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.net.flow;
+package org.onosproject.net.flow.oldbatch;
 
 import java.util.List;
 import java.util.Set;
diff --git a/core/api/src/main/java/org/onosproject/net/flow/oldbatch/package-info.java b/core/api/src/main/java/org/onosproject/net/flow/oldbatch/package-info.java
new file mode 100644
index 0000000..20cb7a3
--- /dev/null
+++ b/core/api/src/main/java/org/onosproject/net/flow/oldbatch/package-info.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright 2014-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Flow rule model & related services API definitions.
+ *
+ * <p>
+ * The figure below depicts the general interactions between different
+ * components of the intent subsystem.<br>
+ * <img src="doc-files/flow-design.png" alt="ONOS flow rule subsystem design">
+ * </p>
+ */
+package org.onosproject.net.flow.oldbatch;
diff --git a/core/api/src/test/java/org/onosproject/net/flow/FlowRuleBatchOperationTest.java b/core/api/src/test/java/org/onosproject/net/flow/FlowRuleBatchOperationTest.java
index 2ff894c..0fa563f 100644
--- a/core/api/src/test/java/org/onosproject/net/flow/FlowRuleBatchOperationTest.java
+++ b/core/api/src/test/java/org/onosproject/net/flow/FlowRuleBatchOperationTest.java
@@ -18,6 +18,8 @@
 import java.util.LinkedList;
 
 import org.junit.Test;
+import org.onosproject.net.flow.oldbatch.FlowRuleBatchEntry;
+import org.onosproject.net.flow.oldbatch.FlowRuleBatchOperation;
 import org.onosproject.net.intent.IntentTestsMocks;
 
 import com.google.common.testing.EqualsTester;
diff --git a/core/api/src/test/java/org/onosproject/net/flow/FlowRuleBatchRequestTest.java b/core/api/src/test/java/org/onosproject/net/flow/FlowRuleBatchRequestTest.java
index a06e84a..ca263ee 100644
--- a/core/api/src/test/java/org/onosproject/net/flow/FlowRuleBatchRequestTest.java
+++ b/core/api/src/test/java/org/onosproject/net/flow/FlowRuleBatchRequestTest.java
@@ -16,6 +16,9 @@
 package org.onosproject.net.flow;
 
 import org.junit.Test;
+import org.onosproject.net.flow.oldbatch.FlowRuleBatchEntry;
+import org.onosproject.net.flow.oldbatch.FlowRuleBatchOperation;
+import org.onosproject.net.flow.oldbatch.FlowRuleBatchRequest;
 import org.onosproject.net.intent.IntentTestsMocks;
 
 import java.util.HashSet;
@@ -25,8 +28,8 @@
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.hamcrest.Matchers.hasSize;
 import static org.hamcrest.Matchers.is;
-import static org.onosproject.net.flow.FlowRuleBatchEntry.FlowRuleOperation.ADD;
-import static org.onosproject.net.flow.FlowRuleBatchEntry.FlowRuleOperation.REMOVE;
+import static org.onosproject.net.flow.oldbatch.FlowRuleBatchEntry.FlowRuleOperation.ADD;
+import static org.onosproject.net.flow.oldbatch.FlowRuleBatchEntry.FlowRuleOperation.REMOVE;
 
 /**
  * Unit tests for the FlowRuleBatchRequest class.