mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-05-21 09:21:15 +00:00
Some checks are pending
/ release (push) Waiting to run
testing / backend-checks (push) Has been skipped
testing / frontend-checks (push) Has been skipped
testing / test-unit (push) Has been skipped
testing / test-e2e (push) Has been skipped
testing / test-mysql (push) Has been skipped
testing / test-pgsql (push) Has been skipped
testing / test-sqlite (push) Has been skipped
testing / test-remote-cacher (redis) (push) Has been skipped
testing / test-remote-cacher (valkey) (push) Has been skipped
testing / test-remote-cacher (garnet) (push) Has been skipped
testing / test-remote-cacher (redict) (push) Has been skipped
testing / security-check (push) Has been skipped
cherry-pick from the forgefriends fork, except for the F3 API for mirroring which is a functional change that is not safe enough to introduce in Forgejo.
Refs: 3aad1f4e64
---
The motivation is to keep up-to-date with the rather large refactor of gof3. The changes are syntactic only and test is provided by the compliance suite.
Co-authored-by: limiting-factor <limiting-factor@posteo.com>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7258
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
43 lines
912 B
Go
43 lines
912 B
Go
// Copyright Earl Warren <contact@earl-warren.org>
|
|
// Copyright Loïc Dachary <loic@dachary.org>
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package driver
|
|
|
|
import (
|
|
"context"
|
|
|
|
"code.forgejo.org/f3/gof3/v3/f3"
|
|
f3_id "code.forgejo.org/f3/gof3/v3/id"
|
|
f3_tree "code.forgejo.org/f3/gof3/v3/tree/f3"
|
|
)
|
|
|
|
type container struct {
|
|
common
|
|
}
|
|
|
|
func (o *container) NewFormat() f3.Interface {
|
|
node := o.GetNode()
|
|
return node.GetTree().(f3_tree.TreeInterface).NewFormat(node.GetKind())
|
|
}
|
|
|
|
func (o *container) ToFormat() f3.Interface {
|
|
return o.NewFormat()
|
|
}
|
|
|
|
func (o *container) FromFormat(content f3.Interface) {
|
|
}
|
|
|
|
func (o *container) Get(context.Context) bool { return true }
|
|
|
|
func (o *container) Put(ctx context.Context) f3_id.NodeID {
|
|
return o.upsert(ctx)
|
|
}
|
|
|
|
func (o *container) Patch(ctx context.Context) {
|
|
o.upsert(ctx)
|
|
}
|
|
|
|
func (o *container) upsert(context.Context) f3_id.NodeID {
|
|
return f3_id.NewNodeID(o.getKind())
|
|
}
|