2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
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
12 * Generated from: yang module name: threadpool-impl-flexible yang module local name: threadpool-flexible
13 * Generated by: org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator
14 * Generated at: Sun Dec 01 17:13:32 CET 2013
16 * Do not modify this file unless it is present under src/main directory
18 package org.opendaylight.controller.config.yang.threadpool.impl.flexible;
20 import com.google.common.base.Optional;
21 import java.util.concurrent.TimeUnit;
23 import org.opendaylight.controller.config.api.JmxAttributeValidationException;
24 import org.opendaylight.controller.config.threadpool.util.FlexibleThreadPoolWrapper;
29 public final class FlexibleThreadPoolModule extends org.opendaylight.controller.config.yang.threadpool.impl.flexible.AbstractFlexibleThreadPoolModule
32 public FlexibleThreadPoolModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
33 super(identifier, dependencyResolver);
36 public FlexibleThreadPoolModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver, FlexibleThreadPoolModule oldModule, java.lang.AutoCloseable oldInstance) {
37 super(identifier, dependencyResolver, oldModule, oldInstance);
41 public void validate(){
43 JmxAttributeValidationException.checkNotNull(getKeepAliveMillis(), keepAliveMillisJmxAttribute);
44 JmxAttributeValidationException.checkCondition(getKeepAliveMillis() > 0, "must be greater than zero",
45 keepAliveMillisJmxAttribute);
47 JmxAttributeValidationException.checkNotNull(getMinThreadCount(), minThreadCountJmxAttribute);
48 JmxAttributeValidationException.checkCondition(getMinThreadCount() > 0, "must be greater than zero",
49 minThreadCountJmxAttribute);
51 JmxAttributeValidationException.checkNotNull(getMaxThreadCount(), maxThreadCountJmxAttribute);
52 JmxAttributeValidationException.checkCondition(getMaxThreadCount() > 0, "must be greater than zero",
53 maxThreadCountJmxAttribute);
55 if(getQueueCapacity() != null) {
56 JmxAttributeValidationException.checkCondition(getQueueCapacity() > 0, "Queue capacity cannot be < 1", queueCapacityJmxAttribute);
61 public java.lang.AutoCloseable createInstance() {
62 return new FlexibleThreadPoolWrapper(getMinThreadCount(), getMaxThreadCount(), getKeepAliveMillis(),
63 TimeUnit.MILLISECONDS, getThreadFactoryDependency(), Optional.fromNullable(getQueueCapacity()));