@underpostnet/underpost
Version:
Underpost Platform — end-to-end CI/CD and application-delivery toolchain CLI. Covers bare metal, Kubernetes, K3s, kubeadm, LXD, container/image orchestration, secrets, databases, cron jobs, monitoring, SSH, runners, PWA + Workbox delivery, and release orc
75 lines (71 loc) • 1.95 kB
JavaScript
import { loggerFactory } from '../../server/logger.js';
import { DefaultService } from './default.service.js';
const logger = loggerFactory(import.meta);
class DefaultController {
static post = async (req, res, options) => {
try {
const result = await DefaultService.post(req, res, options);
return res.status(200).json({
status: 'success',
data: result,
});
} catch (error) {
logger.error(error, error.stack);
return res.status(400).json({
status: 'error',
message: error.message,
});
}
};
static get = async (req, res, options) => {
try {
const { page, limit } = req.query;
const result = await DefaultService.get(
{ ...req, query: { ...req.query, page: parseInt(page), limit: parseInt(limit) } },
res,
options,
);
return res.status(200).json({
status: 'success',
data: result,
});
} catch (error) {
logger.error(error, error.stack);
return res.status(400).json({
status: 'error',
message: error.message,
});
}
};
static put = async (req, res, options) => {
try {
const result = await DefaultService.put(req, res, options);
return res.status(200).json({
status: 'success',
data: result,
});
} catch (error) {
logger.error(error, error.stack);
return res.status(400).json({
status: 'error',
message: error.message,
});
}
};
static delete = async (req, res, options) => {
try {
const result = await DefaultService.delete(req, res, options);
return res.status(200).json({
status: 'success',
data: result,
});
} catch (error) {
logger.error(error, error.stack);
return res.status(400).json({
status: 'error',
message: error.message,
});
}
};
}
export { DefaultController };