/*
 * Copyright (c) 2013 Cisco Systems, Inc. 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.controller.netconf.api;

import org.w3c.dom.Document;

import com.google.common.base.Optional;

/**
 * NetconfMessage represents a wrapper around org.w3c.dom.Document. Needed for
 * implementing ProtocolMessage interface.
 */
public final class NetconfMessage {

    private static final long serialVersionUID = 462175939836367285L;

    private final Document doc;

    private String additionalHeader;

    public NetconfMessage(final Document doc) {
        this(doc, null);
    }

    public NetconfMessage(Document doc, String additionalHeader) {
        this.doc = doc;
        this.additionalHeader = additionalHeader;
    }

    public Document getDocument() {
        return this.doc;
    }

    public Optional<String> getAdditionalHeader() {
        return additionalHeader== null ? Optional.<String>absent() : Optional.of(additionalHeader);
    }
}

/*
 * Copyright (c) 2013 Cisco Systems, Inc. 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.controller.netconf.api;

import org.w3c.dom.Document;

import com.google.common.base.Optional;

/**
 * NetconfMessage represents a wrapper around org.w3c.dom.Document. Needed for
 * implementing ProtocolMessage interface.
 */
public final class NetconfMessage {
    private final String additionalHeader;
    private final Document doc;

    public NetconfMessage(final Document doc) {
        this(doc, null);
    }

    public NetconfMessage(Document doc, String additionalHeader) {
        this.doc = doc;
        this.additionalHeader = additionalHeader;
    }

    public Document getDocument() {
        return this.doc;
    }

    public Optional<String> getAdditionalHeader() {
        return additionalHeader== null ? Optional.<String>absent() : Optional.of(additionalHeader);
    }
}

Fix a warning and make field final
Fix a warning and make field final

Drive-by fix
- additionalHeader should be final,
- the class is not serializable, no uuid is needed

Change-Id: I484b07e64942179d153e7c42ca32d753fb2a5b23
Signed-off-by: Robert Varga <b8bd3df785fdc0ff42dd1710c5d91998513c57ef@cisco.com>
