Update License text
[demo.git] / vnfs / VES5.0 / evel / evel-library / code / evel_library / evel_scaling_measurement.c
index 2ad5e66..b73eb97 100644 (file)
@@ -1,38 +1,25 @@
+/*************************************************************************//**
+ *
+ * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+ *
+ * Unless otherwise specified, all software contained herein is
+ * Licensed 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
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License 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.
+ * ECOMP is a trademark and service mark of AT&T Intellectual Property.
+ ****************************************************************************/
 /**************************************************************************//**
  * @file
  * Implementation of EVEL functions relating to the Measurement.
  *
- * License
- * -------
- *
- * Copyright(c) <2016>, AT&T Intellectual Property.  All other rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *
- * 1. Redistributions of source code must retain the above copyright notice,
- *    this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright notice,
- *    this list of conditions and the following disclaimer in the documentation
- *    and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:  This product includes
- *    software developed by the AT&T.
- * 4. Neither the name of AT&T nor the names of its contributors may be used to
- *    endorse or promote products derived from this software without specific
- *    prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY AT&T INTELLECTUAL PROPERTY ''AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL AT&T INTELLECTUAL PROPERTY BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
- * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *****************************************************************************/
+ ****************************************************************************/
 
 #include <string.h>
 #include <assert.h>
  *          that the Measurement has immutable properties.
  *
  * @param   measurement_interval
+ * @param event_name  Unique Event Name confirming Domain AsdcModel Description
+ * @param event_id    A universal identifier of the event for: troubleshooting correlation, analysis, etc
  *
  * @returns pointer to the newly manufactured ::EVENT_MEASUREMENT.  If the
  *          event is not used (i.e. posted) it must be released using
  *          ::evel_free_event.
  * @retval  NULL  Failed to create the event.
  *****************************************************************************/
-EVENT_MEASUREMENT * evel_new_measurement(double measurement_interval)
+EVENT_MEASUREMENT * evel_new_measurement(double measurement_interval, const char* ev_name, const char *ev_id)
 {
   EVENT_MEASUREMENT * measurement = NULL;
 
@@ -83,7 +72,7 @@ EVENT_MEASUREMENT * evel_new_measurement(double measurement_interval)
   /***************************************************************************/
   /* Initialize the header & the measurement fields.                         */
   /***************************************************************************/
-  evel_init_header(&measurement->header,"vnfScalingMeasurement");
+  evel_init_header_nameid(&measurement->header,ev_name,ev_id);
   measurement->header.event_domain = EVEL_DOMAIN_MEASUREMENT;
   measurement->measurement_interval = measurement_interval;
   dlist_initialize(&measurement->additional_info);
@@ -1545,10 +1534,10 @@ void evel_measurement_fsys_use_add(EVENT_MEASUREMENT * measurement,
                                    char * filesystem_name,
                                    double block_configured,
                                    double block_used,
-                                   int block_iops,
+                                   double block_iops,
                                    double ephemeral_configured,
                                    double ephemeral_used,
-                                   int ephemeral_iops)
+                                   double ephemeral_iops)
 {
   MEASUREMENT_FSYS_USE * fsys_use = NULL;
   EVEL_ENTER();
@@ -1561,10 +1550,10 @@ void evel_measurement_fsys_use_add(EVENT_MEASUREMENT * measurement,
   assert(filesystem_name != NULL);
   assert(block_configured >= 0.0);
   assert(block_used >= 0.0);
-  assert(block_iops >= 0);
+  assert(block_iops >= 0.0);
   assert(ephemeral_configured >= 0.0);
   assert(ephemeral_used >= 0.0);
-  assert(ephemeral_iops >= 0);
+  assert(ephemeral_iops >= 0.0);
 
   /***************************************************************************/
   /* Allocate a container for the value and push onto the list.              */
@@ -1577,7 +1566,7 @@ void evel_measurement_fsys_use_add(EVENT_MEASUREMENT * measurement,
   fsys_use->block_configured = block_configured;
   fsys_use->block_used = block_used;
   fsys_use->block_iops = block_iops;
-  fsys_use->ephemeral_configured = block_configured;
+  fsys_use->ephemeral_configured = ephemeral_configured;
   fsys_use->ephemeral_used = ephemeral_used;
   fsys_use->ephemeral_iops = ephemeral_iops;
 
@@ -3215,15 +3204,15 @@ void evel_json_encode_measurement(EVEL_JSON_BUFFER * jbuf,
                                           fsys_use->filesystem_name))
       {
         evel_json_open_object(jbuf);
+        evel_enc_kv_string(jbuf, "filesystemName", fsys_use->filesystem_name);
         evel_enc_kv_double(
           jbuf, "blockConfigured", fsys_use->block_configured);
-        evel_enc_kv_int(jbuf, "blockIops", fsys_use->block_iops);
+        evel_enc_kv_double(jbuf, "blockIops", fsys_use->block_iops);
         evel_enc_kv_double(jbuf, "blockUsed", fsys_use->block_used);
         evel_enc_kv_double(
           jbuf, "ephemeralConfigured", fsys_use->ephemeral_configured);
-        evel_enc_kv_int(jbuf, "ephemeralIops", fsys_use->ephemeral_iops);
+        evel_enc_kv_double(jbuf, "ephemeralIops", fsys_use->ephemeral_iops);
         evel_enc_kv_double(jbuf, "ephemeralUsed", fsys_use->ephemeral_used);
-        evel_enc_kv_string(jbuf, "filesystemName", fsys_use->filesystem_name);
         evel_json_close_object(jbuf);
         item_added = true;
       }
@@ -3530,7 +3519,7 @@ void evel_json_encode_measurement(EVEL_JSON_BUFFER * jbuf,
       {
         evel_json_open_object(jbuf);
         evel_enc_kv_string(jbuf, "name", measurement_group->name);
-        evel_json_open_opt_named_list(jbuf, "measurements");
+        evel_json_open_opt_named_list(jbuf, "arrayOfFields");
 
         /*********************************************************************/
         /* Measurements list.                                                */
@@ -3725,3 +3714,4 @@ void evel_free_measurement(EVENT_MEASUREMENT * event)
 
   EVEL_EXIT();
 }
+