Commit Graph

154 Commits

Author SHA1 Message Date
Derrick Hammer 0e2ef0969a
refactor: change FileReference.DecodeMsgpack to use an empty map wrapper for exp and history if they were not decoded, we don't want them nil 2024-01-05 06:10:29 -05:00
Derrick Hammer c5fb8a2c15
refactor: change FileReference.EncodeMsgpack to use new map wrappers, and don't serialize ext or history if empty 2024-01-05 06:08:55 -05:00
Derrick Hammer c328cb1f1b
refactor: use map struct wrappers for and ext, fileHistory, and add serialization methods for them 2024-01-05 06:07:44 -05:00
Derrick Hammer a10bec66ea
refactor: allow unmarshalMapMsgpack to handle int maps 2024-01-05 06:05:59 -05:00
Derrick Hammer 6c27a978d1
refactor: add more type cases to marshallMapMsgpack 2024-01-05 06:04:46 -05:00
Derrick Hammer c3a696138a
refactor: move directoryReferenceMap and fileReferenceMap to its own file 2024-01-05 04:43:46 -05:00
Derrick Hammer d39f959e31
fix: ensure we always serialize an empty map if nil 2024-01-05 04:35:20 -05:00
Derrick Hammer 15030b6866
refactor: use a linked hash map to keep order of file and directory entries, and refactor the json and msgpack marshalling and centralize it further 2024-01-05 03:46:08 -05:00
Derrick Hammer 85320087a4
fix: need to pack with int, not int8 2024-01-04 13:49:23 -05:00
Derrick Hammer 261c88b568
fix: don't call encode inside EncodeMsgpack, ensure its delegated to the custom marshalers 2024-01-04 13:49:07 -05:00
Derrick Hammer c5c4bbfb6e
fix: missing return Encode 2024-01-04 13:48:17 -05:00
Derrick Hammer 2ac5ff60be
refactor: need to abstract DirectoryMetadata maps to their own types to properly handle msgpack serialization 2024-01-04 12:41:39 -05:00
Derrick Hammer 9f2e17bf54
refactor: centralize code more 2024-01-04 10:50:08 -05:00
Derrick Hammer df4cadf797
refactor: put shared serialization code in private encode method, and update json and msgpack to use it 2024-01-04 10:33:57 -05:00
Derrick Hammer c5441b2e16
chore: remove commented code 2024-01-04 10:27:56 -05:00
Derrick Hammer bd3cbc694f
fix: wrong json name for PlaintextCID 2024-01-04 10:27:23 -05:00
Derrick Hammer 53af084864
refactor: update ExtraMetadata MarshalJSON and add UnmarshalJSON 2024-01-04 10:26:44 -05:00
Derrick Hammer 026a7dc10e
fix: need to export Encoder for test cases 2024-01-04 10:08:13 -05:00
Derrick Hammer e6034b9aae
refactor: move UnmarshalBase64UrlJSON to encoding to prevent an import loop 2024-01-04 09:51:35 -05:00
Derrick Hammer 039fbc1867
refactor: export ErrMultibaseEncodingNotSupported 2024-01-04 09:50:11 -05:00
Derrick Hammer d907fddde8
fix: need to cast to Base64UrlBinary 2024-01-04 08:57:58 -05:00
Derrick Hammer bd1a1084d3
feat: add metadata types 2024-01-04 08:21:39 -05:00
Derrick Hammer bebea5a7e1
feat: add serialize package 2024-01-04 08:21:19 -05:00
Derrick Hammer c2ed126ab8
feat: wip directory metadata 2024-01-04 08:20:37 -05:00
Derrick Hammer eed785e1eb
dep: add deps 2024-01-04 08:19:56 -05:00
Derrick Hammer 722dd7d014
refactor: change marshaling 2024-01-04 08:19:26 -05:00
Derrick Hammer 05fb104990
feat: add msfpack marshal support to encoding 2024-01-04 07:44:09 -05:00
Derrick Hammer 4457dff415
feat: add json marshal support to encoding 2024-01-04 04:19:24 -05:00
Derrick Hammer 5e0b9db382
refactor: move test consts under testdata folder in pkg 2024-01-04 02:51:05 -05:00
Derrick Hammer e19016be9d
feat: add directory cid type 2024-01-04 02:24:15 -05:00
Derrick Hammer 21ad88d55e
refactor: add NodeIdCode type 2024-01-03 15:28:40 -05:00
Derrick Hammer 989cb82a01
fix: EncryptedCID FromBytes needs to be prefixed with class name 2024-01-03 15:28:05 -05:00
Derrick Hammer 6d943b3b2e
fix: OriginalCID needs to be public 2024-01-03 15:27:35 -05:00
Derrick Hammer 576161fbf8
feat: add EncryptedCID 2024-01-03 08:46:30 -05:00
Derrick Hammer 1b30048a75
refactor: unify all encoding packages 2024-01-03 08:36:23 -05:00
Derrick Hammer 355de2b65f
refactor: make HashCode a generic utility 2024-01-03 08:27:04 -05:00
Derrick Hammer 3a251479e1
feat: add NodeId 2024-01-03 08:21:48 -05:00
Derrick Hammer 56be9082c3
refactor: add custom type to use in maps MultihashCode 2024-01-03 08:20:03 -05:00
Derrick Hammer 93e0ce02f5
feat: add ed25519 package 2024-01-03 08:11:26 -05:00
Derrick Hammer aa48eb8ac4
feat: add CID 2024-01-03 07:18:19 -05:00
Derrick Hammer 38044bf297
feat: update test data 2024-01-03 07:18:04 -05:00
Derrick Hammer 977b764904
fix: buffer the bytes incase its less than 4 2024-01-03 07:17:37 -05:00
Derrick Hammer 50dd9251c2
feat: add utils package 2024-01-03 04:56:10 -05:00
Derrick Hammer 834c964892
refactor: move multibase to its own subpackage 2024-01-03 04:43:34 -05:00
Derrick Hammer c44c11d264
refactor: rename constructor 2024-01-03 04:00:21 -05:00
Derrick Hammer 208f50324a
feat: add type maps 2024-01-03 03:57:39 -05:00
Derrick Hammer 8b25f9d349
chore: LICENSE 2024-01-03 03:48:50 -05:00
Derrick Hammer 8f0218169e
chore: go.mod 2024-01-03 03:48:39 -05:00
Derrick Hammer ee15a298a4
feat: initial Multibase 2024-01-03 03:48:19 -05:00
Derrick Hammer 3d4fdfb9e3
feat: initial Multihash 2024-01-03 03:47:47 -05:00