cap_mdb_handler
v1.1.1
Published
A SAP CAP handler to connect to any MongoDB instance as database layer.
Downloads
15
Maintainers
Readme
SAP Cloud Application Programming Model (CAP) - MongoDB Handler
An unofficial SAP CAP extension to connect to any MongoDB instance.
Introduction
This project lets you connect to a MongoDB instance from a CAP service. It provides a simple way to read, create, update and delete documents in a MongoDB collection, which represents a CAP entity. The flexible nature of MongoDB allows you to store any kind of data, which can be accessed and manipulated using the CAP service.
All logos are trademarks of their respective owners.
Prerequisites
- Node.js
- MongoDB instance
- SAP Cloud Application Programming Model (CAP)
- SAP Business Application Studio (BAS) or
- Visual Studio Code (VSCode) with the SAP Business Application Studio Extension Pack installed
Installation
npm i cap_mdb_handler
Usage
To use the library now, we need to add the following code to the srv/service.ts
file of your CAP project.
import type { Request } from "@sap/cds/apis/services"
import cds = require('@sap/cds');
// 1. Import the MDBHandler
import MDBHandler from "cap_mdb_handler";
require('dotenv').config();
module.exports = cds.service.impl(async function () {
// 2. Create a new instance of the MDBHandler
const oHandler = new MDBHandler(process.env["MONGO_URL"], process.env["MONGO_DB"]);
// 3. Register the event handlers
this.on('READ', '*', async (req : Request) => {
return await oHandler.read(req);
});
this.on('CREATE', '*', async (req : Request) => {
return await oHandler.create(req);
});
this.on('UPDATE', '*', async (req : Request) => {
return await oHandler.update(req);
});
this.on('DELETE', '*', async (req : Request) => {
return await oHandler.delete(req);
});
});
Additional Configuration
The MDBHandler requires the following environment variables to be set:
MONGO_URL
: The URL of the MongoDB instance (beginning withmongodb://
ormongodb+srv://
)MONGO_DB
: The name of the database to connect to