37d48e5dc61b32f1d2405b1ca98c97b5c9680c0b
[groupbasedpolicy.git] / renderers / vpp / src / main / java / org / opendaylight / groupbasedpolicy / renderer / vpp / commands / lisp / dom / VniTableDom.java
1 /*
2  * Copyright (c) 2017 Cisco Systems. All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8
9 package org.opendaylight.groupbasedpolicy.renderer.vpp.commands.lisp.dom;
10
11 import com.google.common.base.Preconditions;
12 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.lisp.rev170808.eid.table.grouping.eid.table.VniTable;
13 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.lisp.rev170808.eid.table.grouping.eid.table.VniTableBuilder;
14 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.lisp.rev170808.eid.table.grouping.eid.table.VniTableKey;
15 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.lisp.rev170808.eid.table.grouping.eid.table.vni.table.VrfSubtable;
16
17 public class VniTableDom implements CommandModel {
18     private long virtualNetworkIdentifier;
19     private VrfSubtable vrfSubtable;
20
21     public long getVirtualNetworkIdentifier() {
22         return virtualNetworkIdentifier;
23     }
24
25     public void setVirtualNetworkIdentifier(long virtualNetworkIdentifier) {
26         this.virtualNetworkIdentifier = virtualNetworkIdentifier;
27     }
28
29     public VrfSubtable getVrfSubtable() {
30         return vrfSubtable;
31     }
32
33     public void setVrfSubtable(VrfSubtable vrfSubtable) {
34         this.vrfSubtable = vrfSubtable;
35     }
36
37     @Override
38     public VniTable getSALObject() {
39         Preconditions.checkNotNull(virtualNetworkIdentifier, "Virtual Network Identifier" +
40                 " needs to be set!");
41
42         VniTableKey vniTableKey = new VniTableKey(virtualNetworkIdentifier);
43         return new VniTableBuilder()
44                         .setKey(vniTableKey)
45                         .setVirtualNetworkIdentifier(vniTableKey.getVirtualNetworkIdentifier())
46                         .setVrfSubtable(vrfSubtable).build();
47     }
48
49     @Override public String toString() {
50         return "VniTable{" + "virtualNetworkIdentifier=" + virtualNetworkIdentifier + ", vrfSubtable=" + vrfSubtable
51             + '}';
52     }
53 }