@@ -388,9 +388,9 @@ func (kr *kopiaRepository) Close(ctx context.Context) error {
388388 return nil
389389}
390390
391- func (kr * kopiaRepository ) NewObjectWriter (ctx context.Context , opt udmrepo.ObjectWriteOptions ) udmrepo.ObjectWriter {
391+ func (kr * kopiaRepository ) NewObjectWriter (ctx context.Context , opt udmrepo.ObjectWriteOptions ) ( udmrepo.ObjectWriter , error ) {
392392 if kr .rawWriter == nil {
393- return nil
393+ return nil , errors . New ( "repo writer is closed or not open" )
394394 }
395395
396396 writer := kr .rawWriter .NewObjectWriter (kopia .SetupKopiaLog (ctx , kr .logger ), object.WriterOptions {
@@ -402,12 +402,22 @@ func (kr *kopiaRepository) NewObjectWriter(ctx context.Context, opt udmrepo.Obje
402402 })
403403
404404 if writer == nil {
405- return nil
405+ return nil , errors . Errorf ( "error creating writer for object %s" , opt . Description )
406406 }
407407
408408 return & kopiaObjectWriter {
409409 rawWriter : writer ,
410- }
410+ }, nil
411+ }
412+
413+ // TODO add implementation in following PRs
414+ func (kr * kopiaRepository ) WriteMetadata (ctx context.Context , meta * udmrepo.Metadata , opt udmrepo.ObjectWriteOptions ) (udmrepo.ID , error ) {
415+ return "" , errors .New ("not supported" )
416+ }
417+
418+ // TODO add implementation in following PRs
419+ func (kr * kopiaRepository ) ReadMetadata (ctx context.Context , id udmrepo.ID ) (* udmrepo.Metadata , error ) {
420+ return nil , errors .New ("not supported" )
411421}
412422
413423func (kr * kopiaRepository ) PutManifest (ctx context.Context , manifest udmrepo.RepoManifest ) (udmrepo.ID , error ) {
@@ -436,6 +446,21 @@ func (kr *kopiaRepository) DeleteManifest(ctx context.Context, id udmrepo.ID) er
436446 return nil
437447}
438448
449+ // TODO add implementation in following PRs
450+ func (kr * kopiaRepository ) SaveSnapshot (ctx context.Context , snap udmrepo.Snapshot ) (udmrepo.ID , error ) {
451+ return "" , errors .New ("not supported" )
452+ }
453+
454+ // TODO add implementation in following PRs
455+ func (kr * kopiaRepository ) GetSnapshot (ctx context.Context , id udmrepo.ID ) (udmrepo.Snapshot , error ) {
456+ return udmrepo.Snapshot {}, errors .New ("not supported" )
457+ }
458+
459+ // TODO add implementation in following PRs
460+ func (kr * kopiaRepository ) DeleteSnapshot (ctx context.Context , id udmrepo.ID ) error {
461+ return errors .New ("not supported" )
462+ }
463+
439464func (kr * kopiaRepository ) Flush (ctx context.Context ) error {
440465 if kr .rawWriter == nil {
441466 return errors .New ("repo writer is closed or not open" )
@@ -546,8 +571,9 @@ func (kow *kopiaObjectWriter) Write(p []byte) (int, error) {
546571 return kow .rawWriter .Write (p )
547572}
548573
549- func (kow * kopiaObjectWriter ) Seek (offset int64 , whence int ) (int64 , error ) {
550- return - 1 , errors .New ("not supported" )
574+ // TODO add implementation in following PRs
575+ func (kow * kopiaObjectWriter ) WriteAt (p []byte , offset int64 ) (int , error ) {
576+ return 0 , errors .New ("not supported" )
551577}
552578
553579func (kow * kopiaObjectWriter ) Checkpoint () (udmrepo.ID , error ) {
0 commit comments