Files
Checkmate/Server/controllers/pageSpeedCheckController.js
T

82 lines
2.4 KiB
JavaScript
Raw Normal View History

const PageSpeedCheck = require("../models/PageSpeedCheck");
const { successMessages } = require("../utils/messages");
const SERVICE_NAME = "pagespeed";
2024-07-17 15:23:06 -07:00
const {
getPageSpeedCheckParamValidation,
createPageSpeedCheckParamValidation,
deletePageSpeedCheckParamValidation,
} = require("../validation/joi");
2024-07-16 10:54:59 -07:00
/**
* Gets all PageSpeedChecks for a monitor
* @async
* @param {Express.Request} req - The request object
* @param {Express.Response} res - The response object
* @param {Function} next - The next middleware function
* @returns {Promise<Express.Response>}
*/
const getPageSpeedChecks = async (req, res, next) => {
try {
2024-07-17 15:00:06 -07:00
// Validate monitorId parameter
2024-07-17 15:23:06 -07:00
await getPageSpeedCheckParamValidation.validateAsync(req.params);
2024-07-17 15:00:06 -07:00
return res.status(200).json({ msg: "Hit getPageSpeedChecks" });
} catch (error) {
2024-07-17 15:23:06 -07:00
if (error.isJoi) {
return res.status(400).json({ error: error.details[0].message });
}
next(error);
}
};
2024-07-16 10:54:59 -07:00
/**
* Creates a new PageSpeedCheck for a monitor
* @async
* @param {Express.Request} req - The request object
* @param {Express.Response} res - The response object
* @param {Function} next - The next middleware function
* @returns {Promise<Express.Response>}
*/
const createPageSpeedCheck = async (req, res, next) => {
try {
2024-07-17 15:00:06 -07:00
// Validate monitorId parameter
2024-07-17 15:23:06 -07:00
await createPageSpeedCheckParamValidation.validateAsync(req.params);
2024-07-17 15:00:06 -07:00
return res.status(200).json({ msg: "Hit createPageSpeedCheck" });
} catch (error) {
2024-07-17 15:23:06 -07:00
if (error.isJoi) {
return res.status(400).json({ error: error.details[0].message });
}
error.service = SERVICE_NAME;
next(error);
}
};
2024-07-16 10:54:59 -07:00
/**
* Deletes all PageSpeedChecks for a monitor
* @async
* @param {Express.Request} req - The request object
* @param {Express.Response} res - The response object
* @param {Function} next - The next middleware function
* @returns {Promise<Express.Response>}
*/
const deletePageSpeedCheck = async (req, res, next) => {
try {
2024-07-17 15:00:06 -07:00
// Validate monitorId parameter
2024-07-17 15:23:06 -07:00
await deletePageSpeedCheckParamValidation.validateAsync(req.params);
2024-07-17 15:00:06 -07:00
return res.status(200).json({ msg: "Hit deletePageSpeedCheck" });
} catch (error) {
2024-07-17 15:23:06 -07:00
if (error.isJoi) {
return res.status(400).json({ error: error.details[0].message });
}
error.service = SERVICE_NAME;
next(error);
}
};
module.exports = {
getPageSpeedChecks,
createPageSpeedCheck,
deletePageSpeedCheck,
};