comty/packages/server/services/marketplace/marketplace.service.js

48 lines
1.1 KiB
JavaScript
Executable File

import { Server } from "linebridge"
import DbManager from "@shared-classes/DbManager"
import CacheService from "@shared-classes/CacheService"
import StorageClient from "@shared-classes/StorageClient"
import SharedMiddlewares from "@shared-middlewares"
class API extends Server {
static refName = "marketplace"
static useEngine = "hyper-express-ng"
static routesPath = `${__dirname}/routes`
static listen_port = process.env.HTTP_LISTEN_PORT ?? 3005
middlewares = {
...SharedMiddlewares,
}
contexts = {
db: new DbManager(),
cache: new CacheService({
fsram: false,
}),
storage: StorageClient({
endPoint: process.env.B2_ENDPOINT,
cdnUrl: process.env.B2_CDN_ENDPOINT,
defaultBucket: process.env.B2_BUCKET,
accessKey: process.env.B2_KEY_ID,
secretKey: process.env.B2_APP_KEY,
port: 443,
useSSL: true,
setupBucket: false,
}),
}
async onInitialize() {
await this.contexts.db.initialize()
await this.contexts.storage.initialize()
global.cache = this.contexts.cache
global.storages = {
standard: this.contexts.storage,
}
}
}
Boot(API)