@sap/xsodata
Version:
Expose data from a HANA database as OData V2 service with help of .xsodata files.
45 lines (37 loc) • 1.56 kB
JavaScript
;
var oDataUriParser = require('./oDataUriParser');
var resourceKind = oDataUriParser.URI_KIND_Resource;
var metaDataKind = oDataUriParser.URI_KIND_MetaData;
var serviceKind = oDataUriParser.URI_KIND_Service;
var batchKind = oDataUriParser.URI_KIND_Batch;
var checkModificationForbidden = require('./checks/checkModificationForbidden');
var checkAllowedVerbs = require('./checks/checkAllowedMethod');
var checkGenKeyRestrictions = require('./checks/checkGenKeyRestrictions');
var checkAllowedMethodsForResourcePath = require('./checks/checkAllowedMethodsForResourcePath');
var checkAllowedMethodForBatch = require('./checks/checkAllowedMethodForBatch');
var checkPostPutDeleteChecks = require('./checks/checkPostPutDeleteChecks');
var checkSystemQueryOptions = require('./checks/checkSystemQueryOptions');
var checkFilterOnAggregatedColumn = require('./checks/checkFilterOnAggregatedColumn');
var checkFilterOrderByOnGenKeyColumn = require('./checks/checkFilterOrderByOnGenKeyColumn');
var checks = module.exports = {};
checks[resourceKind] = [
checkAllowedMethodsForResourcePath,
checkPostPutDeleteChecks,
checkModificationForbidden,
checkGenKeyRestrictions,
checkSystemQueryOptions,
checkFilterOnAggregatedColumn,
checkFilterOrderByOnGenKeyColumn
];
checks[metaDataKind] = [
checkAllowedVerbs('get'),
checkSystemQueryOptions
];
checks[serviceKind] = [
checkAllowedVerbs('get', 'head'),
checkSystemQueryOptions
];
checks[batchKind] = [
checkAllowedMethodForBatch,
checkSystemQueryOptions
];