From 0b92dfc74b7fa1ec6e529e86c5c2b067443e3480 Mon Sep 17 00:00:00 2001 From: SrGooglo Date: Wed, 31 May 2023 19:33:52 +0000 Subject: [PATCH] remove classes --- .../src/classes/ComtyClient/index.js | 9 -- .../src/classes/DbManager/index.js | 58 ----------- .../src/classes/RedisClient/index.js | 44 --------- .../src/classes/StorageClient/index.js | 97 ------------------- 4 files changed, 208 deletions(-) delete mode 100644 packages/chat_server/src/classes/ComtyClient/index.js delete mode 100755 packages/chat_server/src/classes/DbManager/index.js delete mode 100644 packages/chat_server/src/classes/RedisClient/index.js delete mode 100755 packages/chat_server/src/classes/StorageClient/index.js diff --git a/packages/chat_server/src/classes/ComtyClient/index.js b/packages/chat_server/src/classes/ComtyClient/index.js deleted file mode 100644 index 0a8fbfdf..00000000 --- a/packages/chat_server/src/classes/ComtyClient/index.js +++ /dev/null @@ -1,9 +0,0 @@ -import createClient from "comty.js" - -export default (params = {}) => { - return createClient({ - ...params, - accessKey: process.env.COMTY_ACCESS_KEY, - privateKey: process.env.COMTY_PRIVATE_KEY, - }) -} \ No newline at end of file diff --git a/packages/chat_server/src/classes/DbManager/index.js b/packages/chat_server/src/classes/DbManager/index.js deleted file mode 100755 index bdffe441..00000000 --- a/packages/chat_server/src/classes/DbManager/index.js +++ /dev/null @@ -1,58 +0,0 @@ -import mongoose from "mongoose" - -function getConnectionConfig(obj) { - const { DB_USER, DB_DRIVER, DB_NAME, DB_PWD, DB_HOSTNAME, DB_PORT } = obj - - let auth = [ - DB_DRIVER ?? "mongodb", - "://", - ] - - if (DB_USER && DB_PWD) { - auth.push(`${DB_USER}:${DB_PWD}@`) - } - - auth.push(DB_HOSTNAME ?? "localhost") - auth.push(`:${DB_PORT ?? "27017"}`) - - if (DB_USER) { - auth.push("/?authMechanism=DEFAULT") - } - - auth = auth.join("") - - return [ - auth, - { - dbName: DB_NAME, - useNewUrlParser: true, - useUnifiedTopology: true, - } - ] -} - -export default class DBManager { - initialize = async (config) => { - console.log("🔌 Connecting to DB...") - - const dbConfig = getConnectionConfig(config ?? process.env) - - mongoose.set("strictQuery", false) - - const connection = await mongoose.connect(...dbConfig) - .catch((err) => { - console.log(`❌ Failed to connect to DB, retrying...\n`) - console.log(error) - - // setTimeout(() => { - // this.initialize() - // }, 1000) - - return false - }) - - if (connection) { - console.log(`✅ Connected to DB.`) - } - } -} \ No newline at end of file diff --git a/packages/chat_server/src/classes/RedisClient/index.js b/packages/chat_server/src/classes/RedisClient/index.js deleted file mode 100644 index c46eff3f..00000000 --- a/packages/chat_server/src/classes/RedisClient/index.js +++ /dev/null @@ -1,44 +0,0 @@ -import { createClient } from "redis" - -function composeURL() { - // support for auth - let url = "redis://" - - if (process.env.REDIS_PASSWORD && process.env.REDIS_USERNAME) { - url += process.env.REDIS_USERNAME + ":" + process.env.REDIS_PASSWORD + "@" - } - - url += process.env.REDIS_HOST ?? "localhost" - - if (process.env.REDIS_PORT) { - url += ":" + process.env.REDIS_PORT - } - - return url -} - -export default () => { - let client = createClient({ - url: composeURL(), - }) - - client.initialize = async () => { - console.log("🔌 Connecting to Redis client...") - - await client.connect() - - return client - } - - // handle when client disconnects unexpectedly to avoid main crash - client.on("error", (error) => { - console.error("❌ Redis client error:", error) - }) - - // handle when client connects - client.on("connect", () => { - console.log("✅ Redis client connected.") - }) - - return client -} \ No newline at end of file diff --git a/packages/chat_server/src/classes/StorageClient/index.js b/packages/chat_server/src/classes/StorageClient/index.js deleted file mode 100755 index 8e222366..00000000 --- a/packages/chat_server/src/classes/StorageClient/index.js +++ /dev/null @@ -1,97 +0,0 @@ -const Minio = require("minio") -import path from "path" - -export const generateDefaultBucketPolicy = (payload) => { - const { bucketName } = payload - - if (!bucketName) { - throw new Error("bucketName is required") - } - - return { - Version: "2012-10-17", - Statement: [ - { - Action: [ - "s3:GetObject" - ], - Effect: "Allow", - Principal: { - AWS: [ - "*" - ] - }, - Resource: [ - `arn:aws:s3:::${bucketName}/*` - ], - Sid: "" - } - ] - } -} - -export class StorageClient extends Minio.Client { - constructor(options) { - super(options) - - this.defaultBucket = String(options.defaultBucket) - this.defaultRegion = String(options.defaultRegion) - } - - composeRemoteURL = (key) => { - const _path = path.join(this.defaultBucket, key) - - return `${this.protocol}//${this.host}:${this.port}/${_path}` - } - - setDefaultBucketPolicy = async (bucketName) => { - const policy = generateDefaultBucketPolicy({ bucketName }) - - return this.setBucketPolicy(bucketName, JSON.stringify(policy)) - } - - initialize = async () => { - console.log("🔌 Checking if storage client have default bucket...") - - // check connection with s3 - const bucketExists = await this.bucketExists(this.defaultBucket).catch(() => { - return false - }) - - if (!bucketExists) { - console.warn("🪣 Default bucket not exists! Creating new bucket...") - - await this.makeBucket(this.defaultBucket, "s3") - - // set default bucket policy - await this.setDefaultBucketPolicy(this.defaultBucket) - } - - // check if default bucket policy exists - const bucketPolicy = await this.getBucketPolicy(this.defaultBucket).catch(() => { - return null - }) - - if (!bucketPolicy) { - // set default bucket policy - await this.setDefaultBucketPolicy(this.defaultBucket) - } - - console.log("✅ Storage client is ready.") - } -} - -export const createStorageClientInstance = (options) => { - return new StorageClient({ - ...options, - endPoint: process.env.S3_ENDPOINT, - port: Number(process.env.S3_PORT), - useSSL: toBoolean(process.env.S3_USE_SSL), - accessKey: process.env.S3_ACCESS_KEY, - secretKey: process.env.S3_SECRET_KEY, - defaultBucket: process.env.S3_BUCKET, - defaultRegion: process.env.S3_REGION, - }) -} - -export default createStorageClientInstance \ No newline at end of file