Browse Source

定义storage几个feature的接口

gitlink
Sydonian 1 year ago
parent
commit
5fdd222aaa
5 changed files with 35 additions and 15 deletions
  1. +4
    -0
      common/pkgs/storage/shard/pool/pool.go
  2. +0
    -12
      common/pkgs/storage/shard/storages/local/config.go
  3. +14
    -3
      common/pkgs/storage/shard/storages/local/local.go
  4. +13
    -0
      common/pkgs/storage/temp/local.go
  5. +4
    -0
      common/pkgs/storage/temp/temp_store.go

+ 4
- 0
common/pkgs/storage/shard/pool/pool.go View File

@@ -12,6 +12,10 @@ func New() *ShardStorePool {


} }


func (p *ShardStorePool) PutNew(stg cdssdk.Storage, config cdssdk.ShardStoreConfig) error {

}

func (p *ShardStorePool) Get(stgID cdssdk.StorageID) (types.ShardStore, error) { func (p *ShardStorePool) Get(stgID cdssdk.StorageID) (types.ShardStore, error) {


} }

+ 0
- 12
common/pkgs/storage/shard/storages/local/config.go View File

@@ -1,12 +0,0 @@
package local

import "gitlink.org.cn/cloudream/storage/common/pkgs/shardstore/types"

type Config struct {
RootPath string
MaxSize int64
}

func (c *Config) Build() types.ShardStore {
return &Local{cfg: *c}
}

+ 14
- 3
common/pkgs/storage/shard/storages/local/local.go View File

@@ -3,11 +3,18 @@ package local
import ( import (
"io" "io"


"gitlink.org.cn/cloudream/storage/common/pkgs/shardstore/types"
cdssdk "gitlink.org.cn/cloudream/common/sdks/storage"
"gitlink.org.cn/cloudream/storage/common/pkgs/storage/shard/types"
) )


type Local struct { type Local struct {
cfg Config
cfg cdssdk.LocalShardStorage
}

func New(stg cdssdk.Storage, cfg cdssdk.LocalShardStorage) *Local {
return &Local{
cfg: cfg,
}
} }


func (s *Local) New() io.Writer { func (s *Local) New() io.Writer {
@@ -24,7 +31,11 @@ func (s *Local) Remove(hash types.FileHash) error {
} }


// 遍历所有文件,callback返回false则停止遍历 // 遍历所有文件,callback返回false则停止遍历
func (s *Local) Walk(callback func(info types.FileInfo) bool) error {
func (s *Local) ListAll() ([]types.FileInfo, error) {

}

func (s *Local) Purge(availables []types.FileHash) error {


} }




+ 13
- 0
common/pkgs/storage/temp/local.go View File

@@ -0,0 +1,13 @@
package tempstore

import cdssdk "gitlink.org.cn/cloudream/common/sdks/storage"

type LocalTempStore struct {
cfg cdssdk.BypassUploadFeature
}

func NewLocalTempStore(cfg cdssdk.BypassUploadFeature) *LocalTempStore {
return &LocalTempStore{
cfg: cfg,
}
}

+ 4
- 0
common/pkgs/storage/temp/temp_store.go View File

@@ -0,0 +1,4 @@
package tempstore

type TempStore interface {
}

Loading…
Cancel
Save