summaryrefslogtreecommitdiff
path: root/plugins/beanstalk/config.go
diff options
context:
space:
mode:
authorValery Piashchynski <[email protected]>2021-08-26 18:32:51 +0300
committerValery Piashchynski <[email protected]>2021-08-26 18:32:51 +0300
commitefb3efa98c8555815330274f0618bfc080f4c65c (patch)
treeb3bcabdb22fade6ef06d865d60995bc15f84cf1c /plugins/beanstalk/config.go
parent3212a5b59b6dcd8aa6edac137e945d42f6f9e0ce (diff)
Move drivers to the plugin's root.
Fix #771, add tests. Signed-off-by: Valery Piashchynski <[email protected]>
Diffstat (limited to 'plugins/beanstalk/config.go')
-rw-r--r--plugins/beanstalk/config.go53
1 files changed, 53 insertions, 0 deletions
diff --git a/plugins/beanstalk/config.go b/plugins/beanstalk/config.go
new file mode 100644
index 00000000..a8069f5d
--- /dev/null
+++ b/plugins/beanstalk/config.go
@@ -0,0 +1,53 @@
+package beanstalk
+
+import (
+ "time"
+
+ "github.com/spiral/roadrunner/v2/utils"
+)
+
+const (
+ tubePriority string = "tube_priority"
+ tube string = "tube"
+ reserveTimeout string = "reserve_timeout"
+)
+
+type GlobalCfg struct {
+ Addr string `mapstructure:"addr"`
+ Timeout time.Duration `mapstructure:"timeout"`
+}
+
+func (c *GlobalCfg) InitDefault() {
+ if c.Addr == "" {
+ c.Addr = "tcp://127.0.0.1:11300"
+ }
+
+ if c.Timeout == 0 {
+ c.Timeout = time.Second * 30
+ }
+}
+
+type Config struct {
+ PipePriority int64 `mapstructure:"priority"`
+ TubePriority *uint32 `mapstructure:"tube_priority"`
+ Tube string `mapstructure:"tube"`
+ ReserveTimeout time.Duration `mapstructure:"reserve_timeout"`
+}
+
+func (c *Config) InitDefault() {
+ if c.Tube == "" {
+ c.Tube = "default"
+ }
+
+ if c.ReserveTimeout == 0 {
+ c.ReserveTimeout = time.Second * 1
+ }
+
+ if c.TubePriority == nil {
+ c.TubePriority = utils.Uint32(0)
+ }
+
+ if c.PipePriority == 0 {
+ c.PipePriority = 10
+ }
+}