Documentation
¶
Index ¶
Constants ¶
View Source
const ( // GenericService name GenericService = "$GenericService" // private as "$" // GenericMethod name GenericMethod = "$GenericCall" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type MethodHandler ¶
MethodHandler is corresponding to the handler wrapper func that in generated code
type MethodInfo ¶
type MethodInfo interface {
Handler() MethodHandler
NewArgs() interface{}
NewResult() interface{}
OneWay() bool
}
MethodInfo to record meta info of unary method
func NewMethodInfo ¶
func NewMethodInfo(methodHandler MethodHandler, newArgsFunc, newResultFunc func() interface{}, oneWay bool) MethodInfo
NewMethodInfo is called in generated code to build method info
type PayloadCodec ¶
type PayloadCodec int
PayloadCodec alias type
const ( Thrift PayloadCodec = iota Protobuf )
PayloadCodec supported by kitex.
func (PayloadCodec) String ¶
func (p PayloadCodec) String() string
String prints human readable information.
type ServiceInfo ¶
type ServiceInfo struct {
// deprecated, for compatibility
PackageName string
// The name of the service. For generic services, it is always the constant `GenericService`.
ServiceName string
// HandlerType is the type value of a request handler from the generated code.
HandlerType interface{}
// Methods contains the meta information of methods supported by the service.
// For generic service, there is only one method named by the constant `GenericMethod`.
Methods map[string]MethodInfo
// PayloadCodec is the codec of payload.
PayloadCodec PayloadCodec
// KiteXGenVersion is the version of command line tool 'kitex'.
KiteXGenVersion string
// Extra is for future feature info, to avoid compatibility issue
// as otherwise we need to add a new field in the struct
Extra map[string]interface{}
// GenericMethod returns a MethodInfo for the given name.
// It is used by generic calls only.
GenericMethod func(name string) MethodInfo
}
ServiceInfo to record meta info of service
func (*ServiceInfo) GetPackageName ¶
func (i *ServiceInfo) GetPackageName() (pkg string)
GetPackageName returns the PackageName. The return value is generally taken from the Extra field of ServiceInfo with a key `PackageName`. For some legacy generated code, it may come from the PackageName field.
func (*ServiceInfo) MethodInfo ¶
func (i *ServiceInfo) MethodInfo(name string) MethodInfo
MethodInfo gets MethodInfo.
Click to show internal directories.
Click to hide internal directories.