X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-dom-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fcore%2Fapi%2FRpcRoutingContext.java;h=a847d326a32aeb999b509c17db286856c0c2dfcc;hp=1680c1927707009a6dc3f147aa0a6bc9322aabdc;hb=f71972480694687d1efe5536015fe62a2e064914;hpb=94f1ef0b8ac5b44bed8f81f6c4d330a16b2b34fd diff --git a/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/sal/core/api/RpcRoutingContext.java b/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/sal/core/api/RpcRoutingContext.java index 1680c19277..a847d326a3 100644 --- a/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/sal/core/api/RpcRoutingContext.java +++ b/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/sal/core/api/RpcRoutingContext.java @@ -5,14 +5,76 @@ * 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.sal.core.api; +import java.io.Serializable; +import org.opendaylight.yangtools.concepts.Immutable; import org.opendaylight.yangtools.yang.common.QName; -public interface RpcRoutingContext { +public final class RpcRoutingContext implements Immutable, Serializable { + private static final long serialVersionUID = -9079324728075883325L; + + private final QName context; + private final QName rpc; + + + private RpcRoutingContext(QName context, QName rpc) { + this.context = context; + this.rpc = rpc; + } + + public static RpcRoutingContext create(QName context, QName rpc) { + return new RpcRoutingContext(context, rpc); + } + + public QName getContext() { + return context; + } + + public QName getRpc() { + return rpc; + } + + @Override + public String toString() { + return "RpcRoutingContext [context=" + context + ", rpc=" + rpc + "]"; + } - public QName getContext(); + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + (context == null ? 0 : context.hashCode()); + result = prime * result + (rpc == null ? 0 : rpc.hashCode()); + return result; + } - public QName getRpcType(); + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + RpcRoutingContext other = (RpcRoutingContext) obj; + if (context == null) { + if (other.context != null) { + return false; + } + } else if (!context.equals(other.context)) { + return false; + } + if (rpc == null) { + if (other.rpc != null) { + return false; + } + } else if (!rpc.equals(other.rpc)) { + return false; + } + return true; + } }