| @@ -1,12 +1,12 @@ | |||||
| package task | package task | ||||
| import ( | import ( | ||||
| distsvc "gitlink.org.cn/cloudream/common/pkgs/distlock/service" | |||||
| "gitlink.org.cn/cloudream/common/pkgs/distlock" | |||||
| "gitlink.org.cn/cloudream/common/pkgs/task" | "gitlink.org.cn/cloudream/common/pkgs/task" | ||||
| ) | ) | ||||
| type TaskContext struct { | type TaskContext struct { | ||||
| distlock *distsvc.Service | |||||
| distlock *distlock.Service | |||||
| } | } | ||||
| // 需要在Task结束后主动调用,completing函数将在Manager加锁期间被调用, | // 需要在Task结束后主动调用,completing函数将在Manager加锁期间被调用, | ||||
| @@ -21,7 +21,7 @@ type Task = task.Task[TaskContext] | |||||
| type CompleteOption = task.CompleteOption | type CompleteOption = task.CompleteOption | ||||
| func NewManager(distlock *distsvc.Service) Manager { | |||||
| func NewManager(distlock *distlock.Service) Manager { | |||||
| return task.NewManager(TaskContext{ | return task.NewManager(TaskContext{ | ||||
| distlock: distlock, | distlock: distlock, | ||||
| }) | }) | ||||
| @@ -59,7 +59,8 @@ func parseOneLock(lockData string) (distlock.Lock, error) { | |||||
| } | } | ||||
| func DistLockUnlock(ctx CommandContext, reqID string) error { | func DistLockUnlock(ctx CommandContext, reqID string) error { | ||||
| return ctx.Cmdline.Svc.DistLock.Release(reqID) | |||||
| ctx.Cmdline.Svc.DistLock.Release(reqID) | |||||
| return nil | |||||
| } | } | ||||
| func init() { | func init() { | ||||
| @@ -1,7 +1,7 @@ | |||||
| package services | package services | ||||
| import ( | import ( | ||||
| distlock "gitlink.org.cn/cloudream/common/pkgs/distlock/service" | |||||
| "gitlink.org.cn/cloudream/common/pkgs/distlock" | |||||
| "gitlink.org.cn/cloudream/storage/client/internal/task" | "gitlink.org.cn/cloudream/storage/client/internal/task" | ||||
| ) | ) | ||||
| @@ -1,12 +1,12 @@ | |||||
| package task | package task | ||||
| import ( | import ( | ||||
| distsvc "gitlink.org.cn/cloudream/common/pkgs/distlock/service" | |||||
| "gitlink.org.cn/cloudream/common/pkgs/distlock" | |||||
| "gitlink.org.cn/cloudream/common/pkgs/task" | "gitlink.org.cn/cloudream/common/pkgs/task" | ||||
| ) | ) | ||||
| type TaskContext struct { | type TaskContext struct { | ||||
| distlock *distsvc.Service | |||||
| distlock *distlock.Service | |||||
| } | } | ||||
| // 需要在Task结束后主动调用,completing函数将在Manager加锁期间被调用, | // 需要在Task结束后主动调用,completing函数将在Manager加锁期间被调用, | ||||
| @@ -21,7 +21,7 @@ type Task = task.Task[TaskContext] | |||||
| type CompleteOption = task.CompleteOption | type CompleteOption = task.CompleteOption | ||||
| func NewManager(distlock *distsvc.Service) Manager { | |||||
| func NewManager(distlock *distlock.Service) Manager { | |||||
| return task.NewManager(TaskContext{ | return task.NewManager(TaskContext{ | ||||
| distlock: distlock, | distlock: distlock, | ||||
| }) | }) | ||||
| @@ -7,7 +7,7 @@ import ( | |||||
| "time" | "time" | ||||
| "github.com/samber/lo" | "github.com/samber/lo" | ||||
| distsvc "gitlink.org.cn/cloudream/common/pkgs/distlock/service" | |||||
| "gitlink.org.cn/cloudream/common/pkgs/distlock" | |||||
| "gitlink.org.cn/cloudream/common/pkgs/logger" | "gitlink.org.cn/cloudream/common/pkgs/logger" | ||||
| stgsdk "gitlink.org.cn/cloudream/common/sdks/storage" | stgsdk "gitlink.org.cn/cloudream/common/sdks/storage" | ||||
| @@ -34,7 +34,7 @@ type CreateRepPackage struct { | |||||
| } | } | ||||
| type UpdatePackageContext struct { | type UpdatePackageContext struct { | ||||
| Distlock *distsvc.Service | |||||
| Distlock *distlock.Service | |||||
| } | } | ||||
| type CreateRepPackageResult struct { | type CreateRepPackageResult struct { | ||||
| @@ -8,7 +8,7 @@ import ( | |||||
| stgsdk "gitlink.org.cn/cloudream/common/sdks/storage" | stgsdk "gitlink.org.cn/cloudream/common/sdks/storage" | ||||
| distsvc "gitlink.org.cn/cloudream/common/pkgs/distlock/service" | |||||
| "gitlink.org.cn/cloudream/common/pkgs/distlock" | |||||
| stgglb "gitlink.org.cn/cloudream/storage/common/globals" | stgglb "gitlink.org.cn/cloudream/storage/common/globals" | ||||
| "gitlink.org.cn/cloudream/storage/common/pkgs/db/model" | "gitlink.org.cn/cloudream/storage/common/pkgs/db/model" | ||||
| "gitlink.org.cn/cloudream/storage/common/pkgs/iterator" | "gitlink.org.cn/cloudream/storage/common/pkgs/iterator" | ||||
| @@ -22,7 +22,7 @@ type DownloadPackage struct { | |||||
| } | } | ||||
| type DownloadPackageContext struct { | type DownloadPackageContext struct { | ||||
| Distlock *distsvc.Service | |||||
| Distlock *distlock.Service | |||||
| } | } | ||||
| func NewDownloadPackage(userID int64, packageID int64, outputPath string) *DownloadPackage { | func NewDownloadPackage(userID int64, packageID int64, outputPath string) *DownloadPackage { | ||||
| @@ -2,7 +2,6 @@ package reqbuilder | |||||
| import ( | import ( | ||||
| "gitlink.org.cn/cloudream/common/pkgs/distlock" | "gitlink.org.cn/cloudream/common/pkgs/distlock" | ||||
| "gitlink.org.cn/cloudream/common/pkgs/distlock/service" | |||||
| mylo "gitlink.org.cn/cloudream/common/utils/lo" | mylo "gitlink.org.cn/cloudream/common/utils/lo" | ||||
| ) | ) | ||||
| @@ -20,8 +19,8 @@ func (b *LockRequestBuilder) Build() distlock.LockRequest { | |||||
| } | } | ||||
| } | } | ||||
| func (b *LockRequestBuilder) MutexLock(svc *service.Service) (*service.Mutex, error) { | |||||
| mutex := service.NewMutex(svc, b.Build()) | |||||
| func (b *LockRequestBuilder) MutexLock(svc *distlock.Service) (*distlock.Mutex, error) { | |||||
| mutex := distlock.NewMutex(svc, b.Build()) | |||||
| err := mutex.Lock() | err := mutex.Lock() | ||||
| if err != nil { | if err != nil { | ||||
| return nil, err | return nil, err | ||||
| @@ -2,15 +2,14 @@ package distlock | |||||
| import ( | import ( | ||||
| "gitlink.org.cn/cloudream/common/pkgs/distlock" | "gitlink.org.cn/cloudream/common/pkgs/distlock" | ||||
| "gitlink.org.cn/cloudream/common/pkgs/distlock/service" | |||||
| "gitlink.org.cn/cloudream/common/pkgs/trie" | "gitlink.org.cn/cloudream/common/pkgs/trie" | ||||
| "gitlink.org.cn/cloudream/storage/common/pkgs/distlock/lockprovider" | "gitlink.org.cn/cloudream/storage/common/pkgs/distlock/lockprovider" | ||||
| ) | ) | ||||
| type Service = service.Service | |||||
| type Service = distlock.Service | |||||
| func NewService(cfg *distlock.Config) (*service.Service, error) { | |||||
| srv, err := service.NewService(cfg, initProviders()) | |||||
| func NewService(cfg *distlock.Config) (*distlock.Service, error) { | |||||
| srv, err := distlock.NewService(cfg, initProviders()) | |||||
| if err != nil { | if err != nil { | ||||
| return nil, err | return nil, err | ||||
| } | } | ||||
| @@ -18,8 +17,8 @@ func NewService(cfg *distlock.Config) (*service.Service, error) { | |||||
| return srv, nil | return srv, nil | ||||
| } | } | ||||
| func initProviders() []service.PathProvider { | |||||
| var provs []service.PathProvider | |||||
| func initProviders() []distlock.PathProvider { | |||||
| var provs []distlock.PathProvider | |||||
| provs = append(provs, initMetadataLockProviders()...) | provs = append(provs, initMetadataLockProviders()...) | ||||
| @@ -30,33 +29,33 @@ func initProviders() []service.PathProvider { | |||||
| return provs | return provs | ||||
| } | } | ||||
| func initMetadataLockProviders() []service.PathProvider { | |||||
| return []service.PathProvider{ | |||||
| service.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "Node"), | |||||
| service.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "Storage"), | |||||
| service.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "User"), | |||||
| service.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "UserBucket"), | |||||
| service.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "UserNode"), | |||||
| service.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "UserStorage"), | |||||
| service.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "Bucket"), | |||||
| service.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "Object"), | |||||
| service.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "Package"), | |||||
| service.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "ObjectRep"), | |||||
| service.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "ObjectBlock"), | |||||
| service.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "Cache"), | |||||
| service.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "StoragePackage"), | |||||
| service.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "Location"), | |||||
| func initMetadataLockProviders() []distlock.PathProvider { | |||||
| return []distlock.PathProvider{ | |||||
| distlock.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "Node"), | |||||
| distlock.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "Storage"), | |||||
| distlock.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "User"), | |||||
| distlock.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "UserBucket"), | |||||
| distlock.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "UserNode"), | |||||
| distlock.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "UserStorage"), | |||||
| distlock.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "Bucket"), | |||||
| distlock.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "Object"), | |||||
| distlock.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "Package"), | |||||
| distlock.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "ObjectRep"), | |||||
| distlock.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "ObjectBlock"), | |||||
| distlock.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "Cache"), | |||||
| distlock.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "StoragePackage"), | |||||
| distlock.NewPathProvider(lockprovider.NewMetadataLock(), lockprovider.MetadataLockPathPrefix, "Location"), | |||||
| } | } | ||||
| } | } | ||||
| func initIPFSLockProviders() []service.PathProvider { | |||||
| return []service.PathProvider{ | |||||
| service.NewPathProvider(lockprovider.NewIPFSLock(), lockprovider.IPFSLockPathPrefix, trie.WORD_ANY), | |||||
| func initIPFSLockProviders() []distlock.PathProvider { | |||||
| return []distlock.PathProvider{ | |||||
| distlock.NewPathProvider(lockprovider.NewIPFSLock(), lockprovider.IPFSLockPathPrefix, trie.WORD_ANY), | |||||
| } | } | ||||
| } | } | ||||
| func initStorageLockProviders() []service.PathProvider { | |||||
| return []service.PathProvider{ | |||||
| service.NewPathProvider(lockprovider.NewStorageLock(), lockprovider.StorageLockPathPrefix, trie.WORD_ANY), | |||||
| func initStorageLockProviders() []distlock.PathProvider { | |||||
| return []distlock.PathProvider{ | |||||
| distlock.NewPathProvider(lockprovider.NewStorageLock(), lockprovider.StorageLockPathPrefix, trie.WORD_ANY), | |||||
| } | } | ||||
| } | } | ||||
| @@ -7,7 +7,7 @@ import ( | |||||
| "github.com/samber/lo" | "github.com/samber/lo" | ||||
| distsvc "gitlink.org.cn/cloudream/common/pkgs/distlock/service" | |||||
| "gitlink.org.cn/cloudream/common/pkgs/distlock" | |||||
| "gitlink.org.cn/cloudream/common/pkgs/logger" | "gitlink.org.cn/cloudream/common/pkgs/logger" | ||||
| myio "gitlink.org.cn/cloudream/common/utils/io" | myio "gitlink.org.cn/cloudream/common/utils/io" | ||||
| @@ -43,7 +43,7 @@ type DownloadNodeInfo struct { | |||||
| } | } | ||||
| type DownloadContext struct { | type DownloadContext struct { | ||||
| Distlock *distsvc.Service | |||||
| Distlock *distlock.Service | |||||
| } | } | ||||
| func NewRepObjectIterator(objects []model.Object, objectRepData []stgmod.ObjectRepData, downloadCtx *DownloadContext) *RepObjectIterator { | func NewRepObjectIterator(objects []model.Object, objectRepData []stgmod.ObjectRepData, downloadCtx *DownloadContext) *RepObjectIterator { | ||||
| @@ -4,7 +4,7 @@ import ( | |||||
| "fmt" | "fmt" | ||||
| "reflect" | "reflect" | ||||
| distlocksvc "gitlink.org.cn/cloudream/common/pkgs/distlock/service" | |||||
| "gitlink.org.cn/cloudream/common/pkgs/distlock" | |||||
| event "gitlink.org.cn/cloudream/common/pkgs/event" | event "gitlink.org.cn/cloudream/common/pkgs/event" | ||||
| "gitlink.org.cn/cloudream/common/pkgs/typedispatcher" | "gitlink.org.cn/cloudream/common/pkgs/typedispatcher" | ||||
| mydb "gitlink.org.cn/cloudream/storage/common/pkgs/db" | mydb "gitlink.org.cn/cloudream/storage/common/pkgs/db" | ||||
| @@ -13,7 +13,7 @@ import ( | |||||
| type ExecuteArgs struct { | type ExecuteArgs struct { | ||||
| DB *mydb.DB | DB *mydb.DB | ||||
| DistLock *distlocksvc.Service | |||||
| DistLock *distlock.Service | |||||
| } | } | ||||
| type Executor = event.Executor[ExecuteArgs] | type Executor = event.Executor[ExecuteArgs] | ||||
| @@ -24,7 +24,7 @@ type Event = event.Event[ExecuteArgs] | |||||
| type ExecuteOption = event.ExecuteOption | type ExecuteOption = event.ExecuteOption | ||||
| func NewExecutor(db *mydb.DB, distLock *distlocksvc.Service) Executor { | |||||
| func NewExecutor(db *mydb.DB, distLock *distlock.Service) Executor { | |||||
| return event.NewExecutor(ExecuteArgs{ | return event.NewExecutor(ExecuteArgs{ | ||||
| DB: db, | DB: db, | ||||
| DistLock: distLock, | DistLock: distLock, | ||||