Files
Memoh/internal/channel/target.go
T
BBQ 29e6ddd1f9 refactor: replace global channel registry with instance-based Registry and interface-driven adapters
- Replace global channelRegistry singleton with explicit *Registry passed via dependency injection
- Split monolithic manager.go into connection.go (lifecycle), inbound.go (dispatch), outbound.go (pipeline)
- Introduce optional adapter interfaces: ConfigNormalizer, TargetResolver, BindingMatcher
- Move Descriptor() to Adapter interface, remove init()-based registration
- Relocate SessionHub to adapters/local package
- Extract shared UUID/time helpers to internal/db/uuid.go
- Decompose ConfigStore into fine-grained interfaces: ConfigLister, ConfigResolver, BindingStore, SessionStore
2026-02-06 23:47:12 +08:00

14 lines
396 B
Go

package channel
// TargetHint provides a display label and example for a target format.
type TargetHint struct {
Example string `json:"example,omitempty"`
Label string `json:"label,omitempty"`
}
// TargetSpec describes the expected format of a delivery target for a channel type.
type TargetSpec struct {
Format string `json:"format"`
Hints []TargetHint `json:"hints,omitempty"`
}