Deprecate {String,UUID}Identifier
[yangtools.git] / common / concepts / src / main / java / org / opendaylight / yangtools / concepts / CompositeObjectRegistration.java
index c999c5962be4d76e7efc16838afab86873bc7bf2..f80f4850ff481fd3ce625903ff60ab572f0e0f53 100644 (file)
@@ -12,6 +12,11 @@ import java.util.Collections;
 import java.util.HashSet;
 import java.util.Set;
 
+/**
+ * @deprecated This class does not have good semantics with regard to constituent registrations' lifecycle and should
+ *             not be used.
+ */
+@Deprecated
 public final class CompositeObjectRegistration<T> extends AbstractObjectRegistration<T> {
 
     private final Set<Registration> registrations;
@@ -39,8 +44,7 @@ public final class CompositeObjectRegistration<T> extends AbstractObjectRegistra
         return new CompositeObjectRegistrationBuilder<>(instance);
     }
 
-    public static final class CompositeObjectRegistrationBuilder<T> implements //
-    Builder<CompositeObjectRegistration<T>> {
+    public static final class CompositeObjectRegistrationBuilder<T> implements Builder<CompositeObjectRegistration<T>> {
 
         private final T instance;
         private final Set<Registration> registrations;
@@ -51,7 +55,7 @@ public final class CompositeObjectRegistration<T> extends AbstractObjectRegistra
         }
 
         public CompositeObjectRegistrationBuilder<T> add(final ObjectRegistration<? super T> registration) {
-            if (registration.getInstance() != instance) {
+            if (!registration.getInstance().equals(instance)) {
                 throw new IllegalArgumentException("Instance must be same.");
             }
             registrations.add(registration);
@@ -59,7 +63,7 @@ public final class CompositeObjectRegistration<T> extends AbstractObjectRegistra
         }
 
         public CompositeObjectRegistrationBuilder<T> remove(final ObjectRegistration<? super T> registration) {
-            if (registration.getInstance() != instance) {
+            if (!registration.getInstance().equals(instance)) {
                 throw new IllegalArgumentException("Instance must be same.");
             }
             registrations.remove(registration);
@@ -67,7 +71,7 @@ public final class CompositeObjectRegistration<T> extends AbstractObjectRegistra
         }
 
         @Override
-        public CompositeObjectRegistration<T> toInstance() {
+        public CompositeObjectRegistration<T> build() {
             return new CompositeObjectRegistration<>(instance, registrations);
         }
     }