The project registry provides APIs to manage projects, project staff, project beneficiaries, project tasks, project resources, and project facilities for HCM. This document provides the configuration details for setting up the project.
Pre-requisites
Knowledge of Java/J2EE (preferably Java 8 version).
Knowledge of Spring Boot and Spring Boot microservices.
Knowledge of Git or any version control system.
Knowledge of RESTful web services.
Knowledge of the Lombok library is helpful.
Knowledge of eGov-mdms service, eGov-persister, eGov-idgen, eGov-indexer, and eGov-user will be helpful.
Functionalities
Provides APIs to create, update, delete, and search projects.
Provides APIs to create, update, delete, and search project beneficiaries.
Provides APIs to bulk create, bulk update, and bulk delete project beneficiaries.
Provides APIs to create, update, delete, and search project facilities.
Provides APIs to bulk create, bulk update, and bulk delete project facilities.
Provides APIs to create, update, delete, and search project staff.
Provides APIs to bulk create, bulk update, and bulk delete project staff.
Provides APIs to create, update, delete and search project tasks.
Provides APIs to bulk create, bulk update, and bulk delete project tasks.
Provides APIs to create, update, delete, and search project resources.
Provides APIs to bulk create, bulk update, and bulk delete project tasks.
Setup
1
Clone or download the code from the GitHub repository
The source code for the Project registry is located in the Git repository here. Clone or download the code from this repository before proceeding.
2
Add the Lombok extension/plugin
The Project registry is a Spring Boot application that uses Lombok, a Java library. Add the Lombok extension/plugin to open and build the project in your IDE (like IntelliJ or Eclipse).
3
Setup Lombok in IDEs
Install the Lombok plugin directly from the IntelliJ plugins marketplace.
Download the Lombok jar file.
Add the following line to your eclipse.ini file (replace lombok.jar with the correct path to your Lombok jar):
4
Run application
Once Lombok is set up and the application is running (using your IDE or command line), you can start making API requests to the Individual serviceβs endpoints.
5
Generate IDs
When you send API requests, the system generates the required IDs automatically as part of its normal operation.
API Details
Refer to the Swagger API for YAML file details. Link - Project.yaml
Application.properties file information:
Kafka topics persister configs for projects
External Service URLs
Below are the URLs for external services that the Project registry interacts with:
Follow the details outlined below to configure and enable Project registry API actions and access control using MDMS, role-action mapping, persister, and indexer configurations.
MDMS Configurations
Define Action URLs
Add new actions in the MDMS actions configuration (e.g., action-test.json). Each action represents an API endpoint you wish to secure and manage: Action-test.json
Assign Actions to Roles
Configure which user roles can access which API actions in roleaction.json. Map each action ID to the required roles: Roleaction.json. Refer example below: