Full Mattermost server source with integrated Community Enterprise features. Includes vendor directory for offline/air-gapped builds. Structure: - enterprise-impl/: Enterprise feature implementations - enterprise-community/: Init files that register implementations - enterprise/: Bridge imports (community_imports.go) - vendor/: All dependencies for offline builds Build (online): go build ./cmd/mattermost Build (offline/air-gapped): go build -mod=vendor ./cmd/mattermost 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
42 lines
1.5 KiB
Go
42 lines
1.5 KiB
Go
package service
|
|
|
|
import "github.com/splitio/go-split-commons/v7/dtos"
|
|
|
|
// AuthClient inteface to be implemneted by AuthClient
|
|
type AuthClient interface {
|
|
Authenticate() (*dtos.Token, error)
|
|
}
|
|
|
|
// SplitFetcher interface to be implemented by Split Fetchers
|
|
type SplitFetcher interface {
|
|
Fetch(fetchOptions *FlagRequestParams) (*dtos.SplitChangesDTO, error)
|
|
}
|
|
|
|
// SegmentFetcher interface to be implemented by Split Fetchers
|
|
type SegmentFetcher interface {
|
|
Fetch(name string, fetchOptions *SegmentRequestParams) (*dtos.SegmentChangesDTO, error)
|
|
}
|
|
|
|
type LargeSegmentFetcher interface {
|
|
Fetch(name string, fetchOptions *SegmentRequestParams) (*dtos.LargeSegmentRFDResponseDTO, error)
|
|
DownloadFile(name string, rfdResponseDTO *dtos.LargeSegmentRFDResponseDTO) (*dtos.LargeSegment, error)
|
|
}
|
|
|
|
// ImpressionsRecorder interface to be implemented by Impressions loggers
|
|
type ImpressionsRecorder interface {
|
|
Record(impressions []dtos.ImpressionsDTO, metadata dtos.Metadata, extraHeaders map[string]string) error
|
|
RecordImpressionsCount(pf dtos.ImpressionsCountDTO, metadata dtos.Metadata) error
|
|
}
|
|
|
|
// TelemetryRecorder interface to be implemented by Telemetry loggers
|
|
type TelemetryRecorder interface {
|
|
RecordConfig(config dtos.Config, metadata dtos.Metadata) error
|
|
RecordStats(stats dtos.Stats, metadata dtos.Metadata) error
|
|
RecordUniqueKeys(uniques dtos.Uniques, metadata dtos.Metadata) error
|
|
}
|
|
|
|
// EventsRecorder interface to post events
|
|
type EventsRecorder interface {
|
|
Record(events []dtos.EventDTO, metadata dtos.Metadata) error
|
|
}
|