Use static methods for responder and export the whole class

This commit is contained in:
powermaker450 2024-08-27 01:19:50 -04:00
parent 2ec6dd5476
commit 33964ca6d1
2 changed files with 11 additions and 13 deletions

View file

@ -1,5 +1,5 @@
import { userReviewSchema, typeJson } from "../types"; import { userReviewSchema, typeJson } from "../types";
import { Logger, responder, data } from "../utils"; import { Logger, Responder, data } from "../utils";
import { Express, Request, Response } from "express"; import { Express, Request, Response } from "express";
export class PostListener { export class PostListener {
@ -24,7 +24,7 @@ export class PostListener {
res.writeHead(400, typeJson); res.writeHead(400, typeJson);
res.write( res.write(
responder.JsonError("recieved chunk contains invalid JSON"), Responder.JsonError("recieved chunk contains invalid JSON"),
); );
res.end(); res.end();
return; return;
@ -41,14 +41,14 @@ export class PostListener {
data.appendReview(validUserReview); data.appendReview(validUserReview);
res.writeHead(201, typeJson); res.writeHead(201, typeJson);
res.write(responder.success("review was sent")); res.write(Responder.success("review was sent"));
res.end(); res.end();
} catch (err) { } catch (err) {
this.logger.error("Failed to assign ID to review:", err); this.logger.error("Failed to assign ID to review:", err);
res.writeHead(500, typeJson); res.writeHead(500, typeJson);
res.write( res.write(
responder.serverError("failed to assign ID to review"), Responder.serverError("failed to assign ID to review"),
); );
res.end(); res.end();
} }
@ -59,7 +59,7 @@ export class PostListener {
this.logger.error(`${sender} <~ ${err}`); this.logger.error(`${sender} <~ ${err}`);
res.writeHead(400, typeJson); res.writeHead(400, typeJson);
res.write(responder.error(err)); res.write(Responder.error(err));
res.end(); res.end();
}); });
}); });

View file

@ -1,13 +1,13 @@
import { ValidationError } from "yup"; import { ValidationError } from "yup";
class Responder { export class Responder {
public success(message: string): string { public static success(message: string): string {
return JSON.stringify({ return JSON.stringify({
message: message, message: message,
}); });
} }
public error(error: ValidationError): string { public static error(error: ValidationError): string {
return JSON.stringify({ return JSON.stringify({
error: { error: {
type: error.name, type: error.name,
@ -16,7 +16,7 @@ class Responder {
}); });
} }
public serverError(errorMessage: string): string { public static serverError(errorMessage: string): string {
return JSON.stringify({ return JSON.stringify({
error: { error: {
type: "InternalError", type: "InternalError",
@ -25,7 +25,7 @@ class Responder {
}); });
} }
public requestError(errorMessage: string): string { public static requestError(errorMessage: string): string {
return JSON.stringify({ return JSON.stringify({
error: { error: {
type: "RequestError", type: "RequestError",
@ -34,7 +34,7 @@ class Responder {
}); });
} }
public JsonError(errorMessage: string): string { public static JsonError(errorMessage: string): string {
return JSON.stringify({ return JSON.stringify({
error: { error: {
type: "JsonError", type: "JsonError",
@ -43,5 +43,3 @@ class Responder {
}); });
} }
} }
export const responder = new Responder();