diff options
| -rw-r--r-- | repository/write_loose.go | 49 | ||||
| -rw-r--r-- | repository/write_loose_test.go | 8 |
2 files changed, 7 insertions, 50 deletions
diff --git a/repository/write_loose.go b/repository/write_loose.go index 9784ef25..86f73e52 100644 --- a/repository/write_loose.go +++ b/repository/write_loose.go @@ -1,52 +1,9 @@ package repository import ( - "bytes" - "fmt" - "io" - - "codeberg.org/lindenii/furgit/objectid" - "codeberg.org/lindenii/furgit/objecttype" + objectloose "codeberg.org/lindenii/furgit/objectstore/loose" ) -// WriteLooseBytesFull writes one loose object from raw "type size\0content". -func (repo *Repository) WriteLooseBytesFull(raw []byte) (objectid.ObjectID, error) { - id, err := repo.objectsLooseForWritingOnly.WriteReaderFull(bytes.NewReader(raw)) - if err != nil { - return objectid.ObjectID{}, fmt.Errorf("repository: write loose full bytes: %w", err) - } - - return id, nil -} - -// WriteLooseBytesContent writes one loose object from typed content bytes. -func (repo *Repository) WriteLooseBytesContent(ty objecttype.Type, content []byte) (objectid.ObjectID, error) { - id, err := repo.objectsLooseForWritingOnly.WriteReaderContent(ty, int64(len(content)), bytes.NewReader(content)) - if err != nil { - return objectid.ObjectID{}, fmt.Errorf("repository: write loose content bytes: %w", err) - } - - return id, nil -} - -// WriteLooseReaderFull writes one loose object from raw bytes -// "type size\0content" read from src. -func (repo *Repository) WriteLooseReaderFull(src io.Reader) (objectid.ObjectID, error) { - id, err := repo.objectsLooseForWritingOnly.WriteReaderFull(src) - if err != nil { - return objectid.ObjectID{}, fmt.Errorf("repository: write loose full reader: %w", err) - } - - return id, nil -} - -// WriteLooseReaderContent writes one loose object from typed content bytes read -// from src. src must provide exactly size bytes. -func (repo *Repository) WriteLooseReaderContent(ty objecttype.Type, size int64, src io.Reader) (objectid.ObjectID, error) { - id, err := repo.objectsLooseForWritingOnly.WriteReaderContent(ty, size, src) - if err != nil { - return objectid.ObjectID{}, fmt.Errorf("repository: write loose content reader: %w", err) - } - - return id, nil +func (repo *Repository) LooseStoreForWriting() *objectloose.Store { + return repo.objectsLooseForWritingOnly } diff --git a/repository/write_loose_test.go b/repository/write_loose_test.go index c9a36961..6cd9b8a1 100644 --- a/repository/write_loose_test.go +++ b/repository/write_loose_test.go @@ -37,7 +37,7 @@ func TestWriteLooseBytesContent(t *testing.T) { content := []byte("write-loose-bytes-content\n") - gotID, err := repo.WriteLooseBytesContent(objecttype.TypeBlob, content) + gotID, err := repo.LooseStoreForWriting().WriteBytesContent(objecttype.TypeBlob, content) if err != nil { t.Fatalf("WriteLooseBytesContent: %v", err) } @@ -88,7 +88,7 @@ func TestWriteLooseReaderContent(t *testing.T) { content := []byte("write-loose-reader-content\n") - gotID, err := repo.WriteLooseReaderContent(objecttype.TypeBlob, int64(len(content)), bytes.NewReader(content)) + gotID, err := repo.LooseStoreForWriting().WriteReaderContent(objecttype.TypeBlob, int64(len(content)), bytes.NewReader(content)) if err != nil { t.Fatalf("WriteLooseReaderContent: %v", err) } @@ -130,7 +130,7 @@ func TestWriteLooseFull(t *testing.T) { t.Fatalf("ReadStoredBytesFull: %v", err) } - idFromBytes, err := repo.WriteLooseBytesFull(raw) + idFromBytes, err := repo.LooseStoreForWriting().WriteBytesFull(raw) if err != nil { t.Fatalf("WriteLooseBytesFull: %v", err) } @@ -139,7 +139,7 @@ func TestWriteLooseFull(t *testing.T) { t.Fatalf("WriteLooseBytesFull id = %s, want %s", idFromBytes, commitID) } - idFromReader, err := repo.WriteLooseReaderFull(bytes.NewReader(raw)) + idFromReader, err := repo.LooseStoreForWriting().WriteReaderFull(bytes.NewReader(raw)) if err != nil { t.Fatalf("WriteLooseReaderFull: %v", err) } |
