|
- package stgmod
-
- import (
- "gitlink.org.cn/cloudream/common/pkgs/types"
- cdssdk "gitlink.org.cn/cloudream/common/sdks/storage"
- "gitlink.org.cn/cloudream/common/utils/serder"
- "time"
- )
-
- type Source interface {
- }
-
- type Body interface {
- }
-
- var _ = serder.UseTypeUnionInternallyTagged(types.Ref(types.NewTypeUnion[Source](
- (*SourceCoordinator)(nil),
- (*SourceScanner)(nil),
- )), "type")
-
- type SourceCoordinator struct {
- serder.Metadata `union:"SourceCoordinator"`
- Type string `json:"type"`
- }
-
- type SourceScanner struct {
- serder.Metadata `union:"SourceScanner"`
- Type string `json:"type"`
- HubID cdssdk.HubID `json:"hubID"`
- HubName string `json:"hubName"`
- }
-
- var _ = serder.UseTypeUnionInternallyTagged(types.Ref(types.NewTypeUnion[Body](
- (*BodyHubInfo)(nil),
- (*BodyStorageInfo)(nil),
- (*BodyStorageStats)(nil),
- (*BodyHubTransferStats)(nil),
- (*BodyHubStorageTransferStats)(nil),
- (*BodyBlockTransfer)(nil),
- (*BodyBlockDistribution)(nil),
- (*BodyObjectChange)(nil),
- (*BodyPackageChange)(nil),
- (*BodyBucketChange)(nil),
- )), "type")
-
- type BodyHubInfo struct {
- serder.Metadata `union:"BodyHubInfo"`
- HubID cdssdk.HubID `json:"hubID"`
- HubInfo cdssdk.Hub `json:"hubInfo"`
- Type string `json:"type"`
- }
-
- type BodyStorageInfo struct {
- serder.Metadata `union:"BodyStorageInfo"`
- StorageID cdssdk.StorageID `json:"storageID"`
- StorageInfo cdssdk.Storage `json:"storageInfo"`
- Type string `json:"type"`
- }
- type BodyStorageStats struct {
- serder.Metadata `union:"BodyStorageStats"`
- StorageID cdssdk.StorageID `json:"storageID"`
- DataCount int64 `json:"dataCount"`
- }
-
- type DataTrans struct {
- TotalTransfer int64 `json:"totalTransfer"`
- RequestCount int64 `json:"requestCount"`
- FailedRequestCount int64 `json:"failedRequestCount"`
- AvgTransfer int64 `json:"avgTransfer"`
- MaxTransfer int64 `json:"maxTransfer"`
- MinTransfer int64 `json:"minTransfer"`
- }
-
- type BodyHubTransferStats struct {
- serder.Metadata `union:"BodyHubTransferStats"`
- SourceHubID cdssdk.HubID `json:"sourceHubID"`
- TargetHubID cdssdk.HubID `json:"targetHubID"`
- Send DataTrans `json:"send"`
- StartTimestamp time.Time `json:"startTimestamp"`
- EndTimestamp time.Time `json:"endTimestamp"`
- }
-
- type BodyHubStorageTransferStats struct {
- serder.Metadata `union:"BodyHubStorageTransferStats"`
- HubID cdssdk.HubID `json:"hubID"`
- StorageID cdssdk.StorageID `json:"storageID"`
- Send DataTrans `json:"send"`
- Receive DataTrans `json:"receive"`
- StartTimestamp time.Time `json:"startTimestamp"`
- EndTimestamp time.Time `json:"endTimestamp"`
- }
-
- type Block struct {
- BlockType string `json:"blockType"`
- Index string `json:"index"`
- StorageID cdssdk.StorageID `json:"storageID"`
- }
- type DataTransfer struct {
- SourceStorageID cdssdk.StorageID `json:"sourceStorageID"`
- TargetStorageID cdssdk.StorageID `json:"targetStorageID"`
- DataTransferCount string `json:"dataTransferCount"`
- }
-
- type BlockChange struct {
- Type string `json:"type"`
- BlockType string `json:"blockType"`
- Index string `json:"index"`
- SourceStorageID cdssdk.StorageID `json:"sourceStorageID"`
- TargetStorageID cdssdk.StorageID `json:"targetStorageID"`
- DataTransferCount string `json:"dataTransferCount"`
- Timestamp time.Time `json:"timestamp"`
- SourceBlocks []Block `json:"sourceBlocks,omitempty"`
- TargetBlocks []Block `json:"targetBlocks,omitempty"`
- DataTransfers []DataTransfer `json:"dataTransfers,omitempty"`
- Blocks []Block `json:"blocks,omitempty"`
- }
- type BodyBlockTransfer struct {
- serder.Metadata `union:"BodyBlockTransfer"`
- Type string `json:"type"`
- ObjectID cdssdk.ObjectID `json:"objectID"`
- PackageID cdssdk.PackageID `json:"packageID"`
- BlockChanges []BlockChange `json:"blockChanges"`
- }
-
- type BlockDistributionObjectInfo struct {
- Type string `json:"type"`
- Index string `json:"index"`
- StorageID string `json:"storageID"`
- }
-
- type BlockDistributionObject struct {
- ObjectID cdssdk.ObjectID `json:"objectID"`
- PackageID cdssdk.PackageID `json:"packageID"`
- Path string `json:"path"`
- Size int64 `json:"size"`
- FileHash string `json:"fileHash"`
- FaultTolerance string `json:"faultTolerance"`
- Redundancy string `json:"redundancy"`
- AvgAccessCost string `json:"avgAccessCost"`
- BlockDistribution []BlockDistributionObjectInfo `json:"blockDistribution"`
- DataTransfers []DataTransfer `json:"dataTransfers"`
- }
-
- type BodyBlockDistribution struct {
- serder.Metadata `union:"BodyBlockDistribution"`
- Timestamp time.Time `json:"timestamp"`
- Object BlockDistributionObject `json:"object,omitempty"`
- }
- type BodyObjectChange struct {
- serder.Metadata `union:"BodyObjectChange"`
- Type string `json:"type"`
- ObjectID cdssdk.ObjectID `json:"objectID"`
- PackageID cdssdk.PackageID `json:"packageID"`
- Path string `json:"path"`
- Size int `json:"size"`
- BlockDistribution []BlockDistributionObjectInfo `json:"blockDistribution"`
- Timestamp time.Time `json:"timestamp"`
- }
- type BodyPackageChange struct {
- serder.Metadata `union:"BodyPackageChange"`
- Type string `json:"type"`
- PackageID cdssdk.PackageID `json:"packageID"`
- PackageName string `json:"packageName"`
- BucketID cdssdk.BucketID `json:"bucketID"`
- Timestamp time.Time `json:"timestamp"`
- }
- type BodyBucketChange struct {
- serder.Metadata `union:"BodyBucketChange"`
- Type string `json:"type"`
- BucketID cdssdk.BucketID `json:"bucketID"`
- BucketName string `json:"bucketName"`
- Timestamp time.Time `json:"timestamp"`
- }
|