Skip to content

Class: ConnectedLdoTransactionDataset\<Plugins>

A ConnectedLdoTransactionDataset has all the functionality of a ConnectedLdoDataset and represents a transaction to the parent ConnectedLdoDataset.

It is recommended to use the startTransaction method on a SolidLdoDataset to initialize this class

Example

import { createConnectedLdoDataset } from "@ldo/connected";
import { ProfileShapeType } from "./_ldo/profile.shapeTypes.ts"
import { solidConnectedPlugin } from "connected-solid";

// ...

const connectedLdoDataset = createConnectedLdoDataset([
  solidConnectedPlugin
]);

const profileDocument = connectedLdoDataset
  .getResource("https://example.com/profile");
await profileDocument.read();

const transaction = connectedLdoDataset.startTransaction();

const profile = transaction
  .using(ProfileShapeType)
  .fromSubject("https://example.com/profile#me");
profile.name = "Some Name";
const result = await transaction.commitToRemote();
if (result.isError) {
  // handle error
}

Type parameters

Name Type
Plugins extends ConnectedPlugin[]

Hierarchy

  • LdoTransactionDataset

↳ ConnectedLdoTransactionDataset

Implements

Constructors

constructor

• new ConnectedLdoTransactionDataset\<Plugins>(parentDataset, context, datasetFactory, transactionDatasetFactory): ConnectedLdoTransactionDataset\<Plugins>

Type parameters

Name Type
Plugins extends ConnectedPlugin\<any, any, any, any, any>[]

Parameters

Name Type Description
parentDataset IConnectedLdoDataset\<Plugins> -
context ConnectedContext\<Plugins> SolidLdoDatasetContext
datasetFactory DatasetFactory\<Quad, Quad, Dataset\<Quad, Quad>> An optional dataset factory
transactionDatasetFactory ITransactionDatasetFactory\<Quad> A factory for creating transaction datasets

Returns

ConnectedLdoTransactionDataset\<Plugins>

Overrides

LdoTransactionDataset.constructor

Defined in

packages/connected/src/ConnectedLdoTransactionDataset.ts:86

Properties

context

• context: ConnectedContext\<Plugins>

Defined in

packages/connected/src/ConnectedLdoTransactionDataset.ts:71


dataset

• Protected dataset: DatasetCore\<Quad, Quad>

Implementation of

IConnectedLdoDataset.dataset

Inherited from

LdoTransactionDataset.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

LdoTransactionDataset.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

LdoTransactionDataset.datasetFactory

Defined in

packages/subscribable-dataset/dist/SubscribableDataset.d.ts:8


eventEmitter

• Protected eventEmitter: EventEmitter\<DefaultEventMap>

Implementation of

IConnectedLdoDataset.eventEmitter

Inherited from

LdoTransactionDataset.eventEmitter

Defined in

packages/subscribable-dataset/dist/SubscribableDataset.d.ts:9


parentDataset

• Readonly parentDataset: Dataset\<Quad, Quad>

Inherited from

LdoTransactionDataset.parentDataset

Defined in

packages/subscribable-dataset/dist/TransactionDataset.d.ts:6


resourceMap

• Protected resourceMap: Map\<string, Plugins[number]["types"]["resource"]>

Serves no purpose

Defined in

packages/connected/src/ConnectedLdoTransactionDataset.ts:77


transactionDatasetFactory

• Protected transactionDatasetFactory: ITransactionDatasetFactory\<Quad>

Implementation of

IConnectedLdoDataset.transactionDatasetFactory

Inherited from

LdoTransactionDataset.transactionDatasetFactory

Defined in

packages/subscribable-dataset/dist/SubscribableDataset.d.ts:10

Accessors

size

• get size(): number

Returns

number

Implementation of

IConnectedLdoDataset.size

Inherited from

LdoTransactionDataset.size

Defined in

packages/subscribable-dataset/dist/TransactionDataset.d.ts:14

Methods

[iterator]

▸ [iterator](): Iterator\<Quad, any, undefined>

Returns

Iterator\<Quad, any, undefined>

Implementation of

IConnectedLdoDataset.[iterator]

Inherited from

LdoTransactionDataset.[iterator]

Defined in

packages/subscribable-dataset/dist/TransactionDataset.d.ts:18


add

▸ add(quad): this

Parameters

Name Type
quad Quad

Returns

this

Implementation of

IConnectedLdoDataset.add

Inherited from

LdoTransactionDataset.add

Defined in

packages/subscribable-dataset/dist/TransactionDataset.d.ts:15


addAll

▸ addAll(quads): this

Parameters

Name Type
quads Quad[] | Dataset\<Quad, Quad>

Returns

this

Implementation of

IConnectedLdoDataset.addAll

Inherited from

LdoTransactionDataset.addAll

Defined in

packages/subscribable-dataset/dist/TransactionDataset.d.ts:10


addListener

▸ addListener(eventName, listener): this

Parameters

Name Type
eventName QuadMatch
listener nodeEventListener\<Quad>

Returns

this

Implementation of

IConnectedLdoDataset.addListener

Inherited from

LdoTransactionDataset.addListener

Defined in

packages/subscribable-dataset/dist/SubscribableDataset.d.ts:20


bulk

▸ bulk(changes): this

Parameters

Name Type
changes DatasetChanges\<Quad>

Returns

this

Implementation of

IConnectedLdoDataset.bulk

Inherited from

LdoTransactionDataset.bulk

Defined in

packages/subscribable-dataset/dist/TransactionDataset.d.ts:11


commit

▸ commit(): void

Returns

void

Inherited from

LdoTransactionDataset.commit

Defined in

packages/subscribable-dataset/dist/TransactionDataset.d.ts:22


commitToRemote

▸ commitToRemote(): Promise\<AggregateSuccess\<UpdateDefaultGraphSuccess | Extract\<Awaited\<ReturnType\<...[...]["types"]["resource"]["update"]>>, { isError: false }> | IgnoredInvalidUpdateSuccess\<Plugins[number]["types"]["resource"]>> | AggregateError\<Extract\<Awaited\<ReturnType\<Plugins[number]["types"]["resource"]["update"]>>, { isError: true }>>>

Commits all changes made in this transaction to the remote connected platforms as well as the parent dataset.

Returns

Promise\<AggregateSuccess\<UpdateDefaultGraphSuccess | Extract\<Awaited\<ReturnType\<...[...]["types"]["resource"]["update"]>>, { isError: false }> | IgnoredInvalidUpdateSuccess\<Plugins[number]["types"]["resource"]>> | AggregateError\<Extract\<Awaited\<ReturnType\<Plugins[number]["types"]["resource"]["update"]>>, { isError: true }>>>

A success or failure

Example

import { createConnectedLdoDataset } from "@ldo/connected";
import { ProfileShapeType } from "./_ldo/profile.shapeTypes.ts"
import { solidConnectedPlugin } from "connected-solid";

// ...

const connectedLdoDataset = createConnectedLdoDataset([solidConnectedPlugin]);

const profileDocument = connectedLdoDataset
  .getResource("https://example.com/profile");
await profileDocument.read();

const transaction = connectedLdoDataset.startTransaction();

const profile = transaction
  .using(ProfileShapeType)
  .fromSubject("https://example.com/profile#me");
profile.name = "Some Name";
const result = await transaction.commitToRemote();
if (result.isError) {
  // handle error
}

Defined in

packages/connected/src/ConnectedLdoTransactionDataset.ts:174


contains

▸ contains(other): boolean

Parameters

Name Type
other Dataset\<Quad, Quad>

Returns

boolean

Implementation of

IConnectedLdoDataset.contains

Inherited from

LdoTransactionDataset.contains

Defined in

packages/dataset/dist/ExtendedDataset.d.ts:8


createResource

▸ createResource\<Name, Plugin>(name): 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
name Name

Returns

Promise\<ReturnType\<Plugin["createResource"]>>

A created resource or an error

Example

const profileDocument = await connectedLdoDataset
  .createResource("solid");

Implementation of

IConnectedLdoDataset.createResource

Defined in

packages/connected/src/ConnectedLdoTransactionDataset.ts:112


delete

▸ delete(quad): this

Parameters

Name Type
quad Quad

Returns

this

Implementation of

IConnectedLdoDataset.delete

Inherited from

LdoTransactionDataset.delete

Defined in

packages/subscribable-dataset/dist/TransactionDataset.d.ts:16


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

LdoTransactionDataset.deleteMatches

Defined in

packages/subscribable-dataset/dist/TransactionDataset.d.ts:12


difference

▸ difference(other): Dataset\<Quad, Quad>

Parameters

Name Type
other DatasetCore\<Quad, Quad>

Returns

Dataset\<Quad, Quad>

Implementation of

IConnectedLdoDataset.difference

Inherited from

LdoTransactionDataset.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

IConnectedLdoDataset.emit

Inherited from

LdoTransactionDataset.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

IConnectedLdoDataset.equals

Inherited from

LdoTransactionDataset.equals

Defined in

packages/dataset/dist/ExtendedDataset.d.ts:11


eventNames

▸ eventNames(): QuadMatch[]

Returns

QuadMatch[]

Implementation of

IConnectedLdoDataset.eventNames

Inherited from

LdoTransactionDataset.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

IConnectedLdoDataset.every

Inherited from

LdoTransactionDataset.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

IConnectedLdoDataset.filter

Inherited from

LdoTransactionDataset.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

IConnectedLdoDataset.forEach

Inherited from

LdoTransactionDataset.forEach

Defined in

packages/dataset/dist/ExtendedDataset.d.ts:14


forgetAllResources

▸ forgetAllResources(): void

Removes all resources from memory

Returns

void

Example

connectedLdoDataset.forgetAllResources();

Implementation of

IConnectedLdoDataset.forgetAllResources

Defined in

packages/connected/src/ConnectedLdoTransactionDataset.ts:129


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

connectedLdoDataset.forgetResource("https://example.com/resource.ttl");

Implementation of

IConnectedLdoDataset.forgetResource

Defined in

packages/connected/src/ConnectedLdoTransactionDataset.ts:126


getChanges

▸ getChanges(): DatasetChanges\<Quad>

Returns

DatasetChanges\<Quad>

Inherited from

LdoTransactionDataset.getChanges

Defined in

packages/subscribable-dataset/dist/TransactionDataset.d.ts:24


getFetchedResources

▸ getFetchedResources(): Plugins[number]["types"]["resource"][]

Retireves a representation of all Resources that have been fetched.

Returns

Plugins[number]["types"]["resource"][]

a Resource array

Example

const allResources = connectedLdoDataset.getFetchedResources();

Implementation of

IConnectedLdoDataset.getFetchedResources

Defined in

packages/connected/src/ConnectedLdoTransactionDataset.ts:108


getMaxListeners

▸ getMaxListeners(): number

Returns

number

Implementation of

IConnectedLdoDataset.getMaxListeners

Inherited from

LdoTransactionDataset.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

const profileDocument = connectedLdoDataset
  .getResource("https://example.com/profile");

Implementation of

IConnectedLdoDataset.getResource

Defined in

packages/connected/src/ConnectedLdoTransactionDataset.ts:96


getResources

▸ getResources(): Plugins[number]["types"]["resource"][]

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

Plugins[number]["types"]["resource"][]

a Resource array

Example

const allResources = connectedLdoDataset.getResources();

Implementation of

IConnectedLdoDataset.getResources

Defined in

packages/connected/src/ConnectedLdoTransactionDataset.ts:104


has

▸ has(quad): boolean

Parameters

Name Type
quad Quad

Returns

boolean

Implementation of

IConnectedLdoDataset.has

Inherited from

LdoTransactionDataset.has

Defined in

packages/subscribable-dataset/dist/TransactionDataset.d.ts:17


import

▸ import(stream): Promise\<ConnectedLdoTransactionDataset\<Plugins>>

Parameters

Name Type
stream Stream\<Quad>

Returns

Promise\<ConnectedLdoTransactionDataset\<Plugins>>

Implementation of

IConnectedLdoDataset.import

Inherited from

LdoTransactionDataset.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

LdoTransactionDataset.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

LdoTransactionDataset.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

LdoTransactionDataset.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

IConnectedLdoDataset.map

Inherited from

LdoTransactionDataset.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

IConnectedLdoDataset.match

Inherited from

LdoTransactionDataset.match

Defined in

packages/subscribable-dataset/dist/TransactionDataset.d.ts:13


off

▸ off(eventName, listener): void

Parameters

Name Type
eventName QuadMatch
listener nodeEventListener\<Quad>

Returns

void

Implementation of

IConnectedLdoDataset.off

Inherited from

LdoTransactionDataset.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

IConnectedLdoDataset.on

Inherited from

LdoTransactionDataset.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

IConnectedLdoDataset.once

Inherited from

LdoTransactionDataset.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

LdoTransactionDataset.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

LdoTransactionDataset.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

LdoTransactionDataset.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

IConnectedLdoDataset.reduce

Inherited from

LdoTransactionDataset.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

LdoTransactionDataset.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

LdoTransactionDataset.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

LdoTransactionDataset.removeListenerFromAllEvents

Defined in

packages/subscribable-dataset/dist/SubscribableDataset.d.ts:33


rollback

▸ rollback(): void

Returns

void

Inherited from

LdoTransactionDataset.rollback

Defined in

packages/subscribable-dataset/dist/TransactionDataset.d.ts:23


setContext

▸ setContext\<Name, Plugin>(name, 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
name Name -
context Plugin["types"]["context"] the context for this specific plugin

Returns

void

Implementation of

IConnectedLdoDataset.setContext

Defined in

packages/connected/src/ConnectedLdoTransactionDataset.ts:119


setMaxListeners

▸ setMaxListeners(n): this

Parameters

Name Type
n number

Returns

this

Implementation of

IConnectedLdoDataset.setMaxListeners

Inherited from

LdoTransactionDataset.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

IConnectedLdoDataset.some

Inherited from

LdoTransactionDataset.some

Defined in

packages/dataset/dist/ExtendedDataset.d.ts:19


startTransaction

▸ startTransaction(): ConnectedLdoTransactionDataset\<Plugins>

Returns

ConnectedLdoTransactionDataset\<Plugins>

Implementation of

IConnectedLdoDataset.startTransaction

Overrides

LdoTransactionDataset.startTransaction

Defined in

packages/connected/src/ConnectedLdoTransactionDataset.ts:133


toArray

▸ toArray(): Quad[]

Returns

Quad[]

Implementation of

IConnectedLdoDataset.toArray

Inherited from

LdoTransactionDataset.toArray

Defined in

packages/dataset/dist/ExtendedDataset.d.ts:20


toCanonical

▸ toCanonical(): string

Returns

string

Implementation of

IConnectedLdoDataset.toCanonical

Inherited from

LdoTransactionDataset.toCanonical

Defined in

packages/dataset/dist/ExtendedDataset.d.ts:21


toStream

▸ toStream(): Stream\<Quad>

Returns

Stream\<Quad>

Implementation of

IConnectedLdoDataset.toStream

Inherited from

LdoTransactionDataset.toStream

Defined in

packages/dataset/dist/ExtendedDataset.d.ts:22


toString

▸ toString(): string

Returns

string

Implementation of

IConnectedLdoDataset.toString

Inherited from

LdoTransactionDataset.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

IConnectedLdoDataset.union

Inherited from

LdoTransactionDataset.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

LdoTransactionDataset.usingType

Defined in

packages/connected/src/ConnectedLdoTransactionDataset.ts:240