diff --git a/encoding/cid.go b/encoding/cid.go index 440bf04..6f665ad 100644 --- a/encoding/cid.go +++ b/encoding/cid.go @@ -47,7 +47,7 @@ func (cid *CID) getPrefixBytes() []byte { func (cid *CID) ToBytes() []byte { if cid.Type == types.CIDTypeBridge { - return cid.Hash.FullBytes + return cid.Hash.fullBytes } else if cid.Type == types.CIDTypeRaw { sizeBytes := utils.EncodeEndian(cid.Size, 8) @@ -58,10 +58,10 @@ func (cid *CID) ToBytes() []byte { sizeBytes = []byte{0} } - return utils.ConcatBytes(cid.getPrefixBytes(), cid.Hash.FullBytes, sizeBytes) + return utils.ConcatBytes(cid.getPrefixBytes(), cid.Hash.fullBytes, sizeBytes) } - return utils.ConcatBytes(cid.getPrefixBytes(), cid.Hash.FullBytes) + return utils.ConcatBytes(cid.getPrefixBytes(), cid.Hash.fullBytes) } func Decode(cid string) (*CID, error) { diff --git a/encoding/encrypted_cid.go b/encoding/encrypted_cid.go index 79da39d..5e528e5 100644 --- a/encoding/encrypted_cid.go +++ b/encoding/encrypted_cid.go @@ -76,7 +76,7 @@ func (c *EncryptedCID) ToBytes() []byte { c.encryptionAlgorithm, byte(c.chunkSizeAsPowerOf2), } - data = append(data, c.encryptedBlobHash.FullBytes...) + data = append(data, c.encryptedBlobHash.fullBytes...) data = append(data, c.encryptionKey...) data = append(data, utils.EncodeEndian(c.padding, 4)...) data = append(data, c.OriginalCID.ToBytes()...) diff --git a/encoding/multihash.go b/encoding/multihash.go index 81cf1fb..6e2361d 100644 --- a/encoding/multihash.go +++ b/encoding/multihash.go @@ -19,22 +19,26 @@ var ( type MultihashCode = int type Multihash struct { - FullBytes []byte + fullBytes []byte +} + +func (m *Multihash) FullBytes() []byte { + return m.fullBytes } var _ json.Marshaler = (*Multihash)(nil) var _ json.Unmarshaler = (*Multihash)(nil) func NewMultihash(fullBytes []byte) *Multihash { - return &Multihash{FullBytes: fullBytes} + return &Multihash{fullBytes: fullBytes} } func (m *Multihash) FunctionType() types.HashType { - return types.HashType(m.FullBytes[0]) + return types.HashType(m.fullBytes[0]) } func (m *Multihash) HashBytes() []byte { - return m.FullBytes[1:] + return m.fullBytes[1:] } func MultihashFromBase64Url(hash string) (*Multihash, error) { @@ -53,26 +57,26 @@ func MultihashFromBase64Url(hash string) (*Multihash, error) { } func (m *Multihash) ToBase64Url() (string, error) { - return bases.ToBase64Url(m.FullBytes) + return bases.ToBase64Url(m.fullBytes) } func (m *Multihash) ToBase32() (string, error) { - return bases.ToBase32(m.FullBytes) + return bases.ToBase32(m.fullBytes) } func (m *Multihash) ToString() (string, error) { if m.FunctionType() == types.HashType(types.CIDTypeBridge) { - return string(m.FullBytes), nil // Assumes the bytes are valid UTF-8 + return string(m.fullBytes), nil // Assumes the bytes are valid UTF-8 } return m.ToBase64Url() } func (m *Multihash) Equals(other *Multihash) bool { - return bytes.Equal(m.FullBytes, other.FullBytes) + return bytes.Equal(m.fullBytes, other.fullBytes) } func (m *Multihash) HashCode() MultihashCode { - return utils.HashCode(m.FullBytes[:4]) + return utils.HashCode(m.fullBytes[:4]) } func (b *Multihash) UnmarshalJSON(data []byte) error { @@ -81,7 +85,7 @@ func (b *Multihash) UnmarshalJSON(data []byte) error { return err } - b.FullBytes = decodedData + b.fullBytes = decodedData return nil } func (b Multihash) MarshalJSON() ([]byte, error) { diff --git a/encoding/multihash_test.go b/encoding/multihash_test.go index bd1b0bb..a038c92 100644 --- a/encoding/multihash_test.go +++ b/encoding/multihash_test.go @@ -21,7 +21,7 @@ func TestFromBase64Url(t *testing.T) { { name: "Valid Base64 URL Encoded String", args: args{hash: testdata.MediaBase64CID}, - want: &Multihash{FullBytes: testdata.MediaCIDBytes}, + want: &Multihash{fullBytes: testdata.MediaCIDBytes}, wantErr: false, }, { @@ -51,7 +51,7 @@ func TestFromBase64Url(t *testing.T) { { name: "Long String", args: args{hash: "uYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFh"}, - want: &Multihash{FullBytes: []byte(strings.Repeat("a", 750))}, + want: &Multihash{fullBytes: []byte(strings.Repeat("a", 750))}, wantErr: false, }, } @@ -95,7 +95,7 @@ func TestMultihash_FunctionType(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { m := &Multihash{ - FullBytes: tt.fields.FullBytes, + fullBytes: tt.fields.FullBytes, } if got := m.FunctionType(); got != tt.want { t.Errorf("FunctionType() = %v, want %v", got, tt.want) @@ -131,7 +131,7 @@ func TestMultihash_ToBase32(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { m := &Multihash{ - FullBytes: tt.fields.FullBytes, + fullBytes: tt.fields.FullBytes, } got, err := m.ToBase32() if (err != nil) != tt.wantErr { @@ -172,7 +172,7 @@ func TestMultihash_ToBase64Url(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { m := &Multihash{ - FullBytes: tt.fields.FullBytes, + fullBytes: tt.fields.FullBytes, } got, err := m.ToBase64Url() if (err != nil) != tt.wantErr { @@ -198,7 +198,7 @@ func TestNewMultihash(t *testing.T) { { name: "Valid Base64 URL Encoded String", args: args{fullBytes: testdata.RawCIDBytes}, - want: &Multihash{FullBytes: testdata.RawCIDBytes}, + want: &Multihash{fullBytes: testdata.RawCIDBytes}, }, } for _, tt := range tests { diff --git a/metadata/file_version.go b/metadata/file_version.go index 4ea2015..0ad7f99 100644 --- a/metadata/file_version.go +++ b/metadata/file_version.go @@ -43,7 +43,7 @@ func (fv *FileVersion) EncodeMsgpack(enc *msgpack.Encoder) error { if len(fv.Hashes) > 0 { hashesData := make([][]byte, len(fv.Hashes)) for i, hash := range fv.Hashes { - hashesData[i] = hash.FullBytes + hashesData[i] = hash.FullBytes() } fmap.Put(9, hashesData) }