+
+func (sdbst *SentinelsDbState) IsOnline() error {
+ if sdbst.Err != nil {
+ return sdbst.Err
+ }
+ for _, state := range sdbst.States {
+ if err := state.IsOnline(); err != nil {
+ return err
+ }
+ }
+ return nil
+}
+
+func (sdbst *SentinelDbState) IsOnline() error {
+ if sdbst.Fields.Flags != "sentinel" {
+ return fmt.Errorf("Sentinel flags are '%s', expected 'sentinel'", sdbst.Fields.Flags)
+ }
+ return nil
+}
+
+func (sdbst *SentinelDbState) GetAddress() string {
+ if sdbst.Fields.Ip != "" || sdbst.Fields.Port != "" {
+ return sdbst.Fields.Ip + ":" + sdbst.Fields.Port
+ } else {
+ return ""
+ }
+}