File 0001-Bugfix-Parse-value_meta-information.patch of Package openstack-monasca-persister-java

From 23d046761425897772e866ceb1e40c5c91e5b464 Mon Sep 17 00:00:00 2001
From: Kamil Choroba <kamil.choroba@est.fujitsu.com>
Date: Mon, 8 May 2017 14:58:26 +0200
Subject: [PATCH] Bugfix: Parse value_meta information

This fix refactores the value_meta information
that the influxdb is able to work with.

Change-Id: I4e5c8e860fcaf9f3b707877a01d041b64afa8f92
---
 .../monasca/persister/repository/influxdb/InfluxV9MetricRepo.java | 2 +-
 .../java/monasca/persister/repository/influxdb/Measurement.java   | 8 +++++---
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/java/src/main/java/monasca/persister/repository/influxdb/InfluxV9MetricRepo.java b/java/src/main/java/monasca/persister/repository/influxdb/InfluxV9MetricRepo.java
index 74e058f..b4ba9d0 100644
--- a/java/src/main/java/monasca/persister/repository/influxdb/InfluxV9MetricRepo.java
+++ b/java/src/main/java/monasca/persister/repository/influxdb/InfluxV9MetricRepo.java
@@ -103,7 +103,7 @@ public class InfluxV9MetricRepo extends InfluxMetricRepo {
     } else {
 
       valueMap.put("value_meta",
-          new StringBuilder().append('"').append(valueMetaJSONString).append('"').toString());
+              new StringBuilder().append("\"").append(valueMetaJSONString).append("\""));
 
     }
 
diff --git a/java/src/main/java/monasca/persister/repository/influxdb/Measurement.java b/java/src/main/java/monasca/persister/repository/influxdb/Measurement.java
index db8c65b..5b03b41 100644
--- a/java/src/main/java/monasca/persister/repository/influxdb/Measurement.java
+++ b/java/src/main/java/monasca/persister/repository/influxdb/Measurement.java
@@ -17,6 +17,7 @@ package monasca.persister.repository.influxdb;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
 
+import org.apache.commons.lang3.StringEscapeUtils;
 import org.joda.time.DateTime;
 import org.joda.time.DateTimeZone;
 import org.joda.time.format.DateTimeFormatter;
@@ -76,12 +77,13 @@ public final class Measurement {
     if (!this.valueMeta.isEmpty()) {
 
       try {
-
-        return objectMapper.writeValueAsString(this.valueMeta);
+        return StringEscapeUtils.escapeJson(
+                objectMapper.writeValueAsString(this.valueMeta));
 
       } catch (JsonProcessingException e) {
 
-        logger.error("Failed to serialize value meta {}", this.valueMeta, e);
+        logger.error("Failed to serialize value meta {}",
+                this.valueMeta, e);
 
       }
 
-- 
2.12.2

openSUSE Build Service is sponsored by