blob: a90b1cf3a2657469c27d12f5aa9051e5958fd7ed [file] [log] [blame]
Charles Chan6c624992017-08-18 17:11:34 -07001/*
2 * Copyright 2017-present Open Networking Foundation
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17package org.onosproject.segmentrouting;
18
19import org.onlab.packet.MacAddress;
20import org.onlab.packet.VlanId;
21import org.onosproject.net.DeviceId;
22
23import java.util.Objects;
24
25/**
26 * Mock Bridging Table Key.
27 */
28class MockBridgingTableKey {
29 DeviceId deviceId;
30 MacAddress macAddress;
31 VlanId vlanId;
32
33 MockBridgingTableKey(DeviceId deviceId, MacAddress macAddress, VlanId vlanId) {
34 this.deviceId = deviceId;
35 this.macAddress = macAddress;
36 this.vlanId = vlanId;
37 }
38
39 @Override
40 public boolean equals(final Object obj) {
41 if (this == obj) {
42 return true;
43 }
44 if (!(obj instanceof MockBridgingTableKey)) {
45 return false;
46 }
47 final MockBridgingTableKey other = (MockBridgingTableKey) obj;
48 return Objects.equals(this.macAddress, other.macAddress) &&
49 Objects.equals(this.deviceId, other.deviceId) &&
50 Objects.equals(this.vlanId, other.vlanId);
51 }
52
53 @Override
54 public int hashCode() {
55 return Objects.hash(macAddress, vlanId);
56 }
57}