28ec92eb3e6b89c4eeab9345876ab0119b0d66e6
[vfc/nfvo/driver/ems.git] /
1 <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>NorthMessageMgr.java</title><link rel="stylesheet" href="../jacoco-resources/prettify.css" type="text/css"/><script type="text/javascript" src="../jacoco-resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">vfc-nfvo-driver-ems-ems-boco</a> &gt; <a href="index.source.html" class="el_package">org.onap.vfc.nfvo.emsdriver.northbound.client</a> &gt; <span class="el_source">NorthMessageMgr.java</span></div><h1>NorthMessageMgr.java</h1><pre class="source lang-java linenums">/**
2  * Copyright 2017 BOCO Corporation.  CMCC Technologies Co., Ltd
3  *
4  * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
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 &quot;AS IS&quot; 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.northbound.client;
17
18 import java.text.ParseException;
19 import java.text.SimpleDateFormat;
20 import java.util.Date;
21 import java.util.Map;
22 import java.util.Properties;
23
24 import org.apache.log4j.Level;
25 import org.onap.vfc.nfvo.emsdriver.commons.constant.Constant;
26 import org.onap.vfc.nfvo.emsdriver.commons.utils.DriverThread;
27 import org.onap.vfc.nfvo.emsdriver.configmgr.ConfigurationInterface;
28 import org.onap.vfc.nfvo.emsdriver.messagemgr.MessageChannel;
29 import org.onap.vfc.nfvo.emsdriver.messagemgr.MessageChannelFactory;
30
31 import com.alibaba.fastjson.JSONObject;
32
33 import evel_javalibrary.att.com.AgentMain;
34 import evel_javalibrary.att.com.AgentMain.EVEL_ERR_CODES;
35 import evel_javalibrary.att.com.EvelFault;
36 import evel_javalibrary.att.com.EvelFault.EVEL_SEVERITIES;
37 import evel_javalibrary.att.com.EvelFault.EVEL_SOURCE_TYPES;
38 import evel_javalibrary.att.com.EvelFault.EVEL_VF_STATUSES;
39 import evel_javalibrary.att.com.EvelHeader;
40 import evel_javalibrary.att.com.EvelScalingMeasurement;
41
42 <span class="nc" id="L42">public class NorthMessageMgr extends DriverThread{</span>
43
44 <span class="nc" id="L44">      private MessageChannel alarmChannel = MessageChannelFactory.getMessageChannel(Constant.RESULT_CHANNEL_KEY);</span>
45 <span class="nc" id="L45">      private MessageChannel collectResultPMChannel = MessageChannelFactory.getMessageChannel(Constant.COLLECT_RESULT_PM_CHANNEL_KEY);</span>
46 <span class="nc" id="L46">      private MessageChannel collectResultChannel = MessageChannelFactory.getMessageChannel(Constant.COLLECT_RESULT_CHANNEL_KEY);</span>
47         private ConfigurationInterface configurationInterface ;
48         
49 <span class="nc" id="L49">      private boolean threadStop = false;</span>
50 <span class="nc" id="L50">      private Level level = Level.DEBUG;</span>
51         
52         @Override
53         public void dispose() {
54 <span class="nc" id="L54">              log.info(&quot;NorthMessageMgr Thread start threadStop=&quot;+threadStop);</span>
55                 try {
56 <span class="nc" id="L56">                      Properties properties = configurationInterface.getProperties();</span>
57 <span class="nc" id="L57">                      String event_api_url = properties.getProperty(&quot;event_api_url&quot;);</span>
58 <span class="nc" id="L58">                      String port = properties.getProperty(&quot;port&quot;);</span>
59 <span class="nc" id="L59">                      String path = properties.getProperty(&quot;path&quot;);</span>
60 <span class="nc" id="L60">                      String topic = properties.getProperty(&quot;topic&quot;);</span>
61 <span class="nc" id="L61">                      String username = properties.getProperty(&quot;username&quot;);</span>
62 <span class="nc" id="L62">                      String password = properties.getProperty(&quot;password&quot;);</span>
63 <span class="nc" id="L63">                      String levelStr = properties.getProperty(&quot;level&quot;);</span>
64 <span class="nc bnc" id="L64" title="All 2 branches missed.">                   if(&quot;debug&quot;.equals(levelStr)){</span>
65 <span class="nc" id="L65">                              level = Level.DEBUG;</span>
66                         }else{
67 <span class="nc" id="L67">                              level = Level.INFO;</span>
68                         }
69                         
70                         //login north 
71 <span class="nc" id="L71">                      event_api_url = &quot;http://&quot;+event_api_url;</span>
72 <span class="nc" id="L72">                      log.info(&quot;AgentMain.evel_initialize start event_api_url=[&quot;+event_api_url+&quot;]port=[&quot;+port+&quot;]path=[&quot;+path+&quot;]&quot;</span>
73                                         + &quot;topic=[&quot;+topic+&quot;]username=[&quot;+username+&quot;]password=[&quot;+password+&quot;]level=[&quot;+level+&quot;]&quot;);
74                         try{
75 <span class="nc" id="L75">                              EVEL_ERR_CODES evecode = AgentMain.evel_initialize(event_api_url, Integer.parseInt(port),</span>
76                                                 path,topic,
77                                                 username,
78                                                 password,
79                                                 level);
80 <span class="nc" id="L80">                              log.info(&quot;AgentMain.evel_initialize sucess EVEL_ERR_CODES=&quot;+evecode);</span>
81 <span class="nc" id="L81">                      } catch( Exception e ){</span>
82 <span class="nc" id="L82">                              log.error(&quot;AgentMain.evel_initialize fail &quot;,e);</span>
83 <span class="nc" id="L83">                      }catch( Error e1 ){</span>
84 <span class="nc" id="L84">                              log.error(&quot;AgentMain.evel_initialize Error &quot;,e1);</span>
85 <span class="nc" id="L85">                      }</span>
86 <span class="nc" id="L86">              } catch (Exception e2) {</span>
87 <span class="nc" id="L87">                      log.error(&quot;NorthMessageMgr start fail &quot;,e2);</span>
88 <span class="nc" id="L88">              }</span>
89                 
90 <span class="nc" id="L90">              new HeatBeatTread().start();</span>
91                 //
92 <span class="nc" id="L92">              new AlarmMessageRecv().start();</span>
93                 
94 <span class="nc" id="L94">              new ResultMessageRecv().start();</span>
95                 
96 <span class="nc" id="L96">              new CollectMessageRecv().start();</span>
97                 
98 <span class="nc" id="L98">              log.info(&quot;NorthMessageMgr start sucess &quot;);</span>
99 <span class="nc" id="L99">      }</span>
100         
101         
102 <span class="nc" id="L102">     class HeatBeatTread extends Thread{</span>
103                 
104                 public void run() {
105                         
106 <span class="nc bnc" id="L106" title="All 2 branches missed.">                  while(!threadStop){</span>
107                                 
108                                 try {
109 <span class="nc" id="L109">                                     EvelHeader header  = EvelHeader.evel_new_heartbeat(&quot;Hearbeat_EMS&quot;,&quot;EMS-driver&quot;);</span>
110 <span class="nc" id="L110">                         header.evel_nfnamingcode_set(&quot;EMS-driver&quot;);</span>
111 <span class="nc" id="L111">                         header.evel_nfcnamingcode_set(&quot;EMS-driver&quot;);</span>
112 <span class="nc" id="L112">                         AgentMain.evel_post_event(header);</span>
113 <span class="nc" id="L113">                         log.info(&quot;HeatBeat send!&quot;);</span>
114                             try {
115 <span class="nc" id="L115">                             Thread.sleep(60*1000);</span>
116 <span class="nc" id="L116">                         } catch( Exception e ){</span>
117 <span class="nc" id="L117">                              e.printStackTrace();</span>
118 <span class="nc" id="L118">                         }</span>
119 <span class="nc" id="L119">                             } catch (Exception e) {</span>
120 <span class="nc" id="L120">                                     log.error(&quot;HeatBeatTread exception&quot;,e);</span>
121 <span class="nc" id="L121">                             }</span>
122                         }
123 <span class="nc" id="L123">             }</span>
124         }
125         
126 <span class="nc" id="L126">     class AlarmMessageRecv extends Thread{</span>
127 <span class="nc" id="L127">             long timeStamp = System.currentTimeMillis();</span>
128                 
129                 public void run() {
130 <span class="nc bnc" id="L130" title="All 2 branches missed.">                  while(!threadStop){</span>
131                                 
132                                 try {
133 <span class="nc bnc" id="L133" title="All 2 branches missed.">                                  if(System.currentTimeMillis() - timeStamp &gt; Constant.ONEMINUTE){</span>
134 <span class="nc" id="L134">                                             timeStamp = System.currentTimeMillis();</span>
135                                                 
136 <span class="nc" id="L136">                                             log.info(&quot;ALARM_CHANNEL Msg size :&quot;+alarmChannel.size());</span>
137                                         }
138                                         
139 <span class="nc" id="L139">                                     Object obj = alarmChannel.poll();</span>
140 <span class="nc bnc" id="L140" title="All 2 branches missed.">                                  if(obj == null){</span>
141 <span class="nc" id="L141">                                             continue;</span>
142                                         }
143 <span class="nc bnc" id="L143" title="All 2 branches missed.">                                  if(obj instanceof String){</span>
144 <span class="nc" id="L144">                                             String result = (String)obj;</span>
145 <span class="nc" id="L145">                                             JSONObject reagobj = JSONObject.parseObject(result);</span>
146                                                 
147 <span class="nc" id="L147">                                             EvelFault evelFault = this.resultEvelFault(reagobj);</span>
148                                                 
149                                                 //send
150 <span class="nc" id="L150">                                             log.info(&quot;AgentMain.evel_post_event alarm start&quot;);</span>
151 <span class="nc" id="L151">                                             AgentMain.evel_post_event(evelFault);</span>
152 <span class="nc" id="L152">                                             log.info(&quot;AgentMain.evel_post_event alarm sucess&quot;);</span>
153 <span class="nc" id="L153">                                     }else{</span>
154 <span class="nc" id="L154">                                             log.error(&quot;AlarmMessageRecv receive Object = &quot;+obj);</span>
155                                         }
156                                         
157 <span class="nc" id="L157">                             } catch (Exception e) {</span>
158 <span class="nc" id="L158">                                     log.error(&quot;AlarmMessageRecv exception&quot;,e);</span>
159 <span class="nc" id="L159">                             }</span>
160                         }
161 <span class="nc" id="L161">             }</span>
162
163                 private EvelFault resultEvelFault(JSONObject reagobj) {
164                         
165 <span class="nc" id="L165">                     String eventName = null;</span>
166 <span class="nc" id="L166">                     EvelHeader.PRIORITIES pri = null;</span>
167 <span class="nc" id="L167">                     EVEL_SEVERITIES severity = null;</span>
168 <span class="nc" id="L168">                     EVEL_VF_STATUSES status = null;</span>
169 <span class="nc" id="L169">                     String alarmStatus = reagobj.getString(&quot;alarmStatus&quot;);</span>
170 <span class="nc" id="L170">                     String origSeverity = reagobj.getString(&quot;origSeverity&quot;);</span>
171 <span class="nc bnc" id="L171" title="All 2 branches missed.">                  if(&quot;0&quot;.equals(alarmStatus)){</span>
172 <span class="nc" id="L172">                             status = EVEL_VF_STATUSES.EVEL_VF_STATUS_IDLE;</span>
173 <span class="nc" id="L173">                             eventName = &quot;Fault_&quot;+reagobj.getString(&quot;neType&quot;)+&quot;_&quot;+reagobj.getString(&quot;alarmTitle&quot;)+&quot;Cleared&quot;;</span>
174                                 
175 <span class="nc bnc" id="L175" title="All 2 branches missed.">                          if(&quot;1&quot;.equals(origSeverity)){</span>
176 <span class="nc" id="L176">                                     severity = EVEL_SEVERITIES.EVEL_SEVERITY_CRITICAL;</span>
177 <span class="nc" id="L177">                                     pri = EvelHeader.PRIORITIES.EVEL_PRIORITY_HIGH;</span>
178 <span class="nc bnc" id="L178" title="All 2 branches missed.">                          }else if(&quot;2&quot;.equals(origSeverity)){</span>
179 <span class="nc" id="L179">                                     severity = EVEL_SEVERITIES.EVEL_SEVERITY_MAJOR;</span>
180 <span class="nc" id="L180">                                     pri = EvelHeader.PRIORITIES.EVEL_PRIORITY_MEDIUM;</span>
181 <span class="nc bnc" id="L181" title="All 2 branches missed.">                          }else if(&quot;3&quot;.equals(origSeverity)){</span>
182 <span class="nc" id="L182">                                     severity = EVEL_SEVERITIES.EVEL_SEVERITY_MINOR;</span>
183 <span class="nc" id="L183">                                     pri = EvelHeader.PRIORITIES.EVEL_PRIORITY_NORMAL;</span>
184 <span class="nc bnc" id="L184" title="All 2 branches missed.">                          }else if(&quot;4&quot;.equals(origSeverity)){</span>
185 <span class="nc" id="L185">                                     severity = EVEL_SEVERITIES.EVEL_SEVERITY_WARNING;</span>
186 <span class="nc" id="L186">                                     pri = EvelHeader.PRIORITIES.EVEL_PRIORITY_LOW;</span>
187                                         
188                                 }
189                         }else{
190 <span class="nc" id="L190">                             status = EVEL_VF_STATUSES.EVEL_VF_STATUS_ACTIVE;</span>
191 <span class="nc" id="L191">                             eventName = &quot;Fault_&quot;+reagobj.getString(&quot;neType&quot;)+&quot;_&quot;+reagobj.getString(&quot;alarmTitle&quot;);</span>
192 <span class="nc" id="L192">                             pri = EvelHeader.PRIORITIES.EVEL_PRIORITY_NORMAL;</span>
193 <span class="nc" id="L193">                             severity = EVEL_SEVERITIES.EVEL_SEVERITY_NORMAL;</span>
194                         }
195                         
196 <span class="nc" id="L196">                     String evnId = reagobj.getString(&quot;alarmId&quot;);</span>
197 <span class="nc" id="L197">                     String alarmCondition = reagobj.getString(&quot;specificProblem&quot;);</span>
198                         
199 <span class="nc" id="L199">                     String specificProblem = reagobj.getString(&quot;specificProblem&quot;);</span>
200                         
201 <span class="nc" id="L201">                     EvelFault flt  = new EvelFault(eventName, evnId,alarmCondition, </span>
202                                         specificProblem,pri,severity,
203                                         EVEL_SOURCE_TYPES.EVEL_SOURCE_VIRTUAL_NETWORK_FUNCTION,
204                                         status);
205 <span class="nc" id="L205">                      flt.evel_nfcnamingcode_set(&quot;&quot;);</span>
206 <span class="nc" id="L206">                      flt.evel_nfnamingcode_set(&quot;&quot;);</span>
207 <span class="nc" id="L207">                      flt.evel_header_type_set(&quot;applicationVnf&quot;);</span>
208 <span class="nc" id="L208">                      String eventTime = reagobj.getString(&quot;eventTime&quot;);</span>
209 <span class="nc" id="L209">                      SimpleDateFormat format = new SimpleDateFormat(&quot;yyyy-MM-dd HH:mm:ss&quot;);</span>
210 <span class="nc" id="L210">                      Date eventTimeD = new Date();</span>
211                          try {
212 <span class="nc" id="L212">                             eventTimeD = format.parse(eventTime);</span>
213 <span class="nc" id="L213">                      } catch (ParseException e) {</span>
214                                 // TODO Auto-generated catch block
215 <span class="nc" id="L215">                             e.printStackTrace();</span>
216 <span class="nc" id="L216">                      }</span>
217 <span class="nc" id="L217">                      flt.evel_start_epoch_set(eventTimeD.getTime());</span>
218 <span class="nc" id="L218">                      flt.evel_last_epoch_set(eventTimeD.getTime());</span>
219                          
220 <span class="nc" id="L220">                      flt.evel_fault_category_set(reagobj.getString(&quot;alarmType&quot;));</span>
221 <span class="nc" id="L221">                      flt.evel_fault_interface_set(reagobj.getString(&quot;objectName&quot;));</span>
222 <span class="nc" id="L222">                      String neUID = reagobj.getString(&quot;neUID&quot;);</span>
223 <span class="nc" id="L223">                      flt.evel_reporting_entity_id_set(neUID.substring(0,9));//</span>
224 <span class="nc" id="L224">                      flt.evel_reporting_entity_name_set(neUID.substring(0,9));</span>
225 <span class="nc" id="L225">                      flt.evel_header_set_sourceid(true, reagobj.getString(&quot;neName&quot;));</span>
226 <span class="nc" id="L226">                      flt.evel_header_set_source_name(reagobj.getString(&quot;objectName&quot;));</span>
227                          
228 <span class="nc" id="L228">                      flt.evel_header_set_priority(pri);</span>
229 <span class="nc bnc" id="L229" title="All 2 branches missed.">                   for(String key : reagobj.keySet()){</span>
230 <span class="nc" id="L230">                              flt.evel_fault_addl_info_add(key, reagobj.getString(key));</span>
231 <span class="nc" id="L231">                      }</span>
232              
233 <span class="nc" id="L233">             return flt;</span>
234                 }
235         }
236
237 <span class="nc" id="L237">     class ResultMessageRecv extends Thread{</span>
238 <span class="nc" id="L238">             long timeStamp = System.currentTimeMillis();</span>
239                 
240                 public void run() {
241 <span class="nc bnc" id="L241" title="All 2 branches missed.">                  while(!threadStop){</span>
242                                 
243                                 try {
244 <span class="nc bnc" id="L244" title="All 2 branches missed.">                                  if(System.currentTimeMillis() - timeStamp &gt; Constant.ONEMINUTE){</span>
245 <span class="nc" id="L245">                                             timeStamp = System.currentTimeMillis();</span>
246                                                 
247 <span class="nc" id="L247">                                             log.debug(&quot;COLLECT_RESULT_CHANNEL Msg size :&quot;+collectResultChannel.size());</span>
248                                         }
249                                         
250 <span class="nc" id="L250">                                     Object obj = collectResultChannel.poll();</span>
251 <span class="nc bnc" id="L251" title="All 2 branches missed.">                                  if(obj == null){</span>
252 <span class="nc" id="L252">                                             continue;</span>
253                                         }
254 <span class="nc bnc" id="L254" title="All 2 branches missed.">                                  if(obj instanceof String){</span>
255                                                 //http
256 <span class="nc" id="L256">                                             Properties properties = configurationInterface.getProperties();</span>
257 <span class="nc" id="L257">                                             String msbAddress = properties.getProperty(&quot;msbAddress&quot;);</span>
258 <span class="nc" id="L258">                                             String url = properties.getProperty(&quot;dataNotifyUrl&quot;);</span>
259 <span class="nc" id="L259">                                             String postUrl = &quot;http://&quot;+msbAddress+url;</span>
260 <span class="nc" id="L260">                                             HttpClientUtil.doPost(postUrl, (String)obj, Constant.ENCODING_UTF8);</span>
261                                         }
262                                         
263 <span class="nc" id="L263">                             } catch (Exception e) {</span>
264 <span class="nc" id="L264">                                     log.error(&quot;ResultMessageRecv exception&quot;,e);</span>
265 <span class="nc" id="L265">                             }</span>
266                         }
267 <span class="nc" id="L267">             }</span>
268         }
269         
270 <span class="nc" id="L270">     class CollectMessageRecv extends Thread{</span>
271 <span class="nc" id="L271">             long timeStamp = System.currentTimeMillis();</span>
272                 
273                 public void run() {
274 <span class="nc" id="L274">                     log.info(&quot;CollectMessageRecv Thread is start threadStop=&quot;+threadStop);</span>
275 <span class="nc bnc" id="L275" title="All 2 branches missed.">                  while(!threadStop){</span>
276                                 
277                                 try {
278 <span class="nc bnc" id="L278" title="All 2 branches missed.">                                  if(System.currentTimeMillis() - timeStamp &gt; Constant.ONEMINUTE){</span>
279 <span class="nc" id="L279">                                             timeStamp = System.currentTimeMillis();</span>
280                                                 
281 <span class="nc" id="L281">                                             log.debug(Constant.COLLECT_RESULT_PM_CHANNEL_KEY+&quot; Msg size :&quot;+collectResultPMChannel.size());</span>
282                                         }
283                                         
284 <span class="nc" id="L284">                                     Object obj = collectResultPMChannel.poll();</span>
285 <span class="nc bnc" id="L285" title="All 2 branches missed.">                                  if(obj == null){</span>
286 <span class="nc" id="L286">                                             continue;</span>
287                                         }
288 <span class="nc bnc" id="L288" title="All 2 branches missed.">                                  if(obj instanceof Map){</span>
289                                                 @SuppressWarnings(&quot;unchecked&quot;)
290 <span class="nc" id="L290">                                             Map&lt;String,String&gt; reMap = (Map&lt;String,String&gt;)obj;</span>
291 <span class="nc" id="L291">                                             log.debug(&quot;reMap =&quot;+reMap);</span>
292 <span class="nc" id="L292">                                             EvelScalingMeasurement evelScalingMeasurement = this.resultEvelScalingMeasurement(reMap);</span>
293 <span class="nc" id="L293">                                             log.debug(&quot;evelScalingMeasurement=&quot;+evelScalingMeasurement);</span>
294                                                 //send
295 <span class="nc" id="L295">                                             log.info(&quot;AgentMain.evel_post_event start&quot;);</span>
296 <span class="nc" id="L296">                                             AgentMain.evel_post_event(evelScalingMeasurement);</span>
297 <span class="nc" id="L297">                                             log.info(&quot;AgentMain.evel_post_event sucess&quot;);</span>
298                                                 
299 <span class="nc" id="L299">                                     }else{</span>
300 <span class="nc" id="L300">                                             log.error(&quot;CollectMessageRecv receive Object = &quot;+obj);</span>
301                                         }
302                                         
303 <span class="nc" id="L303">                             } catch (Exception e) {</span>
304 <span class="nc" id="L304">                                     log.error(&quot;CollectMessageRecv exception&quot;,e);</span>
305 <span class="nc" id="L305">                             }catch (Error e) {</span>
306 <span class="nc" id="L306">                                     log.error(&quot;CollectMessageRecv Error&quot;,e);</span>
307 <span class="nc" id="L307">                             }</span>
308                         }
309 <span class="nc" id="L309">             }</span>
310
311                 private EvelScalingMeasurement resultEvelScalingMeasurement(Map&lt;String,String&gt; reMap) {
312 <span class="nc" id="L312">                     String evname = &quot;Mfvs_&quot;+reMap.get(&quot;ElementType&quot;)+reMap.get(&quot;ObjectType&quot;);</span>
313 <span class="nc" id="L313">                     String evid = reMap.get(&quot;StartTime&quot;)+reMap.get(&quot;ObjectType&quot;)+reMap.get(&quot;rmUID&quot;);</span>
314 <span class="nc bnc" id="L314" title="All 2 branches missed.">                  int Period = Integer.parseInt(reMap.get(&quot;Period&quot;)!=null?reMap.get(&quot;Period&quot;):&quot;15&quot;);</span>
315 <span class="nc" id="L315">                     EvelScalingMeasurement sm  = new EvelScalingMeasurement(Period,evname, evid);</span>
316
317 <span class="nc bnc" id="L317" title="All 2 branches missed.">                          for(String key : reMap.keySet()){</span>
318 <span class="nc" id="L318">                             sm.evel_measurement_custom_measurement_add(reMap.get(&quot;ElementType&quot;), key, reMap.get(key));</span>
319                                 
320 <span class="nc" id="L320">                     }</span>
321                         
322 <span class="nc" id="L322">                     sm.evel_nfcnamingcode_set(&quot;&quot;);</span>
323 <span class="nc" id="L323">                     sm.evel_nfnamingcode_set(&quot;&quot;);</span>
324 <span class="nc" id="L324">                     sm.evel_header_type_set(&quot;applicationVnf&quot;);</span>
325 <span class="nc" id="L325">                     String rmUID = reMap.get(&quot;rmUID&quot;);</span>
326 <span class="nc" id="L326">                     sm.evel_reporting_entity_id_set(rmUID.substring(0,9));//</span>
327 <span class="nc" id="L327">                     String Dn = reMap.get(&quot;Dn&quot;);</span>
328 <span class="nc bnc" id="L328" title="All 2 branches missed.">                  if(Dn!=null)</span>
329 <span class="nc bnc" id="L329" title="All 4 branches missed.">                          sm.evel_reporting_entity_name_set(Dn.substring(0, Dn != null &amp;&amp; Dn.indexOf(&quot;;&quot;)&gt;0?Dn.indexOf(&quot;;&quot;):Dn.length()));</span>
330                         else
331                         {
332                           // decide the flow if Dn is null
333
334                         }
335 <span class="nc" id="L335">                     sm.evel_header_set_sourceid(true, reMap.get(&quot;rmUID&quot;));</span>
336 <span class="nc" id="L336">                     sm.evel_header_set_source_name(reMap.get(&quot;rmUID&quot;));</span>
337                          
338 <span class="nc" id="L338">                     sm.evel_header_set_priority(EvelHeader.PRIORITIES.EVEL_PRIORITY_NORMAL);</span>
339 <span class="nc" id="L339">           return sm;</span>
340                 }
341         }
342
343         /**
344          * @return the configurationInterface
345          */
346         public ConfigurationInterface getConfigurationInterface() {
347 <span class="nc" id="L347">             return configurationInterface;</span>
348         }
349
350         /**
351          * @param configurationInterface the configurationInterface to set
352          */
353         public void setConfigurationInterface(
354                         ConfigurationInterface configurationInterface) {
355 <span class="nc" id="L355">             this.configurationInterface = configurationInterface;</span>
356 <span class="nc" id="L356">     }</span>
357         
358 }
359 </pre><div class="footer"><span class="right">Created with <a href="http://www.eclemma.org/jacoco">JaCoCo</a> 0.7.7.201606060606</span></div></body></html>