Moving LabelResourceManager to incubator

Breaking apart resource package into {device, link, label}
Refactored cluster serializers so they are visible

Change-Id: I71051bcd5e790ae6abeb154bf58286e584c32858
diff --git a/incubator/api/src/test/java/org/onosproject/incubator/net/resource/label/DefaultLabelResourceTest.java b/incubator/api/src/test/java/org/onosproject/incubator/net/resource/label/DefaultLabelResourceTest.java
new file mode 100644
index 0000000..5d7c02f
--- /dev/null
+++ b/incubator/api/src/test/java/org/onosproject/incubator/net/resource/label/DefaultLabelResourceTest.java
@@ -0,0 +1,31 @@
+package org.onosproject.incubator.net.resource.label;
+
+import org.junit.Test;
+import org.onosproject.event.AbstractEventTest;
+
+import com.google.common.testing.EqualsTester;
+
+/**
+ * Tests of default label resource.
+ */
+public class DefaultLabelResourceTest extends AbstractEventTest {
+
+    @Test
+    public void testEquality() {
+        String deviceId1 = "of:001";
+        String deviceId2 = "of:002";
+        long labelResourceId1 = 100;
+        long labelResourceId2 = 200;
+        DefaultLabelResource h1 = new DefaultLabelResource(deviceId1,
+                                                           labelResourceId1);
+        DefaultLabelResource h2 = new DefaultLabelResource(deviceId1,
+                                                           labelResourceId1);
+        DefaultLabelResource h3 = new DefaultLabelResource(deviceId2,
+                                                           labelResourceId2);
+        DefaultLabelResource h4 = new DefaultLabelResource(deviceId2,
+                                                           labelResourceId2);
+
+        new EqualsTester().addEqualityGroup(h1, h2).addEqualityGroup(h3, h4)
+                .testEquals();
+    }
+}
diff --git a/incubator/api/src/test/java/org/onosproject/incubator/net/resource/label/LabelResourcePoolTest.java b/incubator/api/src/test/java/org/onosproject/incubator/net/resource/label/LabelResourcePoolTest.java
new file mode 100644
index 0000000..8783508
--- /dev/null
+++ b/incubator/api/src/test/java/org/onosproject/incubator/net/resource/label/LabelResourcePoolTest.java
@@ -0,0 +1,23 @@
+package org.onosproject.incubator.net.resource.label;
+
+import org.junit.Test;
+import org.onosproject.event.AbstractEventTest;
+
+import com.google.common.testing.EqualsTester;
+
+/**
+ * Tests of the label resource pool.
+ */
+public class LabelResourcePoolTest extends AbstractEventTest {
+
+    @Test
+    public void testEquality() {
+        LabelResourcePool h1 = new LabelResourcePool("of:001", 0, 100);
+        LabelResourcePool h2 = new LabelResourcePool("of:001", 0, 100);
+        LabelResourcePool h3 = new LabelResourcePool("of:002", 0, 100);
+        LabelResourcePool h4 = new LabelResourcePool("of:002", 0, 100);
+        new EqualsTester().addEqualityGroup(h1, h2).addEqualityGroup(h3, h4)
+                .testEquals();
+    }
+
+}
diff --git a/incubator/api/src/test/java/org/onosproject/incubator/net/resource/label/LabelResourceRequestTest.java b/incubator/api/src/test/java/org/onosproject/incubator/net/resource/label/LabelResourceRequestTest.java
new file mode 100644
index 0000000..1b08f7c
--- /dev/null
+++ b/incubator/api/src/test/java/org/onosproject/incubator/net/resource/label/LabelResourceRequestTest.java
@@ -0,0 +1,44 @@
+package org.onosproject.incubator.net.resource.label;
+
+import java.util.Collections;
+
+import org.junit.Test;
+import org.onosproject.event.AbstractEventTest;
+import org.onosproject.net.DeviceId;
+
+import com.google.common.collect.ImmutableSet;
+import com.google.common.testing.EqualsTester;
+
+/**
+ * Tests of the label resource request.
+ */
+public class LabelResourceRequestTest extends AbstractEventTest {
+
+    @Test
+    public void testEquality() {
+        DeviceId deviceId1 = DeviceId.deviceId("of:0001");
+        DeviceId deviceId2 = DeviceId.deviceId("of:0002");
+        long apply = 2;
+        ImmutableSet<LabelResource> releaseCollection = ImmutableSet
+                .copyOf(Collections.emptySet());
+        LabelResourceRequest h1 = new LabelResourceRequest(
+                                                           deviceId1,
+                                                           LabelResourceRequest.Type.APPLY,
+                                                           apply, null);
+        LabelResourceRequest h2 = new LabelResourceRequest(
+                                                           deviceId1,
+                                                           LabelResourceRequest.Type.APPLY,
+                                                           apply, null);
+        LabelResourceRequest h3 = new LabelResourceRequest(
+                                                           deviceId2,
+                                                           LabelResourceRequest.Type.RELEASE,
+                                                           0, releaseCollection);
+        LabelResourceRequest h4 = new LabelResourceRequest(
+                                                           deviceId2,
+                                                           LabelResourceRequest.Type.RELEASE,
+                                                           0, releaseCollection);
+
+        new EqualsTester().addEqualityGroup(h1, h2).addEqualityGroup(h3, h4)
+                .testEquals();
+    }
+}