9b25298db88a4afaa81fa222a5484d0f389074a7
[vfc/nfvo/driver/ems.git] / ems / boco / src / main / java / org / onap / vfc / nfvo / emsdriver / collector / alarm / HeartBeat.java
1 /**
2  * Copyright 2017 BOCO Corporation.  CMCC Technologies Co., Ltd
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package org.onap.vfc.nfvo.emsdriver.collector.alarm;
17
18 import java.io.BufferedOutputStream;
19 import java.net.Socket;
20
21 import org.apache.commons.logging.Log;
22 import org.apache.commons.logging.LogFactory;
23 import org.onap.vfc.nfvo.emsdriver.commons.constant.Constant;
24
25 public class HeartBeat extends Thread{
26         public  Log log = LogFactory.getLog(HeartBeat.class);
27         private BufferedOutputStream out = null;
28         private Socket socket=null;
29         private Msg heartStr ;
30         private boolean stop = false;
31         public boolean isStop(){
32                 return this.stop;
33         }
34         public void setStop(boolean stop){
35                 this.stop = stop;
36         }
37         
38         public HeartBeat( Socket socket,Msg heatMessage){
39                 this.socket=socket;     
40                 this.heartStr = heatMessage;
41         }
42         
43         public void run(){
44                 log.debug("HeartBeat start heartStr:"+heartStr.toString(false));
45                 this.stop=false;
46                 try {
47                         while(!this.isStop()){
48                                 out = new BufferedOutputStream(socket.getOutputStream());
49                                 MessageUtil.writeMsg(heartStr,out);
50                                 log.debug("send HeartBeat heartStr:"+heartStr.toString(false));
51                                 Thread.sleep(Constant.ONEMINUTE);
52                         }
53                 } catch (Exception e) {
54                         log.error("send HeartBeat fail ",e);
55                 } 
56                 log.debug("HeartBeat thread stop");
57         }
58         
59
60 }