| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 | package serviceimport (	"context"	"errors"	"strings")// Service constantsconst (	StrMaxSize = 1024)// Service errorsvar (	ErrMaxSize = errors.New("maximum size of 1024 bytes exceeded")	ErrStrValue = errors.New("error str value to Integer"))// Service Define a service interfacetype Service interface {	// Concat a and b	Concat(a, b string) (string, error)	// a,b pkg string value	Diff(ctx context.Context, a, b string) (string, error)	// HealthCheck check service health status	HealthCheck() bool}//ArithmeticService implement Service interfacetype StringService struct {}func (s StringService) Concat(a, b string) (string, error) {	// test for length overflow	if len(a)+len(b) > StrMaxSize {		return "", ErrMaxSize	}	return a + b, nil}func (s StringService) Diff(ctx context.Context, a, b string) (string, error) {	if len(a) < 1 || len(b) < 1 {		return "", nil	}	res := ""	if len(a) >= len(b) {		for _, char := range b {			if strings.Contains(a, string(char)) {				res = res + string(char)			}		}	} else {		for _, char := range a {			if strings.Contains(b, string(char)) {				res = res + string(char)			}		}	}	return res, nil}// HealthCheck implement Service method// 用于检查服务的健康状态,这里仅仅返回true。func (s StringService) HealthCheck() bool {	return true}// ServiceMiddleware define service middlewaretype ServiceMiddleware func(Service) Service
 |