BgpTableType: toString()
[bgpcep.git] / bgp / rib-impl / src / main / java / org / opendaylight / controller / config / yang / bgp / rib / impl / BGPTableTypeImplModule.java
1 /*
2  * Copyright (c) 2013 Cisco Systems, Inc. and others.  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  * Generated file
10
11  * Generated from: yang module name: bgp-rib-impl  yang module local name: bgp-table-type-impl
12  * Generated by: org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator
13  * Generated at: Sat Jan 25 20:28:03 CET 2014
14  *
15  * Do not modify this file unless it is present under src/main directory
16  */
17 package org.opendaylight.controller.config.yang.bgp.rib.impl;
18
19 import com.google.common.base.Preconditions;
20 import org.opendaylight.controller.config.api.JmxAttributeValidationException;
21 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.multiprotocol.rev130919.BgpTableType;
22 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev130919.AddressFamily;
23 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev130919.SubsequentAddressFamily;
24 import org.opendaylight.yangtools.yang.binding.DataContainer;
25
26 /**
27  *
28  */
29 public final class BGPTableTypeImplModule extends org.opendaylight.controller.config.yang.bgp.rib.impl.AbstractBGPTableTypeImplModule {
30
31     public BGPTableTypeImplModule(final org.opendaylight.controller.config.api.ModuleIdentifier identifier,
32             final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
33         super(identifier, dependencyResolver);
34     }
35
36     public BGPTableTypeImplModule(final org.opendaylight.controller.config.api.ModuleIdentifier identifier,
37             final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver, final BGPTableTypeImplModule oldModule,
38             final java.lang.AutoCloseable oldInstance) {
39
40         super(identifier, dependencyResolver, oldModule, oldInstance);
41     }
42
43     @Override
44     protected void customValidation() {
45         JmxAttributeValidationException.checkNotNull(getAfi(), "value is not set.", afiJmxAttribute);
46         JmxAttributeValidationException.checkNotNull(getSafi(), "value is not set.", safiJmxAttribute);
47     }
48
49     @Override
50     public java.lang.AutoCloseable createInstance() {
51         return new AutoCloseableBgpTableType(getAfiIdentity(), getSafiIdentity());
52     }
53
54     private static final class AutoCloseableBgpTableType implements AutoCloseable, BgpTableType {
55         private final Class<? extends AddressFamily> afi;
56         private final Class<? extends SubsequentAddressFamily> safi;
57
58         public AutoCloseableBgpTableType(final Class<? extends AddressFamily> afi, final Class<? extends SubsequentAddressFamily> safi) {
59             this.afi = Preconditions.checkNotNull(afi);
60             this.safi = Preconditions.checkNotNull(safi);
61         }
62
63         @Override
64         public Class<? extends DataContainer> getImplementedInterface() {
65             return BgpTableType.class;
66         }
67
68         @Override
69         public Class<? extends AddressFamily> getAfi() {
70             return this.afi;
71         }
72
73         @Override
74         public Class<? extends SubsequentAddressFamily> getSafi() {
75             return this.safi;
76         }
77
78         @Override
79         public void close() {
80             // Nothing to do
81         }
82
83         @Override
84         public String toString() {
85             final StringBuilder builder = new StringBuilder();
86             builder.append("AutoCloseableBgpTableType [getAfi()=");
87             builder.append(getAfi());
88             builder.append(", getSafi()=");
89             builder.append(getSafi());
90             builder.append("]");
91             return builder.toString();
92         }
93     }
94 }