aboutsummaryrefslogtreecommitdiff
path: root/parsers/parser.go
diff options
context:
space:
mode:
authorEmiliano Ciavatta2020-09-16 15:57:23 +0000
committerEmiliano Ciavatta2020-09-16 15:57:23 +0000
commit7907dd6fa6702f79d1be9ef8e483fa5533869eb7 (patch)
tree4fda7da525d7a224797c8a0997b426d25201bdd8 /parsers/parser.go
parent53301d30b56e5c328baf73d3bc512dc3170e49ea (diff)
parenta77f2f97f1df204c663119fe8ccafb6f274cb634 (diff)
Merge branch 'develop' into feature/frontend
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
+}