Class: ConnectedLdoDataset\<Plugins>
A ConnectedLdoDataset has all the functionality of a LdoDataset with the added functionality of keeping track of fetched remote Resources.
It is recommended to use the createConnectedLdoDataset to initialize this class.
Example
import { createConnectedLdoDataset } from "@ldo/connected";
import { ProfileShapeType } from "./.ldo/profile.shapeTypes.ts"
// At least one plugin needs to be provided to a ConnectedLdoDataset. In this
// example we'll use both the Solid and NextGraph plugins.
import { solidConnectedPlugin } from "@ldo/connected-solid";
import { nextGraphConnectedPlugin } from "@ldo/connected-nextgraph";
// ...
const connectedLdoDataset = createConnectedLdoDataset([
solidConnectedPlugin,
nextGraphConnectedPlugin
]);
const profileDocument = connectedLdoDataset
.getResource("https://example.com/profile");
await profileDocument.read();
const profile = connectedLdoDataset
.using(ProfileShapeType)
.fromSubject("https://example.com/profile#me");
Type parameters
Name | Type |
---|---|
Plugins |
extends ConnectedPlugin \<any , any , any , any >[] |
Hierarchy
LdoDataset
↳ ConnectedLdoDataset
Implements
IConnectedLdoDataset
\<Plugins
>
Constructors
constructor
• new ConnectedLdoDataset\<Plugins
>(plugins
, datasetFactory
, transactionDatasetFactory
, initialDataset?
): ConnectedLdoDataset
\<Plugins
>
It is recommended to use the createConnectedLdoDataset
function to
instantiate a ConnectedLdoDataset.
Type parameters
Name | Type |
---|---|
Plugins |
extends ConnectedPlugin \<any , any , any , any , any >[] |
Parameters
Name | Type | Description |
---|---|---|
plugins |
Plugins |
An array of plugins for each platform to connect to |
datasetFactory |
DatasetFactory \<Quad , Quad , Dataset \<Quad , Quad >> |
Creates Datasets |
transactionDatasetFactory |
ITransactionDatasetFactory \<Quad > |
Creates Transaction Datasets |
initialDataset? |
Dataset \<Quad , Quad > |
Initial quads |
Returns
ConnectedLdoDataset
\<Plugins
>
Overrides
LdoDataset.constructor
Defined in
packages/connected/src/ConnectedLdoDataset.ts:86
Properties
context
• Protected
context: ConnectedContext
\<Plugins
>
Context for each plugin (usually utilities for authentication)
Defined in
packages/connected/src/ConnectedLdoDataset.ts:75
dataset
• Protected
dataset: DatasetCore
\<Quad
, Quad
>
Implementation of
Inherited from
LdoDataset.dataset
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:3
datasetCoreFactory
• Protected
datasetCoreFactory: DatasetCoreFactory
\<Quad
, Quad
, DatasetCore
\<Quad
, Quad
>>
Implementation of
IConnectedLdoDataset.datasetCoreFactory
Inherited from
LdoDataset.datasetCoreFactory
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:4
datasetFactory
• Protected
datasetFactory: DatasetFactory
\<Quad
, Quad
, Dataset
\<Quad
, Quad
>>
Implementation of
IConnectedLdoDataset.datasetFactory
Inherited from
LdoDataset.datasetFactory
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:8
eventEmitter
• Protected
eventEmitter: EventEmitter
\<DefaultEventMap
>
Implementation of
IConnectedLdoDataset.eventEmitter
Inherited from
LdoDataset.eventEmitter
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:9
plugins
• Private
plugins: Plugins
A list of plugins used by this dataset
Defined in
packages/connected/src/ConnectedLdoDataset.ts:62
resourceMap
• Protected
resourceMap: Map
\<string
, Plugins
[number
]["types"
]["resource"
]>
A mapping between a resource URI and a resource
Defined in
packages/connected/src/ConnectedLdoDataset.ts:68
transactionDatasetFactory
• Protected
transactionDatasetFactory: ITransactionDatasetFactory
\<Quad
>
Implementation of
IConnectedLdoDataset.transactionDatasetFactory
Inherited from
LdoDataset.transactionDatasetFactory
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:10
Accessors
size
• get
size(): number
Returns
number
Implementation of
IConnectedLdoDataset.size
Inherited from
LdoDataset.size
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:26
Methods
[iterator]
▸ [iterator](): Iterator
\<Quad
, Quad
, undefined
>
Returns
Iterator
\<Quad
, Quad
, undefined
>
Implementation of
IConnectedLdoDataset.[iterator]
Inherited from
LdoDataset.[iterator]
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:30
add
▸ add(quad
): this
Parameters
Name | Type |
---|---|
quad |
Quad |
Returns
this
Implementation of
Inherited from
LdoDataset.add
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:17
addAll
▸ addAll(quads
): this
Parameters
Name | Type |
---|---|
quads |
Quad [] | Dataset \<Quad , Quad > |
Returns
this
Implementation of
Inherited from
LdoDataset.addAll
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:14
addListener
▸ addListener(eventName
, listener
): this
Parameters
Name | Type |
---|---|
eventName |
QuadMatch |
listener |
nodeEventListener \<Quad > |
Returns
this
Implementation of
IConnectedLdoDataset.addListener
Inherited from
LdoDataset.addListener
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:20
bulk
▸ bulk(changed
): this
Parameters
Name | Type |
---|---|
changed |
DatasetChanges \<Quad > |
Returns
this
Implementation of
Inherited from
LdoDataset.bulk
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:15
contains
▸ contains(other
): boolean
Parameters
Name | Type |
---|---|
other |
Dataset \<Quad , Quad > |
Returns
boolean
Implementation of
Inherited from
LdoDataset.contains
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:8
createData
▸ createData\<Type
>(shapeType
, subject
, resource
, ...additionalResources
): Type
Shorthand for connectedLdoDataset .usingType(shapeType) .write(...resources.map((r) => r.uri)) .fromSubject(subject);
Type parameters
Name | Type |
---|---|
Type |
extends LdoBase |
Parameters
Name | Type | Description |
---|---|---|
shapeType |
ShapeType \<Type > |
The shapetype to represent the data |
subject |
string | SubjectNode |
A subject URI |
resource |
Plugins [number ]["types" ]["resource" ] |
- |
...additionalResources |
Plugins [number ]["types" ]["resource" ][] |
- |
Returns
Type
Example
import { ProfielShapeType } from "./.ldo/foafProfile.shapeType.ts"
const resource = connectedLdoDataset
.getResource("https://example.com/profile");
const profile = connectedLdoDataset.createData(
ProfileShapeType,
"https://example.com/profile#me",
resource
);
Defined in
packages/connected/src/ConnectedLdoDataset.ts:261
createResource
▸ createResource\<Name
, Plugin
>(pluginName
, createResourceOptions?
): Promise
\<ReturnType
\<Plugin
["createResource"
]>>
Generates a random uri and creates a resource.
Type parameters
Name | Type |
---|---|
Name |
extends any |
Plugin |
extends ConnectedPlugin \<any , any , any , any , any > |
Parameters
Name | Type | Description |
---|---|---|
pluginName |
Name |
A string name for the platform you'd like to create the resource on. |
createResourceOptions? |
Plugin ["types" ]["createResourceOptions" ] |
Some set of options specific to the plugin you've selected. |
Returns
Promise
\<ReturnType
\<Plugin
["createResource"
]>>
A created resource or an error
Example
Implementation of
IConnectedLdoDataset.createResource
Defined in
packages/connected/src/ConnectedLdoDataset.ts:188
delete
▸ delete(quad
): this
Parameters
Name | Type |
---|---|
quad |
Quad |
Returns
this
Implementation of
Inherited from
LdoDataset.delete
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:18
deleteMatches
▸ deleteMatches(subject?
, predicate?
, object?
, graph?
): this
Parameters
Name | Type |
---|---|
subject? |
Term |
predicate? |
Term |
object? |
Term |
graph? |
Term |
Returns
this
Implementation of
IConnectedLdoDataset.deleteMatches
Inherited from
LdoDataset.deleteMatches
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:16
difference
▸ difference(other
): Dataset
\<Quad
, Quad
>
Parameters
Name | Type |
---|---|
other |
DatasetCore \<Quad , Quad > |
Returns
Dataset
\<Quad
, Quad
>
Implementation of
IConnectedLdoDataset.difference
Inherited from
LdoDataset.difference
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:10
emit
▸ emit(eventName
, changes
): boolean
Parameters
Name | Type |
---|---|
eventName |
QuadMatch |
changes |
DatasetChanges \<Quad > |
Returns
boolean
Implementation of
Inherited from
LdoDataset.emit
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:21
equals
▸ equals(other
): boolean
Parameters
Name | Type |
---|---|
other |
Dataset \<Quad , Quad > |
Returns
boolean
Implementation of
Inherited from
LdoDataset.equals
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:11
eventNames
▸ eventNames(): QuadMatch
[]
Returns
QuadMatch
[]
Implementation of
IConnectedLdoDataset.eventNames
Inherited from
LdoDataset.eventNames
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:22
every
▸ every(iteratee
): boolean
Parameters
Name | Type |
---|---|
iteratee |
(quad : Quad , dataset : this ) => boolean |
Returns
boolean
Implementation of
Inherited from
LdoDataset.every
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:12
filter
▸ filter(iteratee
): Dataset
\<Quad
, Quad
>
Parameters
Name | Type |
---|---|
iteratee |
(quad : Quad , dataset : this ) => boolean |
Returns
Dataset
\<Quad
, Quad
>
Implementation of
Inherited from
LdoDataset.filter
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:13
forEach
▸ forEach(iteratee
): void
Parameters
Name | Type |
---|---|
iteratee |
(quad : Quad , dataset : this ) => void |
Returns
void
Implementation of
Inherited from
LdoDataset.forEach
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:14
forgetAllResources
▸ forgetAllResources(): void
Removes all resources from memory
Returns
void
Example
Implementation of
IConnectedLdoDataset.forgetAllResources
Defined in
packages/connected/src/ConnectedLdoDataset.ts:235
forgetResource
▸ forgetResource(uri
): boolean
Removes a resource from local memory
Parameters
Name | Type | Description |
---|---|---|
uri |
string |
the URI of the resource to remove |
Returns
boolean
true if the resource was present before removal
Example
Implementation of
IConnectedLdoDataset.forgetResource
Defined in
packages/connected/src/ConnectedLdoDataset.ts:221
getFetchedResources
▸ getFetchedResources(): GetResourceReturnType
\<Plugins
[number
], string
>[]
Retireves a representation of all Resources that have been fetched.
Returns
GetResourceReturnType
\<Plugins
[number
], string
>[]
a Resource array
Example
Implementation of
IConnectedLdoDataset.getFetchedResources
Defined in
packages/connected/src/ConnectedLdoDataset.ts:169
getMaxListeners
▸ getMaxListeners(): number
Returns
number
Implementation of
IConnectedLdoDataset.getMaxListeners
Inherited from
LdoDataset.getMaxListeners
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:23
getResource
▸ getResource\<Name
, Plugin
, UriType
>(uri
, pluginName?
): GetResourceReturnType
\<Plugin
, UriType
>
Retireves a representation of a Resource at the given URI. This resource represents the current state of the resource: whether it is currently fetched or in the process of fetching as well as some information about it.
Type parameters
Name | Type |
---|---|
Name |
extends any |
Plugin |
extends ConnectedPlugin \<any , any , any , any , any > |
UriType |
extends string |
Parameters
Name | Type | Description |
---|---|---|
uri |
UriType |
the URI of the resource |
pluginName? |
Name |
optionally, force this function to choose a specific plugin to use rather than perform content negotiation. |
Returns
GetResourceReturnType
\<Plugin
, UriType
>
a Resource
Example
Implementation of
IConnectedLdoDataset.getResource
Defined in
packages/connected/src/ConnectedLdoDataset.ts:147
getResources
▸ getResources(): GetResourceReturnType
\<Plugins
[number
], string
>[]
Retireves a representation of all Resources referenced by this dataset
This does not necessarily mean that it's been fetched (use the
getFetchedResources
method for that). It simply means that at one point
it was referenced.
Returns
GetResourceReturnType
\<Plugins
[number
], string
>[]
a Resource array
Example
Implementation of
IConnectedLdoDataset.getResources
Defined in
packages/connected/src/ConnectedLdoDataset.ts:165
getValidPlugin
▸ getValidPlugin(uri
, pluginName?
): undefined
| Plugins
[number
]
A helper function to return a plugin based in the plugin name and uri.
Parameters
Name | Type |
---|---|
uri |
string |
pluginName? |
string |
Returns
undefined
| Plugins
[number
]
Defined in
packages/connected/src/ConnectedLdoDataset.ts:110
has
▸ has(quad
): boolean
Parameters
Name | Type |
---|---|
quad |
Quad |
Returns
boolean
Implementation of
Inherited from
LdoDataset.has
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:29
import
▸ import(stream
): Promise
\<ConnectedLdoDataset
\<Plugins
>>
Parameters
Name | Type |
---|---|
stream |
Stream \<Quad > |
Returns
Promise
\<ConnectedLdoDataset
\<Plugins
>>
Implementation of
Inherited from
LdoDataset.import
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:15
intersection
▸ intersection(other
): Dataset
\<Quad
, Quad
>
Parameters
Name | Type |
---|---|
other |
Dataset \<Quad , Quad > |
Returns
Dataset
\<Quad
, Quad
>
Implementation of
IConnectedLdoDataset.intersection
Inherited from
LdoDataset.intersection
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:16
listenerCount
▸ listenerCount(eventName
): number
Parameters
Name | Type |
---|---|
eventName |
QuadMatch |
Returns
number
Implementation of
IConnectedLdoDataset.listenerCount
Inherited from
LdoDataset.listenerCount
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:24
listeners
▸ listeners(eventName
): nodeEventListener
\<Quad
>[]
Parameters
Name | Type |
---|---|
eventName |
QuadMatch |
Returns
nodeEventListener
\<Quad
>[]
Implementation of
IConnectedLdoDataset.listeners
Inherited from
LdoDataset.listeners
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:25
map
▸ map(iteratee
): Dataset
\<Quad
, Quad
>
Parameters
Name | Type |
---|---|
iteratee |
(quad : Quad , dataset : this ) => Quad |
Returns
Dataset
\<Quad
, Quad
>
Implementation of
Inherited from
LdoDataset.map
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:17
match
▸ match(subject?
, predicate?
, object?
, graph?
): Dataset
\<Quad
, Quad
>
Parameters
Name | Type |
---|---|
subject? |
null | Term |
predicate? |
null | Term |
object? |
null | Term |
graph? |
null | Term |
Returns
Dataset
\<Quad
, Quad
>
Implementation of
Inherited from
LdoDataset.match
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:25
off
▸ off(eventName
, listener
): void
Parameters
Name | Type |
---|---|
eventName |
QuadMatch |
listener |
nodeEventListener \<Quad > |
Returns
void
Implementation of
Inherited from
LdoDataset.off
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:26
on
▸ on(eventName
, listener
): this
Parameters
Name | Type |
---|---|
eventName |
QuadMatch |
listener |
nodeEventListener \<Quad > |
Returns
this
Implementation of
Inherited from
LdoDataset.on
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:27
once
▸ once(eventName
, listener
): this
Parameters
Name | Type |
---|---|
eventName |
QuadMatch |
listener |
nodeEventListener \<Quad > |
Returns
this
Implementation of
Inherited from
LdoDataset.once
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:28
prependListener
▸ prependListener(eventName
, listener
): this
Parameters
Name | Type |
---|---|
eventName |
QuadMatch |
listener |
nodeEventListener \<Quad > |
Returns
this
Implementation of
IConnectedLdoDataset.prependListener
Inherited from
LdoDataset.prependListener
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:29
prependOnceListener
▸ prependOnceListener(eventName
, listener
): this
Parameters
Name | Type |
---|---|
eventName |
QuadMatch |
listener |
nodeEventListener \<Quad > |
Returns
this
Implementation of
IConnectedLdoDataset.prependOnceListener
Inherited from
LdoDataset.prependOnceListener
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:30
rawListeners
▸ rawListeners(eventName
): nodeEventListener
\<Quad
>[]
Parameters
Name | Type |
---|---|
eventName |
QuadMatch |
Returns
nodeEventListener
\<Quad
>[]
Implementation of
IConnectedLdoDataset.rawListeners
Inherited from
LdoDataset.rawListeners
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:35
reduce
▸ reduce\<A
>(iteratee
, initialValue?
): A
Type parameters
Name | Type |
---|---|
A |
unknown |
Parameters
Name | Type |
---|---|
iteratee |
(accumulator : A , quad : Quad , dataset : this ) => A |
initialValue? |
A |
Returns
A
Implementation of
Inherited from
LdoDataset.reduce
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:18
removeAllListeners
▸ removeAllListeners(eventName
): this
Parameters
Name | Type |
---|---|
eventName |
QuadMatch |
Returns
this
Implementation of
IConnectedLdoDataset.removeAllListeners
Inherited from
LdoDataset.removeAllListeners
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:31
removeListener
▸ removeListener(eventName
, listener
): this
Parameters
Name | Type |
---|---|
eventName |
QuadMatch |
listener |
nodeEventListener \<Quad > |
Returns
this
Implementation of
IConnectedLdoDataset.removeListener
Inherited from
LdoDataset.removeListener
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:32
removeListenerFromAllEvents
▸ removeListenerFromAllEvents(listener
): this
Parameters
Name | Type |
---|---|
listener |
nodeEventListener \<Quad > |
Returns
this
Implementation of
IConnectedLdoDataset.removeListenerFromAllEvents
Inherited from
LdoDataset.removeListenerFromAllEvents
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:33
setContext
▸ setContext\<Name
, Plugin
>(pluginName
, context
): void
Sets conetext for a specific plugin
Type parameters
Name | Type |
---|---|
Name |
extends any |
Plugin |
extends ConnectedPlugin \<any , any , any , any , any > |
Parameters
Name | Type | Description |
---|---|---|
pluginName |
Name |
the name of the plugin |
context |
Plugin ["types" ]["context" ] |
the context for this specific plugin |
Returns
void
Implementation of
IConnectedLdoDataset.setContext
Defined in
packages/connected/src/ConnectedLdoDataset.ts:281
setMaxListeners
▸ setMaxListeners(n
): this
Parameters
Name | Type |
---|---|
n |
number |
Returns
this
Implementation of
IConnectedLdoDataset.setMaxListeners
Inherited from
LdoDataset.setMaxListeners
Defined in
packages/subscribable-dataset/dist/SubscribableDataset.d.ts:34
some
▸ some(iteratee
): boolean
Parameters
Name | Type |
---|---|
iteratee |
(quad : Quad , dataset : this ) => boolean |
Returns
boolean
Implementation of
Inherited from
LdoDataset.some
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:19
startTransaction
▸ startTransaction(): ConnectedLdoTransactionDataset
\<Plugins
>
Returns
ConnectedLdoTransactionDataset
\<Plugins
>
Implementation of
IConnectedLdoDataset.startTransaction
Overrides
LdoDataset.startTransaction
Defined in
packages/connected/src/ConnectedLdoDataset.ts:297
toArray
▸ toArray(): Quad
[]
Returns
Quad
[]
Implementation of
Inherited from
LdoDataset.toArray
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:20
toCanonical
▸ toCanonical(): string
Returns
string
Implementation of
IConnectedLdoDataset.toCanonical
Inherited from
LdoDataset.toCanonical
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:21
toStream
▸ toStream(): Stream
\<Quad
>
Returns
Stream
\<Quad
>
Implementation of
Inherited from
LdoDataset.toStream
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:22
toString
▸ toString(): string
Returns
string
Implementation of
Inherited from
LdoDataset.toString
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:23
union
▸ union(other
): Dataset
\<Quad
, Quad
>
Parameters
Name | Type |
---|---|
other |
Dataset \<Quad , Quad > |
Returns
Dataset
\<Quad
, Quad
>
Implementation of
Inherited from
LdoDataset.union
Defined in
packages/dataset/dist/ExtendedDataset.d.ts:24
usingType
▸ usingType\<Type
>(shapeType
): ConnectedLdoBuilder
\<Type
, Plugins
>
Type parameters
Name | Type |
---|---|
Type |
extends LdoBase |
Parameters
Name | Type |
---|---|
shapeType |
ShapeType \<Type > |
Returns
ConnectedLdoBuilder
\<Type
, Plugins
>
Implementation of
IConnectedLdoDataset.usingType
Overrides
LdoDataset.usingType