Skip to content

Commit

Permalink
Use new broker.createService API
Browse files Browse the repository at this point in the history
  • Loading branch information
srosset81 committed Jun 17, 2024
1 parent 753c6ef commit 03ee2c3
Show file tree
Hide file tree
Showing 22 changed files with 142 additions and 78 deletions.
36 changes: 23 additions & 13 deletions src/middleware/packages/activitypub/services/activitypub/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -35,77 +35,87 @@ const ActivityPubService = {
const { baseUri, podProvider, activitiesPath, selectActorData, queueServiceUrl, activateTombstones, like, follow } =
this.settings;

this.broker.createService(ActivitiesWatcherService);
this.broker.createService({ mixins: [ActivitiesWatcherService] });

this.broker.createService(CollectionService, {
this.broker.createService({
mixins: [CollectionService],
settings: {
podProvider
}
});

this.broker.createService(CollectionsRegistryService, {
this.broker.createService({
mixins: [CollectionsRegistryService],
settings: {
baseUri,
podProvider
}
});

this.broker.createService(ActorService, {
this.broker.createService({
mixins: [ActorService],
settings: {
baseUri,
selectActorData,
podProvider
}
});

this.broker.createService(ApiService, {
this.broker.createService({
mixins: [ApiService],
settings: {
baseUri,
podProvider
}
});

this.broker.createService(ObjectService, {
this.broker.createService({
mixins: [ObjectService],
settings: {
baseUri,
podProvider,
activateTombstones
}
});

this.broker.createService(ActivityService, {
this.broker.createService({
mixins: [ActivityService],
settings: {
baseUri,
path: activitiesPath
}
});

this.broker.createService(FollowService, {
this.broker.createService({
mixins: [FollowService],
settings: {
baseUri
}
});

this.broker.createService(InboxService, {
this.broker.createService({
mixins: [InboxService],
settings: {
podProvider
}
});

this.broker.createService(LikeService, {
this.broker.createService({
mixins: [LikeService],
settings: {
baseUri
}
});

this.broker.createService(ReplyService, {
this.broker.createService({
mixins: [ReplyService],
settings: {
baseUri
}
});

this.broker.createService(OutboxService, {
mixins: queueServiceUrl ? [QueueService(queueServiceUrl)] : undefined,
this.broker.createService({
mixins: queueServiceUrl ? [OutboxService, QueueService(queueServiceUrl)] : [OutboxService],
settings: {
baseUri,
podProvider
Expand Down
8 changes: 5 additions & 3 deletions src/middleware/packages/auth/mixins/auth.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,17 +23,19 @@ const AuthMixin = {
async created() {
const { jwtPath, reservedUsernames, accountsDataset, podProvider } = this.settings;

this.broker.createService(AuthJWTService, {
this.broker.createService({
mixins: [AuthJWTService],
settings: { jwtPath }
});

this.broker.createService(AuthAccountService, {
this.broker.createService({
mixins: [AuthAccountService],
settings: { reservedUsernames },
adapter: new TripleStoreAdapter({ type: 'AuthAccount', dataset: accountsDataset })
});

if (podProvider) {
this.broker.createService(CapabilitiesService, { settings: { path: this.settings.capabilitiesPath } });
this.broker.createService({ mixins: [CapabilitiesService], settings: { path: this.settings.capabilitiesPath } });
}
},
async started() {
Expand Down
3 changes: 2 additions & 1 deletion src/middleware/packages/auth/services/auth.local.js
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,8 @@ const AuthLocalService = {
this.passportId = 'local';

if (mail !== false) {
await this.broker.createService(AuthMailService, {
this.broker.createService({
mixins: [AuthMailService],
settings: {
...mail
}
Expand Down
40 changes: 26 additions & 14 deletions src/middleware/packages/core/service.js
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,8 @@ const CoreService = {
const { baseUrl, baseDir, triplestore, containers, ontologies } = this.settings;

if (this.settings.activitypub !== false) {
this.broker.createService(ActivityPubService, {
this.broker.createService({
mixins: [ActivityPubService],
// Type support for settings could be given, once moleculer type definitions improve...
settings: {
baseUri: baseUrl,
Expand All @@ -67,7 +68,8 @@ const CoreService = {
}

if (this.settings.api !== false) {
this.broker.createService(ApiGatewayService, {
this.broker.createService({
mixins: [ApiGatewayService],
settings: {
cors: {
origin: '*',
Expand Down Expand Up @@ -109,23 +111,25 @@ const CoreService = {
}

if (this.settings.jsonld !== false) {
this.broker.createService(JsonLdService, {
this.broker.createService({
mixins: [JsonLdService],
settings: {
baseUri: baseUrl,
...this.settings.jsonld
}
});
}

this.broker.createService(OntologiesService, {
this.broker.createService({
mixins: [OntologiesService],
settings: {
ontologies
}
});

if (this.settings.ldp !== false) {
this.broker.createService(LdpService, {
mixins: [DocumentTaggerMixin],
this.broker.createService({
mixins: [DocumentTaggerMixin, LdpService],
settings: {
baseUrl,
containers: containers || (this.settings.mirror !== false ? [botsContainer] : []),
Expand All @@ -135,31 +139,35 @@ const CoreService = {
}

if (this.settings.signature !== false) {
this.broker.createService(SignatureService, {
this.broker.createService({
mixins: [SignatureService],
settings: {
...this.settings.signature
}
});
}

if (this.settings.webId !== false) {
this.broker.createService(WebIdService, {
this.broker.createService({
mixins: [WebIdService],
settings: {
baseUrl,
...this.settings.webid
}
});
}

this.broker.createService(KeysService, {
this.broker.createService({
mixins: [KeysService],
settings: {
actorsKeyPairsDir: path.resolve(baseDir, './actors'),
...this.settings.keys
}
});

if (this.settings.sparqlEndpoint !== false) {
this.broker.createService(SparqlEndpointService, {
this.broker.createService({
mixins: [SparqlEndpointService],
settings: {
defaultAccept: 'application/ld+json',
...this.settings.sparqlEndpoint
Expand All @@ -172,7 +180,8 @@ const CoreService = {
// We define a constant here, because this.settings.webacl is not available inside the started method
const secure = this.settings.webacl !== false;

this.broker.createService(TripleStoreService, {
this.broker.createService({
mixins: [TripleStoreService],
settings: {
...triplestore
},
Expand All @@ -188,7 +197,8 @@ const CoreService = {
}

if (this.settings.void !== false) {
this.broker.createService(VoidService, {
this.broker.createService({
mixins: [VoidService],
settings: {
baseUrl,
...this.settings.void
Expand All @@ -197,7 +207,8 @@ const CoreService = {
}

if (this.settings.webacl !== false) {
this.broker.createService(WebAclService, {
this.broker.createService({
mixins: [WebAclService],
settings: {
baseUrl,
...this.settings.webacl
Expand All @@ -206,7 +217,8 @@ const CoreService = {
}

if (this.settings.webfinger !== false) {
this.broker.createService(WebfingerService, {
this.broker.createService({
mixins: [WebfingerService],
settings: {
baseUrl,
...this.settings.webfinger
Expand Down
12 changes: 8 additions & 4 deletions src/middleware/packages/crypto/keys/keys-service.js
Original file line number Diff line number Diff line change
Expand Up @@ -37,25 +37,29 @@ const KeysService = {
dependencies: ['ontologies', 'keys.container', 'keys.public-container', 'signature.keypair', 'keys.migration'],
async created() {
// Start keys-container and public-keys-container services.
this.broker.createService(KeyContainerService, {
this.broker.createService({
mixins: [KeyContainerService],
settings: {
podProvider: this.settings.podProvider
}
});
this.broker.createService(PublicKeyContainerService, {
this.broker.createService({
mixins: [PublicKeyContainerService],
settings: {
podProvider: this.settings.podProvider
}
});
this.broker.createService(MigrationService, {
this.broker.createService({
mixins: [MigrationService],
settings: {
podProvider: this.settings.podProvider,
actorsKeyPairsDir: this.settings.actorsKeyPairsDir
}
});

// Legacy service.
this.broker.createService(KeyPairService, {
this.broker.createService({
mixins: [KeyPairService],
settings: {
actorsKeyPairsDir: this.settings.actorsKeyPairsDir
}
Expand Down
3 changes: 2 additions & 1 deletion src/middleware/packages/inference/service.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ module.exports = {
created() {
const { baseUrl, acceptFromRemoteServers, offerToRemoteServers } = this.settings;
if (acceptFromRemoteServers || offerToRemoteServers) {
this.broker.createService(RemoteService, {
this.broker.createService({
mixins: [RemoteService],
settings: {
baseUrl,
acceptFromRemoteServers,
Expand Down
13 changes: 9 additions & 4 deletions src/middleware/packages/jsonld/service.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,22 +19,27 @@ module.exports = {
throw new Error('The baseUri and localContextPath settings are required');
}

await this.broker.createService(JsonLdDocumentLoaderService, {
this.broker.createService({
mixins: [JsonLdDocumentLoaderService],
settings: {
cachedContextFiles,
localContextUri: urlJoin(baseUri, localContextPath)
}
});

await this.broker.createService(JsonLdContextService, {
this.broker.createService({
mixins: [JsonLdContextService],
settings: {
localContextUri: urlJoin(baseUri, localContextPath)
}
});

await this.broker.createService(JsonLdParserService);
this.broker.createService({
mixins: [JsonLdParserService]
});

await this.broker.createService(JsonLdApiService, {
this.broker.createService({
mixins: [JsonLdApiService],
settings: {
localContextPath
}
Expand Down
Loading

0 comments on commit 03ee2c3

Please sign in to comment.