Remove binding spec2
[mdsal.git] / binding2 / mdsal-binding2-dom-codec / src / main / java / org / opendaylight / mdsal / binding / javav2 / dom / codec / serialized / LazySerializedDOMNotification.java
diff --git a/binding2/mdsal-binding2-dom-codec/src/main/java/org/opendaylight/mdsal/binding/javav2/dom/codec/serialized/LazySerializedDOMNotification.java b/binding2/mdsal-binding2-dom-codec/src/main/java/org/opendaylight/mdsal/binding/javav2/dom/codec/serialized/LazySerializedDOMNotification.java
deleted file mode 100644 (file)
index ace09cf..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (c) 2017 Pantheon Technologies s.r.o. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-package org.opendaylight.mdsal.binding.javav2.dom.codec.serialized;
-
-import com.google.common.annotations.Beta;
-import javax.annotation.Nonnull;
-import org.opendaylight.mdsal.binding.javav2.dom.codec.api.serializer.BindingNormalizedNodeSerializer;
-import org.opendaylight.mdsal.binding.javav2.runtime.reflection.BindingReflections;
-import org.opendaylight.mdsal.binding.javav2.spec.base.Notification;
-import org.opendaylight.mdsal.dom.api.DOMNotification;
-import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
-import org.opendaylight.yangtools.yang.model.api.SchemaPath;
-
-/**
- * Lazy serialized implementation of DOM Notification.
- *
- * <p>
- * This implementation performs serialization of data, only if receiver of notification actually accessed data
- * from notification.
- *
- */
-@Beta
-public final class LazySerializedDOMNotification implements DOMNotification {
-
-    private final BindingNormalizedNodeSerializer codec;
-    private final Notification<?> data;
-    private final SchemaPath type;
-
-    private ContainerNode domBody;
-
-    private LazySerializedDOMNotification(final BindingNormalizedNodeSerializer codec, final Notification<?> data,
-            final SchemaPath type) {
-        this.codec = codec;
-        this.data = data;
-        this.type = type;
-    }
-
-    /**
-     * Create serializer of Binding notification data to DOM notification with specific codec.
-     *
-     * @param codec
-     *            - specific codec
-     * @param data
-     *            - binding notification data
-     * @return DOM notification serializer
-     */
-    public static DOMNotification create(final BindingNormalizedNodeSerializer codec, final Notification<?> data) {
-        final SchemaPath type = SchemaPath.create(true, BindingReflections.findQName(data.getClass()));
-        return new LazySerializedDOMNotification(codec, data, type);
-    }
-
-    @Nonnull
-    @Override
-    public SchemaPath getType() {
-        return type;
-    }
-
-    @Nonnull
-    @Override
-    public ContainerNode getBody() {
-        if (domBody == null) {
-            domBody = codec.toNormalizedNodeNotification(data);
-        }
-        return domBody;
-    }
-
-    /**
-     * Get binding notification data.
-     *
-     * @return binding notification data
-     */
-    public Notification<?> getBindingData() {
-        return data;
-    }
-}