Async thread pool change for VES heartbeat
[oam/tr069-adapter.git] / ves-agent / src / main / java / org / commscope / tr069adapter / vesagent / async / AsyncThreadPoolConfig.java
index b968608..bb87a7c 100644 (file)
@@ -1,36 +1,40 @@
-package org.commscope.tr069adapter.vesagent.async;\r
-\r
-import java.util.concurrent.Executor;\r
-\r
-import org.springframework.context.annotation.Configuration;\r
-import org.springframework.scheduling.annotation.AsyncConfigurer;\r
-import org.springframework.scheduling.annotation.EnableAsync;\r
-import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;\r
-\r
-/**\r
- * \r
- * @version 1.0\r
- * @since June 12, 2020\r
- * @author Prashant Kumar\r
- */\r
-\r
-@Configuration\r
-@EnableAsync\r
-public class AsyncThreadPoolConfig implements AsyncConfigurer {\r
-\r
-  @Override\r
-  public Executor getAsyncExecutor() {\r
-    ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();\r
-    executor.setCorePoolSize(7);\r
-    executor.setMaxPoolSize(25);\r
-    executor.setQueueCapacity(11);\r
-    executor.setThreadNamePrefix("MyExecutor-");\r
-    executor.initialize();\r
-    return executor;\r
-  }\r
-\r
-  // @Override\r
-  // public AsyncUncaughtExceptionHandler getAsyncUncaughtExceptionHandler() {\r
-  // return new MyAsyncUncaughtExceptionHandler();\r
-  // }\r
-}\r
+/*
+ * ============LICENSE_START========================================================================
+ * ONAP : tr-069-adapter
+ * =================================================================================================
+ * Copyright (C) 2020 CommScope Inc Intellectual Property.
+ * =================================================================================================
+ * This tr-069-adapter software file is distributed by CommScope Inc under the Apache License,
+ * Version 2.0 (the "License"); you may not use this file except in compliance with the License. You
+ * may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+ * either express or implied. See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ===============LICENSE_END=======================================================================
+ */
+
+package org.commscope.tr069adapter.vesagent.async;
+
+import java.util.concurrent.Executor;
+import java.util.concurrent.Executors;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.scheduling.annotation.EnableAsync;
+
+@Configuration
+@EnableAsync
+public class AsyncThreadPoolConfig {
+
+  @Bean(name = "threadPoolTaskExecutor1")
+  public Executor threadPoolTaskExecutor() {
+    return Executors.newFixedThreadPool(50);
+  }
+
+  @Bean(name = "threadPoolTaskExecutor2")
+  public Executor threadPoolTaskExecutor2() {
+    return Executors.newFixedThreadPool(50);
+  }
+}