mirror of
https://github.com/mainflux/mainflux.git
synced 2025-05-02 22:17:10 +08:00

Setup top-level glide dependencies file. Migrated all of the manager service code into this repository. Fixed docker build procedure. Extracted executable to the top-level. Signed-off-by: Dejan Mijic <dejan@mainflux.com>
29 lines
504 B
Go
29 lines
504 B
Go
package main
|
|
|
|
import (
|
|
"errors"
|
|
"strings"
|
|
)
|
|
|
|
// StringService provides operations on strings.
|
|
type StringService interface {
|
|
Uppercase(string) (string, error)
|
|
Count(string) int
|
|
}
|
|
|
|
type stringService struct{}
|
|
|
|
func (stringService) Uppercase(s string) (string, error) {
|
|
if s == "" {
|
|
return "", ErrEmpty
|
|
}
|
|
return strings.ToUpper(s), nil
|
|
}
|
|
|
|
func (stringService) Count(s string) int {
|
|
return len(s)
|
|
}
|
|
|
|
// ErrEmpty is returned when an input string is empty.
|
|
var ErrEmpty = errors.New("empty string")
|