From 44d99a4ba560caaaa94fa154c0dcdf65fba8b812 Mon Sep 17 00:00:00 2001 From: nquidox Date: Fri, 3 Apr 2026 11:21:24 +0300 Subject: [PATCH] address maker --- address.go | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 address.go diff --git a/address.go b/address.go new file mode 100644 index 0000000..dadf5d3 --- /dev/null +++ b/address.go @@ -0,0 +1,34 @@ +package rabbit + +import ( + "errors" + "fmt" + "net/url" +) + +type Address struct { + Username string + Password string + Host string + Port uint16 + Vhost string +} + +func (a *Address) makeAddr() (string, error) { + if a.Host == "" { + return "", errors.New("no host provided") + } + + if a.Vhost == "" { + return "", errors.New("no vhost provided") + } + + //"amqp://username:password@host:port/vhost" + return fmt.Sprintf("amqp://%v:%v@%v:%v/%v", + url.QueryEscape(a.Username), + url.QueryEscape(a.Password), + a.Host, + a.Port, + url.PathEscape(a.Vhost), + ), nil +}