Documentation ¶
Index ¶
- Constants
- Variables
- func ErrorIsIn(err error, errorTypes []error) bool
- func GetInternalStructs(in interface{}) []interface{}
- func HasPerm(ctx context.Context, defaultPerm auth.Permission, perms auth.Permission) bool
- func PermissionedProxy(validPerms []auth.Permission, defaultPerms auth.Permission, in interface{}, ...)
- func WithPerm(ctx context.Context, perms []auth.Permission) context.Context
- type APIVersion
- type AccessPoint
- type Asset
- type AssetStruct
- func (s *AssetStruct) DeleteAsset(p0 context.Context, p1 string) error
- func (s *AssetStruct) GetAssetProgresses(p0 context.Context, p1 []string) (*types.PullResult, error)
- func (s *AssetStruct) GetAssetStats(p0 context.Context) (*types.AssetStats, error)
- func (s *AssetStruct) GetPullingAssetInfo(p0 context.Context) (*types.InProgressAsset, error)
- func (s *AssetStruct) PullAsset(p0 context.Context, p1 string, p2 []*types.CandidateDownloadInfo) error
- type AssetStub
- func (s *AssetStub) DeleteAsset(p0 context.Context, p1 string) error
- func (s *AssetStub) GetAssetProgresses(p0 context.Context, p1 []string) (*types.PullResult, error)
- func (s *AssetStub) GetAssetStats(p0 context.Context) (*types.AssetStats, error)
- func (s *AssetStub) GetPullingAssetInfo(p0 context.Context) (*types.InProgressAsset, error)
- func (s *AssetStub) PullAsset(p0 context.Context, p1 string, p2 []*types.CandidateDownloadInfo) error
- type Candidate
- type CandidateStruct
- func (s *CandidateStruct) CheckNetworkConnectivity(p0 context.Context, p1 string, p2 string) error
- func (s *CandidateStruct) GetBlocksWithAssetCID(p0 context.Context, p1 string, p2 int64, p3 int) ([]string, error)
- func (s *CandidateStruct) GetExternalAddress(p0 context.Context) (string, error)
- func (s *CandidateStruct) WaitQuiet(p0 context.Context) error
- type CandidateStub
- func (s *CandidateStub) CheckNetworkConnectivity(p0 context.Context, p1 string, p2 string) error
- func (s *CandidateStub) GetBlocksWithAssetCID(p0 context.Context, p1 string, p2 int64, p3 int) ([]string, error)
- func (s *CandidateStub) GetExternalAddress(p0 context.Context) (string, error)
- func (s *CandidateStub) WaitQuiet(p0 context.Context) error
- type Common
- type CommonStruct
- func (s *CommonStruct) AuthNew(p0 context.Context, p1 []auth.Permission) (string, error)
- func (s *CommonStruct) AuthVerify(p0 context.Context, p1 string) ([]auth.Permission, error)
- func (s *CommonStruct) Closing(p0 context.Context) (<-chan struct{}, error)
- func (s *CommonStruct) Discover(p0 context.Context) (types.OpenRPCDocument, error)
- func (s *CommonStruct) LogAlerts(p0 context.Context) ([]alerting.Alert, error)
- func (s *CommonStruct) LogList(p0 context.Context) ([]string, error)
- func (s *CommonStruct) LogSetLevel(p0 context.Context, p1 string, p2 string) error
- func (s *CommonStruct) Session(p0 context.Context) (uuid.UUID, error)
- func (s *CommonStruct) Shutdown(p0 context.Context) error
- func (s *CommonStruct) Version(p0 context.Context) (APIVersion, error)
- type CommonStub
- func (s *CommonStub) AuthNew(p0 context.Context, p1 []auth.Permission) (string, error)
- func (s *CommonStub) AuthVerify(p0 context.Context, p1 string) ([]auth.Permission, error)
- func (s *CommonStub) Closing(p0 context.Context) (<-chan struct{}, error)
- func (s *CommonStub) Discover(p0 context.Context) (types.OpenRPCDocument, error)
- func (s *CommonStub) LogAlerts(p0 context.Context) ([]alerting.Alert, error)
- func (s *CommonStub) LogList(p0 context.Context) ([]string, error)
- func (s *CommonStub) LogSetLevel(p0 context.Context, p1 string, p2 string) error
- func (s *CommonStub) Session(p0 context.Context) (uuid.UUID, error)
- func (s *CommonStub) Shutdown(p0 context.Context) error
- func (s *CommonStub) Version(p0 context.Context) (APIVersion, error)
- type DataSync
- type DataSyncStruct
- type DataSyncStub
- type Device
- type DeviceStruct
- type DeviceStub
- type Edge
- type EdgeStruct
- type EdgeStub
- type EdgeUpdateConfig
- type ErrUnknown
- type Locator
- type LocatorStruct
- func (s *LocatorStruct) EdgeDownloadInfos(p0 context.Context, p1 string) ([]*types.EdgeDownloadInfoList, error)
- func (s *LocatorStruct) GetAccessPoints(p0 context.Context, p1 string, p2 string) ([]string, error)
- func (s *LocatorStruct) GetUserAccessPoint(p0 context.Context, p1 string) (*AccessPoint, error)
- type LocatorStub
- func (s *LocatorStub) EdgeDownloadInfos(p0 context.Context, p1 string) ([]*types.EdgeDownloadInfoList, error)
- func (s *LocatorStub) GetAccessPoints(p0 context.Context, p1 string, p2 string) ([]string, error)
- func (s *LocatorStub) GetUserAccessPoint(p0 context.Context, p1 string) (*AccessPoint, error)
- type LogFile
- type Scheduler
- type SchedulerStruct
- func (s *SchedulerStruct) CandidateConnect(p0 context.Context, p1 *types.ConnectOptions) error
- func (s *SchedulerStruct) DeleteEdgeUpdateConfig(p0 context.Context, p1 int) error
- func (s *SchedulerStruct) EdgeConnect(p0 context.Context, p1 *types.ConnectOptions) error
- func (s *SchedulerStruct) GetAssetListForBucket(p0 context.Context, p1 uint32) ([]string, error)
- func (s *SchedulerStruct) GetAssetRecord(p0 context.Context, p1 string) (*types.AssetRecord, error)
- func (s *SchedulerStruct) GetAssetRecords(p0 context.Context, p1 int, p2 int, p3 []string, p4 dtypes.ServerID) ([]*types.AssetRecord, error)
- func (s *SchedulerStruct) GetAssetReplicaInfos(p0 context.Context, p1 types.ListReplicaInfosReq) (*types.ListReplicaInfosRsp, error)
- func (s *SchedulerStruct) GetAssetStatistics(p0 context.Context) (*types.AssetStatistics, error)
- func (s *SchedulerStruct) GetCandidateDownloadInfos(p0 context.Context, p1 string) ([]*types.CandidateDownloadInfo, error)
- func (s *SchedulerStruct) GetCandidateURLsForDetectNat(p0 context.Context) ([]string, error)
- func (s *SchedulerStruct) GetEdgeDownloadInfos(p0 context.Context, p1 string) (*types.EdgeDownloadInfoList, error)
- func (s *SchedulerStruct) GetEdgeExternalServiceAddress(p0 context.Context, p1 string, p2 string) (string, error)
- func (s *SchedulerStruct) GetEdgeUpdateConfigs(p0 context.Context) (map[int]*EdgeUpdateConfig, error)
- func (s *SchedulerStruct) GetExternalAddress(p0 context.Context) (string, error)
- func (s *SchedulerStruct) GetNodeInfo(p0 context.Context, p1 string) (types.NodeInfo, error)
- func (s *SchedulerStruct) GetNodeList(p0 context.Context, p1 int, p2 int) (*types.ListNodesRsp, error)
- func (s *SchedulerStruct) GetOnlineNodeCount(p0 context.Context, p1 types.NodeType) (int, error)
- func (s *SchedulerStruct) GetSchedulerPublicKey(p0 context.Context) (string, error)
- func (s *SchedulerStruct) GetValidationInfo(p0 context.Context) (*types.ValidationInfo, error)
- func (s *SchedulerStruct) GetValidationResults(p0 context.Context, p1 time.Time, p2 time.Time, p3 int, p4 int) (*types.ListValidationResultRsp, error)
- func (s *SchedulerStruct) NatPunch(p0 context.Context, p1 *types.NatPunchReq) error
- func (s *SchedulerStruct) NodeExists(p0 context.Context, p1 string) error
- func (s *SchedulerStruct) NodeKeepalive(p0 context.Context) (uuid.UUID, error)
- func (s *SchedulerStruct) NodeLogin(p0 context.Context, p1 string, p2 string) (string, error)
- func (s *SchedulerStruct) NodeRemoveAssetResult(p0 context.Context, p1 types.RemoveAssetResult) error
- func (s *SchedulerStruct) NodeValidationResult(p0 context.Context, p1 ValidationResult, p2 string) error
- func (s *SchedulerStruct) PullAsset(p0 context.Context, p1 *types.PullAssetReq) error
- func (s *SchedulerStruct) RePullFailedAssets(p0 context.Context, p1 []types.AssetHash) error
- func (s *SchedulerStruct) RegisterNode(p0 context.Context, p1 string, p2 types.NodeType) (string, error)
- func (s *SchedulerStruct) RemoveAssetRecord(p0 context.Context, p1 string) error
- func (s *SchedulerStruct) RemoveAssetReplica(p0 context.Context, p1 string, p2 string) error
- func (s *SchedulerStruct) SetEdgeUpdateConfig(p0 context.Context, p1 *EdgeUpdateConfig) error
- func (s *SchedulerStruct) SubmitNodeWorkloadReport(p0 context.Context, p1 io.Reader) error
- func (s *SchedulerStruct) SubmitUserWorkloadReport(p0 context.Context, p1 io.Reader) error
- func (s *SchedulerStruct) TriggerElection(p0 context.Context) error
- func (s *SchedulerStruct) UnregisterNode(p0 context.Context, p1 string) error
- func (s *SchedulerStruct) UpdateAssetExpiration(p0 context.Context, p1 string, p2 time.Time) error
- func (s *SchedulerStruct) UpdateNodePort(p0 context.Context, p1 string, p2 string) error
- func (s *SchedulerStruct) VerifyNodeAuthToken(p0 context.Context, p1 string) ([]auth.Permission, error)
- type SchedulerStub
- func (s *SchedulerStub) CandidateConnect(p0 context.Context, p1 *types.ConnectOptions) error
- func (s *SchedulerStub) DeleteEdgeUpdateConfig(p0 context.Context, p1 int) error
- func (s *SchedulerStub) EdgeConnect(p0 context.Context, p1 *types.ConnectOptions) error
- func (s *SchedulerStub) GetAssetListForBucket(p0 context.Context, p1 uint32) ([]string, error)
- func (s *SchedulerStub) GetAssetRecord(p0 context.Context, p1 string) (*types.AssetRecord, error)
- func (s *SchedulerStub) GetAssetRecords(p0 context.Context, p1 int, p2 int, p3 []string, p4 dtypes.ServerID) ([]*types.AssetRecord, error)
- func (s *SchedulerStub) GetAssetReplicaInfos(p0 context.Context, p1 types.ListReplicaInfosReq) (*types.ListReplicaInfosRsp, error)
- func (s *SchedulerStub) GetAssetStatistics(p0 context.Context) (*types.AssetStatistics, error)
- func (s *SchedulerStub) GetCandidateDownloadInfos(p0 context.Context, p1 string) ([]*types.CandidateDownloadInfo, error)
- func (s *SchedulerStub) GetCandidateURLsForDetectNat(p0 context.Context) ([]string, error)
- func (s *SchedulerStub) GetEdgeDownloadInfos(p0 context.Context, p1 string) (*types.EdgeDownloadInfoList, error)
- func (s *SchedulerStub) GetEdgeExternalServiceAddress(p0 context.Context, p1 string, p2 string) (string, error)
- func (s *SchedulerStub) GetEdgeUpdateConfigs(p0 context.Context) (map[int]*EdgeUpdateConfig, error)
- func (s *SchedulerStub) GetExternalAddress(p0 context.Context) (string, error)
- func (s *SchedulerStub) GetNodeInfo(p0 context.Context, p1 string) (types.NodeInfo, error)
- func (s *SchedulerStub) GetNodeList(p0 context.Context, p1 int, p2 int) (*types.ListNodesRsp, error)
- func (s *SchedulerStub) GetOnlineNodeCount(p0 context.Context, p1 types.NodeType) (int, error)
- func (s *SchedulerStub) GetSchedulerPublicKey(p0 context.Context) (string, error)
- func (s *SchedulerStub) GetValidationInfo(p0 context.Context) (*types.ValidationInfo, error)
- func (s *SchedulerStub) GetValidationResults(p0 context.Context, p1 time.Time, p2 time.Time, p3 int, p4 int) (*types.ListValidationResultRsp, error)
- func (s *SchedulerStub) NatPunch(p0 context.Context, p1 *types.NatPunchReq) error
- func (s *SchedulerStub) NodeExists(p0 context.Context, p1 string) error
- func (s *SchedulerStub) NodeKeepalive(p0 context.Context) (uuid.UUID, error)
- func (s *SchedulerStub) NodeLogin(p0 context.Context, p1 string, p2 string) (string, error)
- func (s *SchedulerStub) NodeRemoveAssetResult(p0 context.Context, p1 types.RemoveAssetResult) error
- func (s *SchedulerStub) NodeValidationResult(p0 context.Context, p1 ValidationResult, p2 string) error
- func (s *SchedulerStub) PullAsset(p0 context.Context, p1 *types.PullAssetReq) error
- func (s *SchedulerStub) RePullFailedAssets(p0 context.Context, p1 []types.AssetHash) error
- func (s *SchedulerStub) RegisterNode(p0 context.Context, p1 string, p2 types.NodeType) (string, error)
- func (s *SchedulerStub) RemoveAssetRecord(p0 context.Context, p1 string) error
- func (s *SchedulerStub) RemoveAssetReplica(p0 context.Context, p1 string, p2 string) error
- func (s *SchedulerStub) SetEdgeUpdateConfig(p0 context.Context, p1 *EdgeUpdateConfig) error
- func (s *SchedulerStub) SubmitNodeWorkloadReport(p0 context.Context, p1 io.Reader) error
- func (s *SchedulerStub) SubmitUserWorkloadReport(p0 context.Context, p1 io.Reader) error
- func (s *SchedulerStub) TriggerElection(p0 context.Context) error
- func (s *SchedulerStub) UnregisterNode(p0 context.Context, p1 string) error
- func (s *SchedulerStub) UpdateAssetExpiration(p0 context.Context, p1 string, p2 time.Time) error
- func (s *SchedulerStub) UpdateNodePort(p0 context.Context, p1 string, p2 string) error
- func (s *SchedulerStub) VerifyNodeAuthToken(p0 context.Context, p1 string) ([]auth.Permission, error)
- type TCPMsgType
- type ValidateReq
- type Validation
- type ValidationResult
- type ValidationStruct
- type ValidationStub
- type Version
Constants ¶
const ( RoleWeb auth.Permission = "web" RoleCandidate auth.Permission = "candidate" RoleEdge auth.Permission = "edge" RoleLocator auth.Permission = "locator" RoleAdmin auth.Permission = "admin" // Manage permissions RoleDefault auth.Permission = "default" )
const (
EUnknown = iota + jsonrpc.FirstUserCode
)
Variables ¶
var ( SchedulerAPIVersion0 = newVer(1, 0, 0) CandidateAPIVersion0 = newVer(1, 0, 0) EdgeAPIVersion0 = newVer(1, 0, 0) LocationAPIVersion0 = newVer(1, 0, 0) )
semver versions of the rpc api exposed
var AllPermissions = []auth.Permission{RoleWeb, RoleCandidate, RoleEdge, RoleLocator, RoleAdmin, RoleDefault}
var ErrNotSupported = xerrors.New("method not supported")
var RPCErrors = jsonrpc.NewErrors()
Functions ¶
func GetInternalStructs ¶
func GetInternalStructs(in interface{}) []interface{}
GetInternalStructs extracts all pointers to 'Internal' sub-structs from the provided pointer to a proxy struct
func HasPerm ¶
func HasPerm(ctx context.Context, defaultPerm auth.Permission, perms auth.Permission) bool
func PermissionedProxy ¶
func PermissionedProxy(validPerms []auth.Permission, defaultPerms auth.Permission, in interface{}, out interface{})
Types ¶
type APIVersion ¶
type APIVersion struct { Version string // APIVersion is a binary encoded semver version of the remote implementing // this api // // See APIVersion in build/version.go APIVersion Version // Seconds BlockDelay uint64 }
APIVersion provides various build-time information
func (APIVersion) String ¶
func (v APIVersion) String() string
type AccessPoint ¶
AccessPoint represents an access point within an area, containing scheduler information.
type Asset ¶
type Asset interface { // PullAsset pull the asset with given assetCID from specified sources PullAsset(ctx context.Context, assetCID string, sources []*types.CandidateDownloadInfo) error //perm:admin // DeleteAsset deletes the asset with given assetCID DeleteAsset(ctx context.Context, assetCID string) error //perm:admin // GetAssetStats retrieves the statistics of assets GetAssetStats(ctx context.Context) (*types.AssetStats, error) //perm:admin // GetCachingAssetInfo retrieves the information of assets that are currently being pulled GetPullingAssetInfo(ctx context.Context) (*types.InProgressAsset, error) //perm:admin // GetAssetProgresses retrieves the progress of assets with specified assetCIDs GetAssetProgresses(ctx context.Context, assetCIDs []string) (*types.PullResult, error) //perm:admin }
Asset is an interface for asset manager
type AssetStruct ¶
type AssetStruct struct { Internal struct { DeleteAsset func(p0 context.Context, p1 string) error `perm:"admin"` GetAssetProgresses func(p0 context.Context, p1 []string) (*types.PullResult, error) `perm:"admin"` GetAssetStats func(p0 context.Context) (*types.AssetStats, error) `perm:"admin"` GetPullingAssetInfo func(p0 context.Context) (*types.InProgressAsset, error) `perm:"admin"` PullAsset func(p0 context.Context, p1 string, p2 []*types.CandidateDownloadInfo) error `perm:"admin"` } }
func (*AssetStruct) DeleteAsset ¶
func (s *AssetStruct) DeleteAsset(p0 context.Context, p1 string) error
func (*AssetStruct) GetAssetProgresses ¶
func (s *AssetStruct) GetAssetProgresses(p0 context.Context, p1 []string) (*types.PullResult, error)
func (*AssetStruct) GetAssetStats ¶
func (s *AssetStruct) GetAssetStats(p0 context.Context) (*types.AssetStats, error)
func (*AssetStruct) GetPullingAssetInfo ¶
func (s *AssetStruct) GetPullingAssetInfo(p0 context.Context) (*types.InProgressAsset, error)
func (*AssetStruct) PullAsset ¶
func (s *AssetStruct) PullAsset(p0 context.Context, p1 string, p2 []*types.CandidateDownloadInfo) error
type AssetStub ¶
type AssetStub struct { }
func (*AssetStub) DeleteAsset ¶
func (*AssetStub) GetAssetProgresses ¶
func (*AssetStub) GetAssetStats ¶
func (*AssetStub) GetPullingAssetInfo ¶
type Candidate ¶
type Candidate interface { Common Device Validation DataSync Asset WaitQuiet(ctx context.Context) error //perm:admin GetBlocksWithAssetCID(ctx context.Context, assetCID string, randomSeed int64, randomCount int) ([]string, error) //perm:admin // GetExternalAddress retrieves the external address of the caller. GetExternalAddress(ctx context.Context) (string, error) //perm:default CheckNetworkConnectivity(ctx context.Context, network, targetURL string) error //perm:default }
Candidate is an interface for candidate node
type CandidateStruct ¶
type CandidateStruct struct { CommonStruct DeviceStruct ValidationStruct DataSyncStruct AssetStruct Internal struct { CheckNetworkConnectivity func(p0 context.Context, p1 string, p2 string) error `perm:"default"` GetBlocksWithAssetCID func(p0 context.Context, p1 string, p2 int64, p3 int) ([]string, error) `perm:"admin"` GetExternalAddress func(p0 context.Context) (string, error) `perm:"default"` WaitQuiet func(p0 context.Context) error `perm:"admin"` } }
func (*CandidateStruct) CheckNetworkConnectivity ¶
func (*CandidateStruct) GetBlocksWithAssetCID ¶
func (*CandidateStruct) GetExternalAddress ¶
func (s *CandidateStruct) GetExternalAddress(p0 context.Context) (string, error)
type CandidateStub ¶
type CandidateStub struct { CommonStub DeviceStub ValidationStub DataSyncStub AssetStub }
func (*CandidateStub) CheckNetworkConnectivity ¶
func (*CandidateStub) GetBlocksWithAssetCID ¶
func (*CandidateStub) GetExternalAddress ¶
func (s *CandidateStub) GetExternalAddress(p0 context.Context) (string, error)
type Common ¶
type Common interface { // AuthVerify checks whether the specified token is valid and returns the list of permissions associated with it. AuthVerify(ctx context.Context, token string) ([]auth.Permission, error) //perm:default // AuthNew creates a new token with the specified list of permissions. AuthNew(ctx context.Context, perms []auth.Permission) (string, error) //perm:admin // LogList returns a list of all logs in the system. LogList(context.Context) ([]string, error) //perm:admin // LogSetLevel sets the log level of the specified logger. LogSetLevel(context.Context, string, string) error //perm:admin // LogAlerts returns list of all, active and inactive alerts tracked by the LogAlerts(ctx context.Context) ([]alerting.Alert, error) //perm:admin // Version provides information about API provider Version(context.Context) (APIVersion, error) //perm:default // Discover returns an OpenRPC document describing an RPC API. Discover(ctx context.Context) (types.OpenRPCDocument, error) //perm:admin // Shutdown trigger graceful shutdown Shutdown(context.Context) error //perm:admin // Session returns a UUID of api provider session Session(ctx context.Context) (uuid.UUID, error) //perm:edge,candidate // Closing jsonrpc closing Closing(context.Context) (<-chan struct{}, error) //perm:admin }
Common is an interface for titan network
type CommonStruct ¶
type CommonStruct struct { Internal struct { AuthNew func(p0 context.Context, p1 []auth.Permission) (string, error) `perm:"admin"` AuthVerify func(p0 context.Context, p1 string) ([]auth.Permission, error) `perm:"default"` Closing func(p0 context.Context) (<-chan struct{}, error) `perm:"admin"` Discover func(p0 context.Context) (types.OpenRPCDocument, error) `perm:"admin"` LogAlerts func(p0 context.Context) ([]alerting.Alert, error) `perm:"admin"` LogList func(p0 context.Context) ([]string, error) `perm:"admin"` LogSetLevel func(p0 context.Context, p1 string, p2 string) error `perm:"admin"` Session func(p0 context.Context) (uuid.UUID, error) `perm:"edge,candidate"` Shutdown func(p0 context.Context) error `perm:"admin"` Version func(p0 context.Context) (APIVersion, error) `perm:"default"` } }
func (*CommonStruct) AuthNew ¶
func (s *CommonStruct) AuthNew(p0 context.Context, p1 []auth.Permission) (string, error)
func (*CommonStruct) AuthVerify ¶
func (s *CommonStruct) AuthVerify(p0 context.Context, p1 string) ([]auth.Permission, error)
func (*CommonStruct) Closing ¶
func (s *CommonStruct) Closing(p0 context.Context) (<-chan struct{}, error)
func (*CommonStruct) Discover ¶
func (s *CommonStruct) Discover(p0 context.Context) (types.OpenRPCDocument, error)
func (*CommonStruct) LogSetLevel ¶
func (*CommonStruct) Version ¶
func (s *CommonStruct) Version(p0 context.Context) (APIVersion, error)
type CommonStub ¶
type CommonStub struct { }
func (*CommonStub) AuthNew ¶
func (s *CommonStub) AuthNew(p0 context.Context, p1 []auth.Permission) (string, error)
func (*CommonStub) AuthVerify ¶
func (s *CommonStub) AuthVerify(p0 context.Context, p1 string) ([]auth.Permission, error)
func (*CommonStub) Closing ¶
func (s *CommonStub) Closing(p0 context.Context) (<-chan struct{}, error)
func (*CommonStub) Discover ¶
func (s *CommonStub) Discover(p0 context.Context) (types.OpenRPCDocument, error)
func (*CommonStub) LogSetLevel ¶
func (*CommonStub) Version ¶
func (s *CommonStub) Version(p0 context.Context) (APIVersion, error)
type DataSync ¶
type DataSync interface { // CompareTopHash check asset if same as scheduler. // topHash is hash of all buckets CompareTopHash(ctx context.Context, topHash string) (bool, error) //perm:admin // CompareBucketHashes group asset in bucket, and compare single bucket hash // hashes are map of bucket, key is number of bucket, value is hash // return mismatch bucket number CompareBucketHashes(ctx context.Context, hashes map[uint32]string) ([]uint32, error) //perm:admin }
DataSync sync scheduler asset to node
type DataSyncStruct ¶
type DataSyncStruct struct { Internal struct { CompareBucketHashes func(p0 context.Context, p1 map[uint32]string) ([]uint32, error) `perm:"admin"` CompareTopHash func(p0 context.Context, p1 string) (bool, error) `perm:"admin"` } }
func (*DataSyncStruct) CompareBucketHashes ¶
func (*DataSyncStruct) CompareTopHash ¶
type DataSyncStub ¶
type DataSyncStub struct { }
func (*DataSyncStub) CompareBucketHashes ¶
func (*DataSyncStub) CompareTopHash ¶
type Device ¶
type Device interface { GetNodeInfo(ctx context.Context) (types.NodeInfo, error) //perm:admin GetNodeID(ctx context.Context) (string, error) //perm:admin }
Device is an interface for node
type DeviceStruct ¶
type DeviceStruct struct { Internal struct { GetNodeID func(p0 context.Context) (string, error) `perm:"admin"` GetNodeInfo func(p0 context.Context) (types.NodeInfo, error) `perm:"admin"` } }
func (*DeviceStruct) GetNodeID ¶
func (s *DeviceStruct) GetNodeID(p0 context.Context) (string, error)
func (*DeviceStruct) GetNodeInfo ¶
type Edge ¶
type Edge interface { Common Device Validation DataSync Asset WaitQuiet(ctx context.Context) error //perm:admin // ExternalServiceAddress check service address with different candidate // if behind nat, service address maybe different ExternalServiceAddress(ctx context.Context, candidateURL string) (string, error) //perm:admin // UserNATTravel build connection for user UserNATPunch(ctx context.Context, userServiceAddress string, req *types.NatPunchReq) error //perm:admin }
Edge is an interface for edge node
func PermissionedEdgeAPI ¶
type EdgeStruct ¶
type EdgeStruct struct { CommonStruct DeviceStruct ValidationStruct DataSyncStruct AssetStruct Internal struct { ExternalServiceAddress func(p0 context.Context, p1 string) (string, error) `perm:"admin"` UserNATPunch func(p0 context.Context, p1 string, p2 *types.NatPunchReq) error `perm:"admin"` WaitQuiet func(p0 context.Context) error `perm:"admin"` } }
func (*EdgeStruct) ExternalServiceAddress ¶
func (*EdgeStruct) UserNATPunch ¶
func (s *EdgeStruct) UserNATPunch(p0 context.Context, p1 string, p2 *types.NatPunchReq) error
type EdgeStub ¶
type EdgeStub struct { CommonStub DeviceStub ValidationStub DataSyncStub AssetStub }
func (*EdgeStub) ExternalServiceAddress ¶
func (*EdgeStub) UserNATPunch ¶
type EdgeUpdateConfig ¶
type EdgeUpdateConfig struct { NodeType int `db:"node_type"` AppName string `db:"app_name"` Version Version `db:"version"` DownloadURL string `db:"download_url"` Hash string `db:"hash"` UpdateTime time.Time `db:"update_time"` }
EdgeUpdateInfo just update edge node NodeType include edge-updater and titan-edge
type ErrUnknown ¶
type ErrUnknown struct{}
func (*ErrUnknown) Error ¶
func (e *ErrUnknown) Error() string
type Locator ¶
type Locator interface { Common // GetAccessPoints retrieves all access points associated with a node. GetAccessPoints(ctx context.Context, nodeID, areaID string) ([]string, error) //perm:default // user api // EdgeDownloadInfos retrieves download information for a content identifier (CID). EdgeDownloadInfos(ctx context.Context, cid string) ([]*types.EdgeDownloadInfoList, error) //perm:default // GetUserAccessPoint retrieves an access point for a user with a specified IP address. GetUserAccessPoint(ctx context.Context, userIP string) (*AccessPoint, error) //perm:default }
Locator is an interface for locator services
func PermissionedLocationAPI ¶
type LocatorStruct ¶
type LocatorStruct struct { CommonStruct Internal struct { EdgeDownloadInfos func(p0 context.Context, p1 string) ([]*types.EdgeDownloadInfoList, error) `perm:"default"` GetAccessPoints func(p0 context.Context, p1 string, p2 string) ([]string, error) `perm:"default"` GetUserAccessPoint func(p0 context.Context, p1 string) (*AccessPoint, error) `perm:"default"` } }
func (*LocatorStruct) EdgeDownloadInfos ¶
func (s *LocatorStruct) EdgeDownloadInfos(p0 context.Context, p1 string) ([]*types.EdgeDownloadInfoList, error)
func (*LocatorStruct) GetAccessPoints ¶
func (*LocatorStruct) GetUserAccessPoint ¶
func (s *LocatorStruct) GetUserAccessPoint(p0 context.Context, p1 string) (*AccessPoint, error)
type LocatorStub ¶
type LocatorStub struct {
CommonStub
}
func (*LocatorStub) EdgeDownloadInfos ¶
func (s *LocatorStub) EdgeDownloadInfos(p0 context.Context, p1 string) ([]*types.EdgeDownloadInfoList, error)
func (*LocatorStub) GetAccessPoints ¶
func (*LocatorStub) GetUserAccessPoint ¶
func (s *LocatorStub) GetUserAccessPoint(p0 context.Context, p1 string) (*AccessPoint, error)
type Scheduler ¶
type Scheduler interface { Common // Node-related methods // GetOnlineNodeCount returns the count of online nodes for a given node type GetOnlineNodeCount(ctx context.Context, nodeType types.NodeType) (int, error) //perm:web,admin // RegisterNode adds a new node to the scheduler with the specified public key, and node type , and returns node id RegisterNode(ctx context.Context, publicKey string, nodeType types.NodeType) (string, error) //perm:web,admin // UnregisterNode removes a node from the scheduler with the specified node ID UnregisterNode(ctx context.Context, nodeID string) error //perm:web,admin // UpdateNodePort updates the port for the node with the specified node UpdateNodePort(ctx context.Context, nodeID, port string) error //perm:web,admin // EdgeConnect edge node login to the scheduler EdgeConnect(ctx context.Context, opts *types.ConnectOptions) error //perm:edge // NodeValidationResult processes the validation result for a node NodeValidationResult(ctx context.Context, vr ValidationResult, sign string) error //perm:candidate // CandidateConnect candidate node login to the scheduler CandidateConnect(ctx context.Context, opts *types.ConnectOptions) error //perm:candidate // NodeRemoveAssetResult the result of an asset removal operation NodeRemoveAssetResult(ctx context.Context, resultInfo types.RemoveAssetResult) error //perm:edge,candidate // GetExternalAddress retrieves the external address of the caller. GetExternalAddress(ctx context.Context) (string, error) //perm:default // VerifyNodeAuthToken checks the authenticity of a node's authentication token and returns the associated permissions VerifyNodeAuthToken(ctx context.Context, token string) ([]auth.Permission, error) //perm:default // NodeLogin generates an authentication token for a node with the specified node ID and signature NodeLogin(ctx context.Context, nodeID, sign string) (string, error) //perm:default // GetNodeInfo get information for node GetNodeInfo(ctx context.Context, nodeID string) (types.NodeInfo, error) //perm:web,admin // GetNodeList retrieves a list of nodes with pagination using the specified cursor and count GetNodeList(ctx context.Context, cursor int, count int) (*types.ListNodesRsp, error) //perm:web,admin // GetAssetListForBucket retrieves a list of asset hashes for a bucket associated with the specified bucket ID (bucketID is hash code) GetAssetListForBucket(ctx context.Context, bucketID uint32) ([]string, error) //perm:edge,candidate // GetCandidateURLsForDetectNat Get the rpc url of the specified number of candidate nodes GetCandidateURLsForDetectNat(ctx context.Context) ([]string, error) //perm:default // GetEdgeExternalServiceAddress nat travel, get edge external addr with different candidate GetEdgeExternalServiceAddress(ctx context.Context, nodeID, candidateURL string) (string, error) //perm:edge // NatPunch nat punch between user and node NatPunch(ctx context.Context, target *types.NatPunchReq) error //perm:default // GetEdgeDownloadInfos retrieves download information for the edge with the asset with the specified CID. GetEdgeDownloadInfos(ctx context.Context, cid string) (*types.EdgeDownloadInfoList, error) //perm:default // GetCandidateDownloadInfos retrieves download information for the candidate with the asset with the specified CID. GetCandidateDownloadInfos(ctx context.Context, cid string) ([]*types.CandidateDownloadInfo, error) //perm:edge,candidate // NodeExists checks if the node with the specified ID exists. NodeExists(ctx context.Context, nodeID string) error //perm:web // NodeKeepalive NodeKeepalive(ctx context.Context) (uuid.UUID, error) //perm:edge,candidate // Asset-related methods // PullAsset Pull an asset based on the provided PullAssetReq structure. PullAsset(ctx context.Context, info *types.PullAssetReq) error //perm:admin // RemoveAssetRecord removes the asset record with the specified CID from the scheduler RemoveAssetRecord(ctx context.Context, cid string) error //perm:admin // RemoveAssetReplica deletes an asset replica with the specified CID and node from the scheduler RemoveAssetReplica(ctx context.Context, cid, nodeID string) error //perm:admin // GetAssetRecord retrieves the asset record with the specified CID GetAssetRecord(ctx context.Context, cid string) (*types.AssetRecord, error) //perm:web,admin // GetAssetRecords retrieves a list of asset records with pagination using the specified limit, offset, and states GetAssetRecords(ctx context.Context, limit, offset int, states []string, serverID dtypes.ServerID) ([]*types.AssetRecord, error) //perm:web,admin // RePullFailedAssets retries the pull process for a list of failed assets RePullFailedAssets(ctx context.Context, hashes []types.AssetHash) error //perm:admin // UpdateAssetExpiration updates the expiration time for an asset with the specified CID UpdateAssetExpiration(ctx context.Context, cid string, time time.Time) error //perm:admin // GetAssetReplicaInfos retrieves a list of asset replica information using the specified request parameters GetAssetReplicaInfos(ctx context.Context, req types.ListReplicaInfosReq) (*types.ListReplicaInfosRsp, error) //perm:web,admin // GetValidationResults retrieves a list of validation results with pagination using the specified time range, page number, and page size GetValidationResults(ctx context.Context, startTime, endTime time.Time, pageNumber, pageSize int) (*types.ListValidationResultRsp, error) //perm:web,admin // SubmitUserWorkloadReport submits report of workload for User Download asset SubmitUserWorkloadReport(ctx context.Context, r io.Reader) error //perm:default // SubmitNodeWorkloadReport submits report of workload for node provide Asset Download SubmitNodeWorkloadReport(ctx context.Context, r io.Reader) error //perm:edge,candidate // Server-related methods // GetSchedulerPublicKey retrieves the scheduler's public key in PEM format GetSchedulerPublicKey(ctx context.Context) (string, error) //perm:edge,candidate // TriggerElection starts a new election process TriggerElection(ctx context.Context) error //perm:admin // GetEdgeUpdateConfigs retrieves edge update configurations for different node types GetEdgeUpdateConfigs(ctx context.Context) (map[int]*EdgeUpdateConfig, error) //perm:edge // SetEdgeUpdateConfig updates the edge update configuration for a specific node type with the provided information SetEdgeUpdateConfig(ctx context.Context, info *EdgeUpdateConfig) error //perm:admin // DeleteEdgeUpdateConfig deletes the edge update configuration for the specified node type DeleteEdgeUpdateConfig(ctx context.Context, nodeType int) error //perm:admin // GetValidationInfo get information related to validation and election GetValidationInfo(ctx context.Context) (*types.ValidationInfo, error) //perm:web,admin // GetAssetStatistics get asset related statistics information GetAssetStatistics(ctx context.Context) (*types.AssetStatistics, error) //perm:web,admin }
Scheduler is an interface for scheduler
type SchedulerStruct ¶
type SchedulerStruct struct { CommonStruct Internal struct { CandidateConnect func(p0 context.Context, p1 *types.ConnectOptions) error `perm:"candidate"` DeleteEdgeUpdateConfig func(p0 context.Context, p1 int) error `perm:"admin"` EdgeConnect func(p0 context.Context, p1 *types.ConnectOptions) error `perm:"edge"` GetAssetListForBucket func(p0 context.Context, p1 uint32) ([]string, error) `perm:"edge,candidate"` GetAssetRecord func(p0 context.Context, p1 string) (*types.AssetRecord, error) `perm:"web,admin"` GetAssetRecords func(p0 context.Context, p1 int, p2 int, p3 []string, p4 dtypes.ServerID) ([]*types.AssetRecord, error) `perm:"web,admin"` GetAssetReplicaInfos func(p0 context.Context, p1 types.ListReplicaInfosReq) (*types.ListReplicaInfosRsp, error) `perm:"web,admin"` GetAssetStatistics func(p0 context.Context) (*types.AssetStatistics, error) `perm:"web,admin"` GetCandidateDownloadInfos func(p0 context.Context, p1 string) ([]*types.CandidateDownloadInfo, error) `perm:"edge,candidate"` GetCandidateURLsForDetectNat func(p0 context.Context) ([]string, error) `perm:"default"` GetEdgeDownloadInfos func(p0 context.Context, p1 string) (*types.EdgeDownloadInfoList, error) `perm:"default"` GetEdgeExternalServiceAddress func(p0 context.Context, p1 string, p2 string) (string, error) `perm:"edge"` GetEdgeUpdateConfigs func(p0 context.Context) (map[int]*EdgeUpdateConfig, error) `perm:"edge"` GetExternalAddress func(p0 context.Context) (string, error) `perm:"default"` GetNodeInfo func(p0 context.Context, p1 string) (types.NodeInfo, error) `perm:"web,admin"` GetNodeList func(p0 context.Context, p1 int, p2 int) (*types.ListNodesRsp, error) `perm:"web,admin"` GetOnlineNodeCount func(p0 context.Context, p1 types.NodeType) (int, error) `perm:"web,admin"` GetSchedulerPublicKey func(p0 context.Context) (string, error) `perm:"edge,candidate"` GetValidationInfo func(p0 context.Context) (*types.ValidationInfo, error) `perm:"web,admin"` GetValidationResults func(p0 context.Context, p1 time.Time, p2 time.Time, p3 int, p4 int) (*types.ListValidationResultRsp, error) `perm:"web,admin"` NatPunch func(p0 context.Context, p1 *types.NatPunchReq) error `perm:"default"` NodeExists func(p0 context.Context, p1 string) error `perm:"web"` NodeKeepalive func(p0 context.Context) (uuid.UUID, error) `perm:"edge,candidate"` NodeLogin func(p0 context.Context, p1 string, p2 string) (string, error) `perm:"default"` NodeRemoveAssetResult func(p0 context.Context, p1 types.RemoveAssetResult) error `perm:"edge,candidate"` NodeValidationResult func(p0 context.Context, p1 ValidationResult, p2 string) error `perm:"candidate"` PullAsset func(p0 context.Context, p1 *types.PullAssetReq) error `perm:"admin"` RePullFailedAssets func(p0 context.Context, p1 []types.AssetHash) error `perm:"admin"` RegisterNode func(p0 context.Context, p1 string, p2 types.NodeType) (string, error) `perm:"web,admin"` RemoveAssetRecord func(p0 context.Context, p1 string) error `perm:"admin"` RemoveAssetReplica func(p0 context.Context, p1 string, p2 string) error `perm:"admin"` SetEdgeUpdateConfig func(p0 context.Context, p1 *EdgeUpdateConfig) error `perm:"admin"` SubmitNodeWorkloadReport func(p0 context.Context, p1 io.Reader) error `perm:"edge,candidate"` SubmitUserWorkloadReport func(p0 context.Context, p1 io.Reader) error `perm:"default"` TriggerElection func(p0 context.Context) error `perm:"admin"` UnregisterNode func(p0 context.Context, p1 string) error `perm:"web,admin"` UpdateAssetExpiration func(p0 context.Context, p1 string, p2 time.Time) error `perm:"admin"` UpdateNodePort func(p0 context.Context, p1 string, p2 string) error `perm:"web,admin"` VerifyNodeAuthToken func(p0 context.Context, p1 string) ([]auth.Permission, error) `perm:"default"` } }
func (*SchedulerStruct) CandidateConnect ¶
func (s *SchedulerStruct) CandidateConnect(p0 context.Context, p1 *types.ConnectOptions) error
func (*SchedulerStruct) DeleteEdgeUpdateConfig ¶
func (s *SchedulerStruct) DeleteEdgeUpdateConfig(p0 context.Context, p1 int) error
func (*SchedulerStruct) EdgeConnect ¶
func (s *SchedulerStruct) EdgeConnect(p0 context.Context, p1 *types.ConnectOptions) error
func (*SchedulerStruct) GetAssetListForBucket ¶
func (*SchedulerStruct) GetAssetRecord ¶
func (s *SchedulerStruct) GetAssetRecord(p0 context.Context, p1 string) (*types.AssetRecord, error)
func (*SchedulerStruct) GetAssetRecords ¶
func (*SchedulerStruct) GetAssetReplicaInfos ¶
func (s *SchedulerStruct) GetAssetReplicaInfos(p0 context.Context, p1 types.ListReplicaInfosReq) (*types.ListReplicaInfosRsp, error)
func (*SchedulerStruct) GetAssetStatistics ¶
func (s *SchedulerStruct) GetAssetStatistics(p0 context.Context) (*types.AssetStatistics, error)
func (*SchedulerStruct) GetCandidateDownloadInfos ¶
func (s *SchedulerStruct) GetCandidateDownloadInfos(p0 context.Context, p1 string) ([]*types.CandidateDownloadInfo, error)
func (*SchedulerStruct) GetCandidateURLsForDetectNat ¶
func (s *SchedulerStruct) GetCandidateURLsForDetectNat(p0 context.Context) ([]string, error)
func (*SchedulerStruct) GetEdgeDownloadInfos ¶
func (s *SchedulerStruct) GetEdgeDownloadInfos(p0 context.Context, p1 string) (*types.EdgeDownloadInfoList, error)
func (*SchedulerStruct) GetEdgeExternalServiceAddress ¶
func (*SchedulerStruct) GetEdgeUpdateConfigs ¶
func (s *SchedulerStruct) GetEdgeUpdateConfigs(p0 context.Context) (map[int]*EdgeUpdateConfig, error)
func (*SchedulerStruct) GetExternalAddress ¶
func (s *SchedulerStruct) GetExternalAddress(p0 context.Context) (string, error)
func (*SchedulerStruct) GetNodeInfo ¶
func (*SchedulerStruct) GetNodeList ¶
func (s *SchedulerStruct) GetNodeList(p0 context.Context, p1 int, p2 int) (*types.ListNodesRsp, error)
func (*SchedulerStruct) GetOnlineNodeCount ¶
func (*SchedulerStruct) GetSchedulerPublicKey ¶
func (s *SchedulerStruct) GetSchedulerPublicKey(p0 context.Context) (string, error)
func (*SchedulerStruct) GetValidationInfo ¶
func (s *SchedulerStruct) GetValidationInfo(p0 context.Context) (*types.ValidationInfo, error)
func (*SchedulerStruct) GetValidationResults ¶
func (*SchedulerStruct) NatPunch ¶
func (s *SchedulerStruct) NatPunch(p0 context.Context, p1 *types.NatPunchReq) error
func (*SchedulerStruct) NodeExists ¶
func (s *SchedulerStruct) NodeExists(p0 context.Context, p1 string) error
func (*SchedulerStruct) NodeKeepalive ¶
func (*SchedulerStruct) NodeRemoveAssetResult ¶
func (s *SchedulerStruct) NodeRemoveAssetResult(p0 context.Context, p1 types.RemoveAssetResult) error
func (*SchedulerStruct) NodeValidationResult ¶
func (s *SchedulerStruct) NodeValidationResult(p0 context.Context, p1 ValidationResult, p2 string) error
func (*SchedulerStruct) PullAsset ¶
func (s *SchedulerStruct) PullAsset(p0 context.Context, p1 *types.PullAssetReq) error
func (*SchedulerStruct) RePullFailedAssets ¶
func (*SchedulerStruct) RegisterNode ¶
func (*SchedulerStruct) RemoveAssetRecord ¶
func (s *SchedulerStruct) RemoveAssetRecord(p0 context.Context, p1 string) error
func (*SchedulerStruct) RemoveAssetReplica ¶
func (*SchedulerStruct) SetEdgeUpdateConfig ¶
func (s *SchedulerStruct) SetEdgeUpdateConfig(p0 context.Context, p1 *EdgeUpdateConfig) error
func (*SchedulerStruct) SubmitNodeWorkloadReport ¶
func (*SchedulerStruct) SubmitUserWorkloadReport ¶
func (*SchedulerStruct) TriggerElection ¶
func (s *SchedulerStruct) TriggerElection(p0 context.Context) error
func (*SchedulerStruct) UnregisterNode ¶
func (s *SchedulerStruct) UnregisterNode(p0 context.Context, p1 string) error
func (*SchedulerStruct) UpdateAssetExpiration ¶
func (*SchedulerStruct) UpdateNodePort ¶
func (*SchedulerStruct) VerifyNodeAuthToken ¶
func (s *SchedulerStruct) VerifyNodeAuthToken(p0 context.Context, p1 string) ([]auth.Permission, error)
type SchedulerStub ¶
type SchedulerStub struct {
CommonStub
}
func (*SchedulerStub) CandidateConnect ¶
func (s *SchedulerStub) CandidateConnect(p0 context.Context, p1 *types.ConnectOptions) error
func (*SchedulerStub) DeleteEdgeUpdateConfig ¶
func (s *SchedulerStub) DeleteEdgeUpdateConfig(p0 context.Context, p1 int) error
func (*SchedulerStub) EdgeConnect ¶
func (s *SchedulerStub) EdgeConnect(p0 context.Context, p1 *types.ConnectOptions) error
func (*SchedulerStub) GetAssetListForBucket ¶
func (*SchedulerStub) GetAssetRecord ¶
func (s *SchedulerStub) GetAssetRecord(p0 context.Context, p1 string) (*types.AssetRecord, error)
func (*SchedulerStub) GetAssetRecords ¶
func (*SchedulerStub) GetAssetReplicaInfos ¶
func (s *SchedulerStub) GetAssetReplicaInfos(p0 context.Context, p1 types.ListReplicaInfosReq) (*types.ListReplicaInfosRsp, error)
func (*SchedulerStub) GetAssetStatistics ¶
func (s *SchedulerStub) GetAssetStatistics(p0 context.Context) (*types.AssetStatistics, error)
func (*SchedulerStub) GetCandidateDownloadInfos ¶
func (s *SchedulerStub) GetCandidateDownloadInfos(p0 context.Context, p1 string) ([]*types.CandidateDownloadInfo, error)
func (*SchedulerStub) GetCandidateURLsForDetectNat ¶
func (s *SchedulerStub) GetCandidateURLsForDetectNat(p0 context.Context) ([]string, error)
func (*SchedulerStub) GetEdgeDownloadInfos ¶
func (s *SchedulerStub) GetEdgeDownloadInfos(p0 context.Context, p1 string) (*types.EdgeDownloadInfoList, error)
func (*SchedulerStub) GetEdgeExternalServiceAddress ¶
func (*SchedulerStub) GetEdgeUpdateConfigs ¶
func (s *SchedulerStub) GetEdgeUpdateConfigs(p0 context.Context) (map[int]*EdgeUpdateConfig, error)
func (*SchedulerStub) GetExternalAddress ¶
func (s *SchedulerStub) GetExternalAddress(p0 context.Context) (string, error)
func (*SchedulerStub) GetNodeInfo ¶
func (*SchedulerStub) GetNodeList ¶
func (s *SchedulerStub) GetNodeList(p0 context.Context, p1 int, p2 int) (*types.ListNodesRsp, error)
func (*SchedulerStub) GetOnlineNodeCount ¶
func (*SchedulerStub) GetSchedulerPublicKey ¶
func (s *SchedulerStub) GetSchedulerPublicKey(p0 context.Context) (string, error)
func (*SchedulerStub) GetValidationInfo ¶
func (s *SchedulerStub) GetValidationInfo(p0 context.Context) (*types.ValidationInfo, error)
func (*SchedulerStub) GetValidationResults ¶
func (*SchedulerStub) NatPunch ¶
func (s *SchedulerStub) NatPunch(p0 context.Context, p1 *types.NatPunchReq) error
func (*SchedulerStub) NodeExists ¶
func (s *SchedulerStub) NodeExists(p0 context.Context, p1 string) error
func (*SchedulerStub) NodeKeepalive ¶
func (*SchedulerStub) NodeRemoveAssetResult ¶
func (s *SchedulerStub) NodeRemoveAssetResult(p0 context.Context, p1 types.RemoveAssetResult) error
func (*SchedulerStub) NodeValidationResult ¶
func (s *SchedulerStub) NodeValidationResult(p0 context.Context, p1 ValidationResult, p2 string) error
func (*SchedulerStub) PullAsset ¶
func (s *SchedulerStub) PullAsset(p0 context.Context, p1 *types.PullAssetReq) error
func (*SchedulerStub) RePullFailedAssets ¶
func (*SchedulerStub) RegisterNode ¶
func (*SchedulerStub) RemoveAssetRecord ¶
func (s *SchedulerStub) RemoveAssetRecord(p0 context.Context, p1 string) error
func (*SchedulerStub) RemoveAssetReplica ¶
func (*SchedulerStub) SetEdgeUpdateConfig ¶
func (s *SchedulerStub) SetEdgeUpdateConfig(p0 context.Context, p1 *EdgeUpdateConfig) error
func (*SchedulerStub) SubmitNodeWorkloadReport ¶
func (*SchedulerStub) SubmitUserWorkloadReport ¶
func (*SchedulerStub) TriggerElection ¶
func (s *SchedulerStub) TriggerElection(p0 context.Context) error
func (*SchedulerStub) UnregisterNode ¶
func (s *SchedulerStub) UnregisterNode(p0 context.Context, p1 string) error
func (*SchedulerStub) UpdateAssetExpiration ¶
func (*SchedulerStub) UpdateNodePort ¶
func (*SchedulerStub) VerifyNodeAuthToken ¶
func (s *SchedulerStub) VerifyNodeAuthToken(p0 context.Context, p1 string) ([]auth.Permission, error)
type TCPMsgType ¶
type TCPMsgType int
TODO: new tcp package, add these to tcp package candidate use tcp server to validate edge
const ( TCPMsgTypeNodeID TCPMsgType = iota + 1 TCPMsgTypeBlock TCPMsgTypeCancel )
type ValidateReq ¶
type ValidateReq struct { // TCPSrvAddr Candidate tcp server address TCPSrvAddr string RandomSeed int64 Duration int }
ValidateReq represents the request parameters for validation
type Validation ¶
type Validation interface { // ExecuteValidation check node asset and bandwidth ExecuteValidation(ctx context.Context, req *ValidateReq) error //perm:admin }
Validation is an interface for validate-related operations
type ValidationResult ¶
type ValidationResult struct { Validator string CID string // verification canceled due to download IsCancel bool NodeID string Bandwidth float64 // seconds duration CostTime int64 IsTimeout bool // key is random index // values is cid Cids []string // The number of random for validator RandomCount int }
ValidationResult node Validation result
type ValidationStruct ¶
type ValidationStruct struct { Internal struct { ExecuteValidation func(p0 context.Context, p1 *ValidateReq) error `perm:"admin"` } }
func (*ValidationStruct) ExecuteValidation ¶
func (s *ValidationStruct) ExecuteValidation(p0 context.Context, p1 *ValidateReq) error
type ValidationStub ¶
type ValidationStub struct { }
func (*ValidationStub) ExecuteValidation ¶
func (s *ValidationStub) ExecuteValidation(p0 context.Context, p1 *ValidateReq) error