From 2597c03d1555e00dec59830b7de75e7090208e05 Mon Sep 17 00:00:00 2001 From: Slack Coder Date: Wed, 2 Oct 2024 16:49:36 -0500 Subject: config: Use TOML TOML is simple for users, and it is used in notably projects like rustlang. It also provides comments! --- internal/service/mirror.go | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 internal/service/mirror.go (limited to 'internal/service/mirror.go') diff --git a/internal/service/mirror.go b/internal/service/mirror.go new file mode 100644 index 0000000..12aaa79 --- /dev/null +++ b/internal/service/mirror.go @@ -0,0 +1,27 @@ +package service + +import ( + "bytes" + + "git.server.ky/slackcoder/mirror/internal" + "github.com/BurntSushi/toml" +) + +type Mirror struct { + Method string `toml:"method,omitempty"` + From *internal.URL `toml:"from,omitempty"` + To *internal.URL `toml:"to,omitempty"` + Description string `toml:"description,omitempty"` +} + +func (m *Mirror) Equal(arg *Mirror) bool { + return m.Method == arg.Method && m.From.String() == arg.From.String() && m.To.String() == arg.To.String() +} + +func (m *Mirror) String() string { + var buf bytes.Buffer + + toml.NewEncoder(&buf).Encode(m) + + return buf.String() +} -- cgit v1.2.3