Merge "Used netty Timer config + tests, fixed yang files and dependencies."
[bgpcep.git] / pcep / impl-config / src / main / java / org / opendaylight / controller / config / yang / pcep / impl / PCEPDispatcherImplModule.java
1 /**
2  * Generated file
3
4  * Generated from: yang module name: pcep-impl  yang module local name: pcep-dispatcher-impl
5  * Generated by: org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator
6  * Generated at: Wed Nov 06 13:16:39 CET 2013
7  *
8  * Do not modify this file unless it is present under src/main directory
9  */
10 package org.opendaylight.controller.config.yang.pcep.impl;
11
12 import org.opendaylight.controller.config.api.JmxAttributeValidationException;
13 import org.opendaylight.protocol.pcep.impl.DefaultPCEPSessionNegotiatorFactory;
14 import org.opendaylight.protocol.pcep.impl.PCEPDispatcherImpl;
15 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.open.object.Open;
16
17 /**
18  *
19  */
20 public final class PCEPDispatcherImplModule
21 extends
22 org.opendaylight.controller.config.yang.pcep.impl.AbstractPCEPDispatcherImplModule {
23
24         public PCEPDispatcherImplModule(
25                         final org.opendaylight.controller.config.api.ModuleIdentifier name,
26                         final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
27                 super(name, dependencyResolver);
28         }
29
30         public PCEPDispatcherImplModule(
31                         final org.opendaylight.controller.config.api.ModuleIdentifier name,
32                         final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver,
33                         final PCEPDispatcherImplModule oldModule,
34                         final java.lang.AutoCloseable oldInstance) {
35                 super(name, dependencyResolver, oldModule, oldInstance);
36         }
37
38         @Override
39         public void validate() {
40                 super.validate();
41                 JmxAttributeValidationException.checkNotNull(getMaxUnknownMessages(),
42                                 "value is not set.", this.maxUnknownMessagesJmxAttribute);
43                 JmxAttributeValidationException.checkCondition(
44                                 getMaxUnknownMessages() > 0, "Parameter 'maxUnknownMessages' "
45                                                 + "must be greater than 0",
46                                                 this.maxUnknownMessagesJmxAttribute);
47         }
48
49         @Override
50         public java.lang.AutoCloseable createInstance() {
51                 Open localPrefs = getPcepSessionProposalFactoryDependency()
52                                 .getSessionProposal(null, -1);
53                 DefaultPCEPSessionNegotiatorFactory negFactory = new DefaultPCEPSessionNegotiatorFactory(
54                                 getTimerDependency(), localPrefs, getMaxUnknownMessages());
55
56                 final PCEPDispatcherImpl instance = new PCEPDispatcherImpl(
57                                 getExtensionsDependency().getMessageHandlerRegistry(),
58                                 negFactory, getBossGroupDependency(), getWorkerGroupDependency());
59                 return instance;
60         }
61 }