From 4e1a6d965e620311c4d2f9678901accaa5299e56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Claus-Peter=20H=C3=BCbner?= Date: Thu, 26 Jan 2023 00:35:28 +0100 Subject: [PATCH] create graphql endpoint for GetPublicKey request --- .../api/1_0/model/GetPublicKeyResult.ts | 11 +++++++++++ .../api/1_0/resolver/PublicKeyResolver.ts | 18 ++++++++++++++++++ federation/src/graphql/api/GetTestApiResult.ts | 11 ----------- 3 files changed, 29 insertions(+), 11 deletions(-) create mode 100644 federation/src/graphql/api/1_0/model/GetPublicKeyResult.ts create mode 100644 federation/src/graphql/api/1_0/resolver/PublicKeyResolver.ts delete mode 100644 federation/src/graphql/api/GetTestApiResult.ts diff --git a/federation/src/graphql/api/1_0/model/GetPublicKeyResult.ts b/federation/src/graphql/api/1_0/model/GetPublicKeyResult.ts new file mode 100644 index 000000000..1582ad892 --- /dev/null +++ b/federation/src/graphql/api/1_0/model/GetPublicKeyResult.ts @@ -0,0 +1,11 @@ +import { Field, ObjectType } from 'type-graphql' + +@ObjectType() +export class GetPublicKeyResult { + constructor(pubKey: string) { + this.publicKey = pubKey + } + + @Field(() => String) + publicKey: string +} diff --git a/federation/src/graphql/api/1_0/resolver/PublicKeyResolver.ts b/federation/src/graphql/api/1_0/resolver/PublicKeyResolver.ts new file mode 100644 index 000000000..53f0d0bd4 --- /dev/null +++ b/federation/src/graphql/api/1_0/resolver/PublicKeyResolver.ts @@ -0,0 +1,18 @@ +import { Field, ObjectType, Query, Resolver } from 'type-graphql' +import { federationLogger as logger } from '@/server/logger' +import { Community as DbCommunity } from '@entity/Community' +import { GetPublicKeyResult } from '../model/GetPublicKeyResult' + +@Resolver() +export class PublicKeyResolver { + @Query(() => GetPublicKeyResult) + async getPublicKey(): Promise { + logger.info(`getPublicKey()...`) + const homeCom = await DbCommunity.findOneOrFail({ + foreign: false, + apiVersion: '1_0', + }) + logger.info(`getPublicKey()... with publicKey=${homeCom.publicKey}`) + return new GetPublicKeyResult(homeCom.publicKey.toString()) + } +} diff --git a/federation/src/graphql/api/GetTestApiResult.ts b/federation/src/graphql/api/GetTestApiResult.ts deleted file mode 100644 index 7c8c6c487..000000000 --- a/federation/src/graphql/api/GetTestApiResult.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { Field, ObjectType } from 'type-graphql' - -@ObjectType() -export class GetTestApiResult { - constructor(apiVersion: string) { - this.api = apiVersion - } - - @Field(() => String) - api: string -}