60 lines
1.9 KiB
JavaScript
60 lines
1.9 KiB
JavaScript
import express from 'express';
|
|
|
|
/**
|
|
* RulesController. API for the game rules manager, граничен клас за комуникация с модула за игрови правила
|
|
*/
|
|
class RulesController{
|
|
|
|
name = 'rulesApi'
|
|
route = '/api/rule'
|
|
|
|
/**
|
|
* Initializes the RulesController plugin, инициализация
|
|
* @param {App} app The application instance, апликация
|
|
*/
|
|
init(app){
|
|
const router = express.Router();
|
|
const { rules } = app;
|
|
|
|
/**
|
|
* API: PUT /api/rule/ Create or update rule, създаване/обновяване на игрово правило
|
|
* @function createOrUpdate
|
|
* @memberof RulesController
|
|
*/
|
|
router.put('/', async (req, res)=>{
|
|
|
|
});
|
|
|
|
/**
|
|
* API: POST /api/rule/ List rules by given criteria, търсене в игровите правила
|
|
* @function list
|
|
* @returns {Rule[]}
|
|
* @memberof RulesController
|
|
*/
|
|
router.post('/', async (req, res)=>{
|
|
})
|
|
|
|
/**
|
|
* API: GET /api/rule/:id Retrieve rule by ID, извличане на игрово правило
|
|
* @function read
|
|
* @param {string} id The id of the rule, идентификатор
|
|
* @returns {Rule}
|
|
* @memberof RulesController
|
|
*/
|
|
router.get('/:id', async (req, res)=>{
|
|
})
|
|
|
|
/**
|
|
* API: DELETE /api/rule/:id Delete rule by ID, изтриване на игрово правило
|
|
* @function remove
|
|
* @param {string} id The id of the rule, идентификатор
|
|
* @memberof RulesController
|
|
*/
|
|
router.delete('/:id', async (req, res)=>{
|
|
})
|
|
|
|
app.webServer.xapp.use(this.route, router);
|
|
}
|
|
}
|
|
|
|
export { RulesController } |