# Functions
BuildTypeDecoder takes a list of interfaces and stores them internally as a list of typeMappings in the format below.
DecodeConnectionError decodes some of the connection errors returned by the backend.
DecodeData decodes a raw message into its type.
# Constants
ServiceName defines the service name for the agent.
# Structs
ClientServerImpl wraps commonly used methods defined in ClientServer interface.
NotMarshallableWSRequest represents that the given request input could not be marshalled.
ReceivedMessage is the intermediate message used to unmarshal a message from backend.
RequestMessage is the intermediate message marshalled to send to backend.
TypeDecoderImpl is an implementation for general use between ACS and TCS clients.
UndecodableMessage indicates that a message from the backend could not be decoded.
UnrecognizedWSRequestType specifies that a given type is not recognized.
WSError wraps all the typed errors that the backend may return This will not be needed once the aws-sdk-go generation handles error types more cleanly.
# Interfaces
ClientServer is a combined client and server for the backend websocket connection.
RequestHandler would be func(*ecsacs.T for T in ecsacs.*) to be more proper, but it needs to be interface{} to properly capture that.
ServiceError defines methods to return new backend specific error objects.
TypeDecoder interface defines methods to decode ecs types.
WSUnretriableErrors defines methods to retrieve the list of unretriable errors.
# Type aliases
MakeRequestHookFunc is a function that is invoked on every generated request with the raw request body.