Bulk upload changes and music health check apis
[portal.git] / ecomp-portal-BE-common / src / main / java / org / onap / portalapp / uebhandler / InitUebHandler.java
1 /*-
2  * ============LICENSE_START==========================================
3  * ONAP Portal
4  * ===================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ===================================================================
7  *
8  * Unless otherwise specified, all software contained herein is licensed
9  * under the Apache License, Version 2.0 (the "License");
10  * you may not use this software except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  *             http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  *
21  * Unless otherwise specified, all documentation contained herein is licensed
22  * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
23  * you may not use this documentation except in compliance with the License.
24  * You may obtain a copy of the License at
25  *
26  *             https://creativecommons.org/licenses/by/4.0/
27  *
28  * Unless required by applicable law or agreed to in writing, documentation
29  * distributed under the License is distributed on an "AS IS" BASIS,
30  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
31  * See the License for the specific language governing permissions and
32  * limitations under the License.
33  *
34  * ============LICENSE_END============================================
35  *
36  *
37  * 
38  */
39 package org.onap.portalapp.uebhandler;
40
41 import java.util.concurrent.ConcurrentLinkedQueue;
42
43 import org.onap.portalsdk.core.logging.logic.EELFLoggerDelegate;
44 import org.onap.portalsdk.core.onboarding.ueb.UebManager;
45 import org.onap.portalsdk.core.onboarding.ueb.UebMsg;
46 import org.onap.portalsdk.core.onboarding.util.PortalApiConstants;
47 import org.onap.portalsdk.core.onboarding.util.PortalApiProperties;
48
49 //
50 // Adding this class for the sole purpose of insuring that the MainUebHandler really 
51 // honors @Async and kicks off a thread.  For more info google @Async and read about
52 // @Async only working if called from different class.
53 //
54 //@Configuration
55 //@EnableAspectJAutoProxy
56 //@EPMetricsLog
57 public class InitUebHandler {
58         private EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(InitUebHandler.class);
59
60         // @Autowired
61         private MainUebHandler mainUebHandler;
62         
63         public InitUebHandler() {
64         
65         }
66
67         // @PostConstruct
68         public void initUeb() {
69                 try {
70                         String enableListenerThread = PortalApiProperties.getProperty(PortalApiConstants.UEB_LISTENERS_ENABLE);
71                         if (enableListenerThread.equalsIgnoreCase("true")) {
72                 ConcurrentLinkedQueue<UebMsg> inboxQueue = new ConcurrentLinkedQueue<UebMsg>();
73                     UebManager.getInstance().initListener(inboxQueue);
74                         mainUebHandler.runHandler(inboxQueue);
75                     logger.info(EELFLoggerDelegate.errorLogger, "Returned from initiating mainUebHandler...");
76                 }
77                     else {
78                         logger.info(EELFLoggerDelegate.errorLogger, "Not starting UEB listening thread because ueb_listeners_enable is not set to true in the properties file.");
79                     }
80                 }
81                 catch (Exception e) {
82                         logger.info(EELFLoggerDelegate.errorLogger, "Not starting UEB listening thread because property could not be read " + PortalApiConstants.UEB_LISTENERS_ENABLE);
83                 }
84         }
85 }