aboutsummaryrefslogtreecommitdiff
path: root/parsers/parser.go
diff options
context:
space:
mode:
authorEmiliano Ciavatta2020-09-16 15:56:19 +0000
committerEmiliano Ciavatta2020-09-16 15:56:19 +0000
commita77f2f97f1df204c663119fe8ccafb6f274cb634 (patch)
tree294d839017dbf67d85a2501e9a0570e87602e30a /parsers/parser.go
parent991d3b6c91d9fe3046ec94a3716a7dd21f496feb (diff)
parentdfd6d543074b4a30c2fc990063ca69ebf8a734e1 (diff)
Merge branch 'feature/decode-gzip' into develop
Diffstat (limited to 'parsers/parser.go')
-rw-r--r--parsers/parser.go28
1 files changed, 28 insertions, 0 deletions
diff --git a/parsers/parser.go b/parsers/parser.go
new file mode 100644
index 0000000..06cc0dc
--- /dev/null
+++ b/parsers/parser.go
@@ -0,0 +1,28 @@
+package parsers
+
+type Parser interface {
+ TryParse(content []byte) Metadata
+
+}
+
+type Metadata interface {
+}
+
+type BasicMetadata struct {
+ Type string `json:"type"`
+}
+
+var parsers = []Parser{ // order matter
+ HttpRequestParser{},
+ HttpResponseParser{},
+}
+
+func Parse(content []byte) Metadata {
+ for _, parser := range parsers {
+ if metadata := parser.TryParse(content); metadata != nil {
+ return metadata
+ }
+ }
+
+ return nil
+}