forked from TrueCloudLab/frostfs-node
[#1064] putsvc: Add EC put
Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
This commit is contained in:
parent
39da643354
commit
1c5e0f90aa
11 changed files with 452 additions and 23 deletions
23
pkg/services/object/put/writer.go
Normal file
23
pkg/services/object/put/writer.go
Normal file
|
@ -0,0 +1,23 @@
|
|||
package putsvc
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"git.frostfs.info/TrueCloudLab/frostfs-node/pkg/core/object"
|
||||
objectSDK "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/object"
|
||||
"git.frostfs.info/TrueCloudLab/frostfs-sdk-go/object/transformer"
|
||||
)
|
||||
|
||||
var _ transformer.ObjectWriter = (*objectWriterDispatcher)(nil)
|
||||
|
||||
type objectWriterDispatcher struct {
|
||||
ecWriter transformer.ObjectWriter
|
||||
repWriter transformer.ObjectWriter
|
||||
}
|
||||
|
||||
func (m *objectWriterDispatcher) WriteObject(ctx context.Context, obj *objectSDK.Object) error {
|
||||
if object.IsECSupported(obj) {
|
||||
return m.ecWriter.WriteObject(ctx, obj)
|
||||
}
|
||||
return m.repWriter.WriteObject(ctx, obj)
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue