Skip to content
This repository was archived by the owner on Feb 12, 2024. It is now read-only.

Commit c6ef176

Browse files
author
Alan Shaw
committed
refactor: convert object API to async/await
1 parent ed5e9ef commit c6ef176

File tree

15 files changed

+370
-306
lines changed

15 files changed

+370
-306
lines changed

src/core/components/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ exports.bitswap = {
99
exports.config = require('./config')
1010
exports.id = require('./id')
1111
exports.init = require('./init')
12+
exports.object = require('./object')
1213
exports.ping = require('./ping')
1314
exports.start = require('./start')
1415
exports.stop = require('./stop')
@@ -17,6 +18,5 @@ exports.version = require('./version')
1718
exports.legacy = { // TODO: these will be removed as the new API is completed
1819
dag: require('./dag'),
1920
libp2p: require('./libp2p'),
20-
object: require('./object'),
2121
pin: require('./pin')
2222
}

src/core/components/init.js

+17-1
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,20 @@ module.exports = ({
102102
})
103103

104104
const dag = Commands.legacy.dag({ _ipld: ipld, _preload: preload })
105-
const object = Commands.legacy.object({ _ipld: ipld, _preload: preload, dag, _gcLock: gcLock })
105+
const object = {
106+
data: Commands.object.data({ ipld, preload }),
107+
get: Commands.object.get({ ipld, preload }),
108+
links: Commands.object.links({ dag }),
109+
new: Commands.object.new({ ipld, preload }),
110+
patch: {
111+
addLink: Commands.object.patch.addLink({ ipld, gcLock, preload }),
112+
appendData: Commands.object.patch.appendData({ ipld, gcLock, preload }),
113+
rmLink: Commands.object.patch.rmLink({ ipld, gcLock, preload }),
114+
setData: Commands.object.patch.setData({ ipld, gcLock, preload })
115+
},
116+
put: Commands.object.put({ ipld, gcLock, preload }),
117+
stat: Commands.object.stat({ ipld, preload })
118+
}
106119

107120
const pinManager = new PinManager(repo, dag)
108121
await pinManager.load()
@@ -134,6 +147,7 @@ module.exports = ({
134147
initOptions: options,
135148
ipld,
136149
keychain,
150+
object,
137151
peerInfo,
138152
pinManager,
139153
preload,
@@ -276,6 +290,7 @@ function createApi ({
276290
initOptions,
277291
ipld,
278292
keychain,
293+
object,
279294
peerInfo,
280295
pinManager,
281296
preload,
@@ -302,6 +317,7 @@ function createApi ({
302317
config: Commands.config({ repo }),
303318
id: Commands.id({ peerInfo }),
304319
init: () => { throw new AlreadyInitializedError() },
320+
object,
305321
start,
306322
version: Commands.version({ repo })
307323
}

src/core/components/object.js

-302
This file was deleted.

src/core/components/object/data.js

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
'use strict'
2+
3+
module.exports = ({ ipld, preload }) => {
4+
const get = require('./get')({ ipld, preload })
5+
return async function data (multihash, options) {
6+
const node = await get(multihash, options)
7+
return node.Data
8+
}
9+
}

0 commit comments

Comments
 (0)