github.com/alloyzeus/go-azfl@v0.0.0-20231220071816-9740126a2d07/azcore/service_server.go (about) 1 package azcore 2 3 /**/ /**/ 4 5 // ServiceServerConfig holds the configuration for a service client. 6 type ServiceServerConfig interface { 7 ServiceConfig 8 } 9 10 // ServiceServer provides an abstraction for all service clients. 11 type ServiceServer interface { 12 Service 13 AZServiceServer() 14 } 15 16 // ServiceServerModule provides all the required to instantiate a service 17 // client. 18 type ServiceServerModule struct { 19 ServiceServerConfigSkeleton func() ServiceServerConfig 20 NewServiceServer func(ServiceServerConfig) (ServiceServer, ServiceServerError) 21 } 22 23 var _ ServiceModule = ServiceServerModule{} 24 25 // AZServiceModule is required for conformance with ServiceModule. 26 func (ServiceServerModule) AZServiceModule() {} 27 28 // ServiceServerError is an abstraction for all errors emitted by a 29 // service server. 30 type ServiceServerError interface { 31 ServiceError 32 33 AZServiceServerError() 34 }