You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@metron.apache.org by ly...@apache.org on 2016/07/27 18:00:55 UTC
incubator-metron git commit: METRON-284 SensorParserConfig object
cannot be serialized with the default Jackson ObjectMapper (cestella via
dlyle65535) closes apache/incubator-metron#184
Repository: incubator-metron
Updated Branches:
refs/heads/master 63209e7e3 -> b0423073c
METRON-284 SensorParserConfig object cannot be serialized with the default Jackson ObjectMapper (cestella via dlyle65535) closes apache/incubator-metron#184
Project: http://git-wip-us.apache.org/repos/asf/incubator-metron/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-metron/commit/b0423073
Tree: http://git-wip-us.apache.org/repos/asf/incubator-metron/tree/b0423073
Diff: http://git-wip-us.apache.org/repos/asf/incubator-metron/diff/b0423073
Branch: refs/heads/master
Commit: b0423073c5fed7c32be2e3943a940b0260d267f4
Parents: 63209e7
Author: cestella <ce...@gmail.com>
Authored: Wed Jul 27 14:00:25 2016 -0400
Committer: David Lyle <dl...@gmail.com>
Committed: Wed Jul 27 14:00:25 2016 -0400
----------------------------------------------------------------------
.../common/configuration/FieldTransformer.java | 10 ++++-
.../SensorEnrichmentConfigTest.java | 17 ++++++++
.../configuration/SensorParserConfigTest.java | 41 ++++++++++++++++++++
.../transformation/FieldTransformationTest.java | 2 +-
4 files changed, 68 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-metron/blob/b0423073/metron-platform/metron-common/src/main/java/org/apache/metron/common/configuration/FieldTransformer.java
----------------------------------------------------------------------
diff --git a/metron-platform/metron-common/src/main/java/org/apache/metron/common/configuration/FieldTransformer.java b/metron-platform/metron-common/src/main/java/org/apache/metron/common/configuration/FieldTransformer.java
index 6948a92..4e34e04 100644
--- a/metron-platform/metron-common/src/main/java/org/apache/metron/common/configuration/FieldTransformer.java
+++ b/metron-platform/metron-common/src/main/java/org/apache/metron/common/configuration/FieldTransformer.java
@@ -18,6 +18,7 @@
package org.apache.metron.common.configuration;
+import com.fasterxml.jackson.annotation.JsonIgnore;
import com.google.common.collect.ImmutableList;
import org.apache.metron.common.field.transformation.FieldTransformation;
import org.apache.metron.common.field.transformation.FieldTransformations;
@@ -33,6 +34,7 @@ public class FieldTransformer implements Serializable {
private List<String> input = new ArrayList<>();
private List<String> output;
private FieldTransformation transformation;
+ private String transformationName;
private Map<String, Object> config = new HashMap<>();
private boolean initialized = false;
public FieldTransformer() {
@@ -72,11 +74,17 @@ public class FieldTransformer implements Serializable {
this.config = config;
}
- public FieldTransformation getTransformation() {
+ public String getTransformation() {
+ return transformationName;
+ }
+
+ @JsonIgnore
+ public FieldTransformation getFieldTransformation() {
return transformation;
}
public void setTransformation(String transformation) {
+ this.transformationName = transformation;
this.transformation = FieldTransformations.get(transformation);
}
http://git-wip-us.apache.org/repos/asf/incubator-metron/blob/b0423073/metron-platform/metron-common/src/test/java/org/apache/metron/common/configuration/SensorEnrichmentConfigTest.java
----------------------------------------------------------------------
diff --git a/metron-platform/metron-common/src/test/java/org/apache/metron/common/configuration/SensorEnrichmentConfigTest.java b/metron-platform/metron-common/src/test/java/org/apache/metron/common/configuration/SensorEnrichmentConfigTest.java
index dbf894b..305182b 100644
--- a/metron-platform/metron-common/src/test/java/org/apache/metron/common/configuration/SensorEnrichmentConfigTest.java
+++ b/metron-platform/metron-common/src/test/java/org/apache/metron/common/configuration/SensorEnrichmentConfigTest.java
@@ -20,10 +20,14 @@ package org.apache.metron.common.configuration;
import junit.framework.Assert;
import nl.jqno.equalsverifier.EqualsVerifier;
import nl.jqno.equalsverifier.Warning;
+import org.apache.commons.io.IOUtils;
import org.apache.metron.TestConstants;
import org.apache.metron.common.configuration.enrichment.SensorEnrichmentConfig;
import org.junit.Test;
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileReader;
import java.io.IOException;
import java.util.Map;
@@ -38,4 +42,17 @@ public class SensorEnrichmentConfigTest {
Assert.assertNotNull(sensorEnrichmentConfig);
Assert.assertTrue(sensorEnrichmentConfig.toString() != null && sensorEnrichmentConfig.toString().length() > 0);
}
+
+ @Test
+ public void testSerDe() throws IOException {
+ for(File enrichmentConfig : new File(new File(TestConstants.ENRICHMENTS_CONFIGS_PATH), "enrichments").listFiles()) {
+ SensorEnrichmentConfig config = null;
+ try (BufferedReader br = new BufferedReader(new FileReader(enrichmentConfig))) {
+ String parserStr = IOUtils.toString(br);
+ config = SensorEnrichmentConfig.fromBytes(parserStr.getBytes());
+ }
+ SensorEnrichmentConfig config2 = SensorEnrichmentConfig.fromBytes(config.toJSON().getBytes());
+ Assert.assertEquals(config2, config);
+ }
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-metron/blob/b0423073/metron-platform/metron-common/src/test/java/org/apache/metron/common/configuration/SensorParserConfigTest.java
----------------------------------------------------------------------
diff --git a/metron-platform/metron-common/src/test/java/org/apache/metron/common/configuration/SensorParserConfigTest.java b/metron-platform/metron-common/src/test/java/org/apache/metron/common/configuration/SensorParserConfigTest.java
new file mode 100644
index 0000000..fe69ed9
--- /dev/null
+++ b/metron-platform/metron-common/src/test/java/org/apache/metron/common/configuration/SensorParserConfigTest.java
@@ -0,0 +1,41 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ */
+package org.apache.metron.common.configuration;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.metron.TestConstants;
+import org.junit.Assert;
+import org.junit.Test;
+
+import java.io.*;
+
+public class SensorParserConfigTest {
+
+ @Test
+ public void testSerDe() throws IOException {
+ for(File parserConfig : new File(new File(TestConstants.PARSER_CONFIGS_PATH), "parsers").listFiles()) {
+ SensorParserConfig config = null;
+ try (BufferedReader br = new BufferedReader(new FileReader(parserConfig))) {
+ String parserStr = IOUtils.toString(br);
+ config = SensorParserConfig.fromBytes(parserStr.getBytes());
+ }
+ SensorParserConfig config2 = SensorParserConfig.fromBytes(config.toJSON().getBytes());
+ Assert.assertEquals(config2, config);
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-metron/blob/b0423073/metron-platform/metron-common/src/test/java/org/apache/metron/common/field/transformation/FieldTransformationTest.java
----------------------------------------------------------------------
diff --git a/metron-platform/metron-common/src/test/java/org/apache/metron/common/field/transformation/FieldTransformationTest.java b/metron-platform/metron-common/src/test/java/org/apache/metron/common/field/transformation/FieldTransformationTest.java
index 4f0319a..fe87c55 100644
--- a/metron-platform/metron-common/src/test/java/org/apache/metron/common/field/transformation/FieldTransformationTest.java
+++ b/metron-platform/metron-common/src/test/java/org/apache/metron/common/field/transformation/FieldTransformationTest.java
@@ -106,7 +106,7 @@ public class FieldTransformationTest {
public void testValidSerde_simple() throws IOException {
SensorParserConfig c = SensorParserConfig.fromBytes(Bytes.toBytes(config));
Assert.assertEquals(1, c.getFieldTransformations().size());
- Assert.assertEquals(IPProtocolTransformation.class, c.getFieldTransformations().get(0).getTransformation().getClass());
+ Assert.assertEquals(IPProtocolTransformation.class, c.getFieldTransformations().get(0).getFieldTransformation().getClass());
Assert.assertEquals(ImmutableList.of("protocol"), c.getFieldTransformations().get(0).getInput());
}