Created
August 17, 2020 20:34
-
-
Save refs/732af137bf5ff492b673f37fd8ee433d to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/go.mod b/go.mod | |
index bb61c09..d3a63d1 100644 | |
--- a/go.mod | |
+++ b/go.mod | |
@@ -6,6 +6,7 @@ require ( | |
contrib.go.opencensus.io/exporter/jaeger v0.2.1 | |
contrib.go.opencensus.io/exporter/ocagent v0.6.0 | |
contrib.go.opencensus.io/exporter/zipkin v0.1.1 | |
+ github.com/UnnoTed/fileb0x v1.1.4 // indirect | |
github.com/go-chi/chi v4.1.2+incompatible | |
github.com/micro/cli/v2 v2.1.2 | |
github.com/oklog/run v1.0.0 | |
@@ -16,4 +17,4 @@ require ( | |
golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2 | |
) | |
-replace google.golang.org/grpc => google.golang.org/grpc v1.26.0 | |
+replace google.golang.org/grpc => google.golang.org/grpc v1.26.0 | |
\ No newline at end of file | |
diff --git a/go.sum b/go.sum | |
index d39dab0..8b42111 100644 | |
--- a/go.sum | |
+++ b/go.sum | |
@@ -68,6 +68,8 @@ github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAE | |
github.com/OpenDNS/vegadns2client v0.0.0-20180418235048-a3fa4a771d87/go.mod h1:iGLljf5n9GjT6kc0HBvyI1nOKnGQbNB66VzSNbK5iks= | |
github.com/Shopify/sarama v1.19.0/go.mod h1:FVkBWblsNy7DGZRfXLU0O9RCGt5g3g3yEuWXgklEdEo= | |
github.com/Shopify/toxiproxy v2.1.4+incompatible/go.mod h1:OXgGpZ6Cli1/URJOF1DMxUHB2q5Ap20/P/eIdh4G0pI= | |
+github.com/UnnoTed/fileb0x v1.1.4 h1:IUgFzgBipF/ujNx9wZgkrKOF3oltUuXMSoaejrBws+A= | |
+github.com/UnnoTed/fileb0x v1.1.4/go.mod h1:X59xXT18tdNk/D6j+KZySratBsuKJauMtVuJ9cgOiZs= | |
github.com/ajg/form v0.0.0-20160822230020-523a5da1a92f/go.mod h1:uL1WgH+h2mgNtvBq0339dVnzXdBETtL2LeUXaIv25UY= | |
github.com/akamai/AkamaiOPEN-edgegrid-golang v0.9.0/go.mod h1:zpDJeKyp9ScW4NNrbdr+Eyxvry3ilGPewKoXw3XGN1k= | |
github.com/alangpierce/go-forceexport v0.0.0-20160317203124-8f1d6941cd75/go.mod h1:uAXEEpARkRhCZfEvy/y0Jcc888f9tHCc1W7/UeEtreE= | |
@@ -102,6 +104,8 @@ github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6r | |
github.com/bitly/go-simplejson v0.5.0 h1:6IH+V8/tVMab511d5bn4M7EwGXZf9Hj6i2xSwkNEM+Y= | |
github.com/bitly/go-simplejson v0.5.0/go.mod h1:cXHtHw4XUPsvGaxgjIAn8PhEWG9NfngEKAMDJEczWVA= | |
github.com/blang/semver v3.1.0+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= | |
+github.com/bmatcuk/doublestar v1.1.1 h1:YroD6BJCZBYx06yYFEWvUuKVWQn3vLLQAVmDmvTSaiQ= | |
+github.com/bmatcuk/doublestar v1.1.1/go.mod h1:UD6OnuiIn0yFxxA2le/rnRU1G4RaI4UvFv1sNto9p6w= | |
github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869 h1:DDGfHa7BWjL4YnC6+E63dPcxHo2sUxDIu8g3QgEJdRY= | |
github.com/bmizerany/assert v0.0.0-20160611221934-b7ed37b82869/go.mod h1:Ekp36dRnpXw/yCqJaO+ZrUyxD+3VXMFFr56k5XYrpB4= | |
github.com/bmizerany/pat v0.0.0-20170815010413-6226ea591a40/go.mod h1:8rLXio+WjiTceGBHIoTvn60HIbs7Hm7bcHjyrSqYB9c= | |
@@ -209,6 +213,8 @@ github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMo | |
github.com/fsouza/go-dockerclient v1.6.0/go.mod h1:YWwtNPuL4XTX1SKJQk86cWPmmqwx+4np9qfPbb+znGc= | |
github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= | |
github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= | |
+github.com/gizak/termui/v3 v3.1.0 h1:ZZmVDgwHl7gR7elfKf1xc4IudXZ5qqfDh4wExk4Iajc= | |
+github.com/gizak/termui/v3 v3.1.0/go.mod h1:bXQEBkJpzxUAKf0+xq9MSWAvWZlE7c+aidmyFlkYTrY= | |
github.com/gliderlabs/ssh v0.2.2 h1:6zsha5zo/TWhRhwqCD3+EarCAgZ2yN28ipRnGPnwkI0= | |
github.com/gliderlabs/ssh v0.2.2/go.mod h1:U7qILu1NlMHj9FlMhZLlkCdDnU1DBEAqr0aevW3Awn0= | |
github.com/go-acme/lego/v3 v3.4.0/go.mod h1:xYbLDuxq3Hy4bMUT1t9JIuz6GWIWb3m5X+TeTHYaT7M= | |
@@ -589,6 +595,10 @@ github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= | |
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= | |
github.com/labbsr0x/bindman-dns-webhook v1.0.2/go.mod h1:p6b+VCXIR8NYKpDr8/dg1HKfQoRHCdcsROXKvmoehKA= | |
github.com/labbsr0x/goh v1.0.1/go.mod h1:8K2UhVoaWXcCU7Lxoa2omWnC8gyW8px7/lmO61c027w= | |
+github.com/labstack/echo v3.2.1+incompatible h1:J2M7YArHx4gi8p/3fDw8tX19SXhBCoRpviyAZSN3I88= | |
+github.com/labstack/echo v3.2.1+incompatible/go.mod h1:0INS7j/VjnFxD4E2wkz67b8cVwCLbBmJyDaka6Cmk1s= | |
+github.com/labstack/gommon v0.2.7 h1:2qOPq/twXDrQ6ooBGrn3mrmVOC+biLlatwgIu8lbzRM= | |
+github.com/labstack/gommon v0.2.7/go.mod h1:/tj9csK2iPSBvn+3NLM9e52usepMtrd5ilFYA+wQNJ4= | |
github.com/lib/pq v1.0.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= | |
github.com/lib/pq v1.3.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= | |
github.com/linode/linodego v0.10.0/go.mod h1:cziNP7pbvE3mXIPneHj0oRY8L1WtGEIKlZ8LANE4eXA= | |
@@ -628,6 +638,7 @@ github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNx | |
github.com/mattn/go-isatty v0.0.4 h1:bnP0vzxcAdeI1zdubAl5PjU6zsERjGZb7raWodagDYs= | |
github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= | |
github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= | |
+github.com/mattn/go-runewidth v0.0.3/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= | |
github.com/mattn/go-runewidth v0.0.4 h1:2BvfKmzob6Bmd4YsL0zygOqfdFnK7GR4QL06Do4/p7Y= | |
github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= | |
github.com/mattn/go-sqlite3 v1.9.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= | |
@@ -655,6 +666,9 @@ github.com/mitchellh/go-homedir v1.0.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrk | |
github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y= | |
github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= | |
github.com/mitchellh/go-vnc v0.0.0-20150629162542-723ed9867aed/go.mod h1:3rdaFaCv4AyBgu5ALFM0+tSuHrBh6v692nyQe3ikrq0= | |
+github.com/mitchellh/go-wordwrap v0.0.0-20150314170334-ad45545899c7/go.mod h1:ZXFpozHsX6DPmq2I0TCekCxypsnAUbP2oI0UX1GXzOo= | |
+github.com/mitchellh/go-wordwrap v1.0.0 h1:6GlHJ/LTGMrIJbwgdqdl2eEH8o+Exx/0m8ir9Gns0u4= | |
+github.com/mitchellh/go-wordwrap v1.0.0/go.mod h1:ZXFpozHsX6DPmq2I0TCekCxypsnAUbP2oI0UX1GXzOo= | |
github.com/mitchellh/hashstructure v1.0.0 h1:ZkRJX1CyOoTkar7p/mLS5TZU4nJ1Rn/F8u9dGS02Q3Y= | |
github.com/mitchellh/hashstructure v1.0.0/go.mod h1:QjSHrPWS+BGUVBYkbTZWEnOh3G1DutKwClXU/ABz6AQ= | |
github.com/mitchellh/mapstructure v1.0.0/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= | |
@@ -698,6 +712,8 @@ github.com/nrdcg/auroradns v1.0.0/go.mod h1:6JPXKzIRzZzMqtTDgueIhTi6rFf1QvYE/Hzq | |
github.com/nrdcg/dnspod-go v0.4.0/go.mod h1:vZSoFSFeQVm2gWLMkyX61LZ8HI3BaqtHZWgPTGKr6KQ= | |
github.com/nrdcg/goinwx v0.6.1/go.mod h1:XPiut7enlbEdntAqalBIqcYcTEVhpv/dKWgDCX2SwKQ= | |
github.com/nrdcg/namesilo v0.2.1/go.mod h1:lwMvfQTyYq+BbjJd30ylEG4GPSS6PII0Tia4rRpRiyw= | |
+github.com/nsf/termbox-go v0.0.0-20190121233118-02980233997d h1:x3S6kxmy49zXVVyhcnrFqxvNVCBPb2KZ9hV2RBdS840= | |
+github.com/nsf/termbox-go v0.0.0-20190121233118-02980233997d/go.mod h1:IuKpRQcYE1Tfu+oAQqaLisqDeXgjyyltCfsaoYN18NQ= | |
github.com/oklog/run v1.0.0 h1:Ru7dDtJNOyC66gQ5dQmaCa0qIsAUFY3sFpK1Xk8igrw= | |
github.com/oklog/run v1.0.0/go.mod h1:dlhp/R75TPv97u0XWUtDeV/lRKWPKSdTuV0TZvrmrQA= | |
github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= | |
@@ -920,6 +936,10 @@ github.com/unrolled/secure v0.0.0-20181005190816-ff9db2ff917f/go.mod h1:mnPT77IA | |
github.com/urfave/cli v0.0.0-20171014202726-7bc6a0acffa5/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= | |
github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= | |
github.com/urfave/negroni v1.0.0/go.mod h1:Meg73S6kFm/4PpbYdq35yYWoCZ9mS/YSx+lKnmiohz4= | |
+github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= | |
+github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= | |
+github.com/valyala/fasttemplate v0.0.0-20170224212429-dcecefd839c4 h1:gKMu1Bf6QINDnvyZuTaACm9ofY+PRh+5vFz4oxBZeF8= | |
+github.com/valyala/fasttemplate v0.0.0-20170224212429-dcecefd839c4/go.mod h1:50wTf68f99/Zt14pr046Tgt3Lp2vLyFZKzbFXTOabXw= | |
github.com/vimeo/go-util v1.2.0/go.mod h1:s13SMDTSO7AjH1nbgp707mfN5JFIWUFDU5MDDuRRtKs= | |
github.com/vultr/govultr v0.1.4/go.mod h1:9H008Uxr/C4vFNGLqKx232C206GL0PBHzOP0809bGNA= | |
github.com/xanzy/ssh-agent v0.2.1 h1:TCbipTQL2JiiCprBWx9frJ2eJlCYT00NmctrHxVAr70= | |
@@ -1098,6 +1118,7 @@ golang.org/x/sys v0.0.0-20180921163948-d47a0f339242/go.mod h1:STP8DvDyc/dI5b8T5h | |
golang.org/x/sys v0.0.0-20180927150500-dad3d9fb7b6e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= | |
golang.org/x/sys v0.0.0-20181005133103-4497e2df6f9e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= | |
golang.org/x/sys v0.0.0-20181011152604-fa43e7bc11ba/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= | |
+golang.org/x/sys v0.0.0-20181019160139-8e24a49d80f8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= | |
golang.org/x/sys v0.0.0-20181021155630-eda9bb28ed51/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= | |
golang.org/x/sys v0.0.0-20181022134430-8a28ead16f52/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= | |
golang.org/x/sys v0.0.0-20181024145615-5cd93ef61a7c/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= | |
diff --git a/pkg/assets/embed.go b/pkg/assets/embed.go | |
index c25dca2..03dea6c 100644 | |
--- a/pkg/assets/embed.go | |
+++ b/pkg/assets/embed.go | |
@@ -1,5 +1,5 @@ | |
-// Code generated by fileb0x at "2020-08-17 18:06:40.337581 +0200 CEST m=+0.007931277" from config file "embed.yml" DO NOT EDIT. | |
-// modification hash(a008098be580d534e88b0910900c0b14.8058aec596c5fb73022d09bb97af796e) | |
+// Code generated by fileb0x at "2020-08-17 20:53:16.217605 +0200 CEST m=+0.008764704" from config file "embed.yml" DO NOT EDIT. | |
+// modification hash(a863fcd32f505cc5e934d6fdb40333d4.8058aec596c5fb73022d09bb97af796e) | |
package assets | |
diff --git a/pkg/command/server.go b/pkg/command/server.go | |
index 6523d91..66785c3 100644 | |
--- a/pkg/command/server.go | |
+++ b/pkg/command/server.go | |
@@ -10,14 +10,13 @@ import ( | |
"contrib.go.opencensus.io/exporter/jaeger" | |
"contrib.go.opencensus.io/exporter/ocagent" | |
"contrib.go.opencensus.io/exporter/zipkin" | |
- "github.com/micro/cli/v2" | |
+ cli "github.com/micro/cli/v2" | |
"github.com/oklog/run" | |
openzipkin "github.com/openzipkin/zipkin-go" | |
zipkinhttp "github.com/openzipkin/zipkin-go/reporter/http" | |
"github.com/owncloud/ocis-markdown-editor/pkg/config" | |
"github.com/owncloud/ocis-markdown-editor/pkg/flagset" | |
"github.com/owncloud/ocis-markdown-editor/pkg/metrics" | |
- "github.com/owncloud/ocis-markdown-editor/pkg/server/debug" | |
"github.com/owncloud/ocis-markdown-editor/pkg/server/http" | |
"go.opencensus.io/stats/view" | |
"go.opencensus.io/trace" | |
@@ -140,8 +139,8 @@ func Server(cfg *config.Config) *cli.Command { | |
http.Context(ctx), | |
http.Config(cfg), | |
http.Metrics(metrics), | |
- http.Flags(flagset.RootWithConfig(cfg)), | |
- http.Flags(flagset.ServerWithConfig(cfg)), | |
+ http.Flags(flagset.RootWithConfig(config.New())), | |
+ http.Flags(flagset.ServerWithConfig(config.New())), | |
) | |
gr.Add(func() error { | |
@@ -154,45 +153,6 @@ func Server(cfg *config.Config) *cli.Command { | |
cancel() | |
}) | |
} | |
- | |
- { | |
- server, err := debug.Server( | |
- debug.Logger(logger), | |
- debug.Name("markdown-editor"), | |
- debug.Context(ctx), | |
- debug.Config(cfg), | |
- ) | |
- | |
- if err != nil { | |
- logger.Info(). | |
- Err(err). | |
- Str("transport", "debug"). | |
- Msg("Failed to initialize server") | |
- | |
- return err | |
- } | |
- | |
- gr.Add(func() error { | |
- return server.ListenAndServe() | |
- }, func(_ error) { | |
- ctx, timeout := context.WithTimeout(ctx, 5*time.Second) | |
- | |
- defer timeout() | |
- defer cancel() | |
- | |
- if err := server.Shutdown(ctx); err != nil { | |
- logger.Info(). | |
- Err(err). | |
- Str("transport", "debug"). | |
- Msg("Failed to shutdown server") | |
- } else { | |
- logger.Info(). | |
- Str("transport", "debug"). | |
- Msg("Shutting down server") | |
- } | |
- }) | |
- } | |
- | |
{ | |
stop := make(chan os.Signal, 1) | |
diff --git a/pkg/server/http/server.go b/pkg/server/http/server.go | |
index 8464b3f..c1ad39b 100644 | |
--- a/pkg/server/http/server.go | |
+++ b/pkg/server/http/server.go | |
@@ -1,12 +1,13 @@ | |
package http | |
import ( | |
- "github.com/go-chi/chi" | |
"github.com/owncloud/ocis-markdown-editor/pkg/assets" | |
- svc "github.com/owncloud/ocis-markdown-editor/pkg/service/v0" | |
+ gohttp "net/http" | |
+ "github.com/go-chi/chi" | |
"github.com/owncloud/ocis-markdown-editor/pkg/version" | |
- "github.com/owncloud/ocis-pkg/v2/middleware" | |
"github.com/owncloud/ocis-pkg/v2/service/http" | |
+ "path" | |
+ "strings" | |
) | |
// Server initializes the http service and server. | |
@@ -23,46 +24,50 @@ func Server(opts ...Option) http.Service { | |
http.Flags(options.Flags...), | |
) | |
- markdownEditor := svc.NewService() | |
- | |
- { | |
- markdownEditor = svc.NewInstrument(markdownEditor, options.Metrics) | |
- markdownEditor = svc.NewLogging(markdownEditor, options.Logger) | |
- markdownEditor = svc.NewTracing(markdownEditor) | |
- } | |
- | |
mux := chi.NewMux() | |
+ mux.Use(Static( | |
+ options.Config.HTTP.Root, | |
+ assets.New( | |
+ assets.Logger(options.Logger), | |
+ assets.Config(options.Config), | |
+ ), | |
+ )) | |
+ mux.Get("/", gohttp.HandlerFunc(func(writer gohttp.ResponseWriter, request *gohttp.Request) { | |
+ writer.Write([]byte("noop")) | |
+ })) | |
- mux.Use(middleware.RealIP) | |
- mux.Use(middleware.RequestID) | |
- mux.Use(middleware.Cache) | |
- mux.Use(middleware.Cors) | |
- mux.Use(middleware.Secure) | |
+ service.Handle("/", mux) | |
- mux.Use(middleware.Version( | |
- options.Name, | |
- version.String, | |
- )) | |
+ if err := service.Init(); err != nil { | |
+ panic(err) | |
+ } | |
+ return service | |
+} | |
- mux.Use(middleware.Logger( | |
- options.Logger, | |
- )) | |
+// Static is a middleware that serves static assets. | |
+func Static(root string, fs gohttp.FileSystem) func(gohttp.Handler) gohttp.Handler { | |
+ if !strings.HasSuffix(root, "/") { | |
+ root = root + "/" | |
+ } | |
- mux.Use(middleware.Static( | |
- options.Config.HTTP.Root, | |
- assets.New( | |
- assets.Logger(options.Logger), | |
- assets.Config(options.Config), | |
+ static := gohttp.StripPrefix( | |
+ root, | |
+ gohttp.FileServer( | |
+ fs, | |
), | |
- )) | |
- | |
- service.Handle( | |
- "/", | |
- mux, | |
) | |
- if err := service.Init(); err != nil { | |
- panic(err) | |
+ return func(next gohttp.Handler) gohttp.Handler { | |
+ return gohttp.HandlerFunc(func(w gohttp.ResponseWriter, r *gohttp.Request) { | |
+ if strings.HasPrefix(r.URL.Path, path.Join(root, "api")) { | |
+ next.ServeHTTP(w, r) | |
+ } else { | |
+ if strings.HasSuffix(r.URL.Path, "/") { | |
+ gohttp.NotFound(w, r) | |
+ } else { | |
+ static.ServeHTTP(w, r) | |
+ } | |
+ } | |
+ }) | |
} | |
- return service | |
-} | |
+} | |
\ No newline at end of file | |
diff --git a/pkg/service/v0/service.go b/pkg/service/v0/service.go | |
index 17e23c0..d4e0ab9 100644 | |
--- a/pkg/service/v0/service.go | |
+++ b/pkg/service/v0/service.go | |
@@ -1,6 +1,7 @@ | |
package svc | |
import ( | |
+ "fmt" | |
"net/http" | |
"github.com/go-chi/chi" | |
@@ -13,14 +14,11 @@ type Service interface { | |
} | |
// NewService returns a service implementation for Service. | |
-func NewService(opts ...Option) Service { | |
- options := newOptions(opts...) | |
- | |
+func NewService(cfg *config.Config) Service { | |
m := chi.NewMux() | |
- m.Use(options.Middleware...) | |
svc := MarkdownEditor{ | |
- config: options.Config, | |
+ config: cfg, | |
mux: m, | |
} | |
@@ -33,7 +31,13 @@ type MarkdownEditor struct { | |
mux *chi.Mux | |
} | |
+// AddMiddleware adds a middleware to the service | |
+func (g MarkdownEditor) AddMiddleware() { | |
+ | |
+} | |
+ | |
// ServeHTTP implements the Service interface. | |
func (g MarkdownEditor) ServeHTTP(w http.ResponseWriter, r *http.Request) { | |
+ fmt.Printf("here") | |
g.mux.ServeHTTP(w, r) | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment