create graphql endpoint for GetPublicKey request

This commit is contained in:
Claus-Peter Hübner 2023-01-26 00:35:28 +01:00
parent a05c2307ee
commit 4e1a6d965e
3 changed files with 29 additions and 11 deletions

View File

@ -0,0 +1,11 @@
import { Field, ObjectType } from 'type-graphql'
@ObjectType()
export class GetPublicKeyResult {
constructor(pubKey: string) {
this.publicKey = pubKey
}
@Field(() => String)
publicKey: string
}

View File

@ -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<GetPublicKeyResult> {
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())
}
}

View File

@ -1,11 +0,0 @@
import { Field, ObjectType } from 'type-graphql'
@ObjectType()
export class GetTestApiResult {
constructor(apiVersion: string) {
this.api = apiVersion
}
@Field(() => String)
api: string
}