|
@@ -19,6 +19,21 @@ func GetDB(path string) (*bolt.DB, error) {
|
|
return db, err
|
|
return db, err
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+func (c *ClICtrl) GetInt64ConfigValue(ctx context.Context, key string) (int64, error) {
|
|
|
|
+ value, err := c.GetConfigValue(ctx, key)
|
|
|
|
+ if err != nil {
|
|
|
|
+ return 0, err
|
|
|
|
+ }
|
|
|
|
+ var result int64
|
|
|
|
+ if value != nil {
|
|
|
|
+ result, err = strconv.ParseInt(string(value), 10, 64)
|
|
|
|
+ if err != nil {
|
|
|
|
+ return 0, err
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return result, nil
|
|
|
|
+}
|
|
|
|
+
|
|
func (c *ClICtrl) GetConfigValue(ctx context.Context, key string) ([]byte, error) {
|
|
func (c *ClICtrl) GetConfigValue(ctx context.Context, key string) ([]byte, error) {
|
|
var value []byte
|
|
var value []byte
|
|
err := c.DB.View(func(tx *bolt.Tx) error {
|
|
err := c.DB.View(func(tx *bolt.Tx) error {
|
|
@@ -32,19 +47,20 @@ func (c *ClICtrl) GetConfigValue(ctx context.Context, key string) ([]byte, error
|
|
return value, err
|
|
return value, err
|
|
}
|
|
}
|
|
|
|
|
|
-func (c *ClICtrl) GetInt64ConfigValue(ctx context.Context, key string) (int64, error) {
|
|
|
|
- value, err := c.GetConfigValue(ctx, key)
|
|
|
|
- if err != nil {
|
|
|
|
- return 0, err
|
|
|
|
- }
|
|
|
|
- var result int64
|
|
|
|
- if value != nil {
|
|
|
|
- result, err = strconv.ParseInt(string(value), 10, 64)
|
|
|
|
|
|
+func (c *ClICtrl) GetAllValues(ctx context.Context, store model.PhotosStore) ([][]byte, error) {
|
|
|
|
+ result := make([][]byte, 0)
|
|
|
|
+ err := c.DB.View(func(tx *bolt.Tx) error {
|
|
|
|
+ kvBucket, err := getAccountStore(ctx, tx, store)
|
|
if err != nil {
|
|
if err != nil {
|
|
- return 0, err
|
|
|
|
|
|
+ return err
|
|
}
|
|
}
|
|
- }
|
|
|
|
- return result, nil
|
|
|
|
|
|
+ kvBucket.ForEach(func(k, v []byte) error {
|
|
|
|
+ result = append(result, v)
|
|
|
|
+ return nil
|
|
|
|
+ })
|
|
|
|
+ return nil
|
|
|
|
+ })
|
|
|
|
+ return result, err
|
|
}
|
|
}
|
|
|
|
|
|
func (c *ClICtrl) PutConfigValue(ctx context.Context, key string, value []byte) error {
|
|
func (c *ClICtrl) PutConfigValue(ctx context.Context, key string, value []byte) error {
|
|
@@ -65,7 +81,6 @@ func (c *ClICtrl) PutValue(ctx context.Context, store model.PhotosStore, key []b
|
|
return kvBucket.Put(key, value)
|
|
return kvBucket.Put(key, value)
|
|
})
|
|
})
|
|
}
|
|
}
|
|
-
|
|
|
|
func getAccountStore(ctx context.Context, tx *bolt.Tx, storeType model.PhotosStore) (*bolt.Bucket, error) {
|
|
func getAccountStore(ctx context.Context, tx *bolt.Tx, storeType model.PhotosStore) (*bolt.Bucket, error) {
|
|
accountId := ctx.Value("account_id").(string)
|
|
accountId := ctx.Value("account_id").(string)
|
|
accountBucket := tx.Bucket([]byte(accountId))
|
|
accountBucket := tx.Bucket([]byte(accountId))
|