How ayushmancodes2004/finroute works
This repository contains two Spring services: an API-management service for platform organizations, tenant administrators, and management-user authentication, plus a smart-gateway service with a health endpoint and authenticated access policy. The main workflow is platform administration creating or changing an organization and provisioning its tenant administrator; users can separately log in to receive a JWT. Source excerpts show the management controllers, services, and repository calls. Gateway routing behavior and API-management security wiring were not sampled, so they are not inferred here.
Main entry points: OrganizationService.java Organization service · AuthenticationService.java Authentication service · PlatformOrganizationController.java Organization API · AuthenticationController.java Authentication API
Components 20
API management
- Organization API
api-management-service/src/main/java/in/finroute/apigateway/management/controller/PlatformOrganizationController.java - Organization service
api-management-service/src/main/java/in/finroute/apigateway/management/service/OrganizationService.java - Authentication API
api-management-service/src/main/java/in/finroute/apigateway/management/controller/AuthenticationController.java - Authentication service
api-management-service/src/main/java/in/finroute/apigateway/management/service/AuthenticationService.java - Management health
api-management-service/src/main/java/in/finroute/apigateway/management/service/HealthService.java
Management domain
- Organizations
api-management-service/src/main/java/in/finroute/apigateway/management/repository/OrganizationRepository.java - Management users
api-management-service/src/main/java/in/finroute/apigateway/management/repository/ManagementUserRepository.java - Roles
api-management-service/src/main/java/in/finroute/apigateway/management/repository/RoleRepository.java - Domain entities
api-management-service/src/main/java/in/finroute/apigateway/management/entity - Organization DTOs
api-management-service/src/main/java/in/finroute/apigateway/management/dto - Login DTOs
api-management-service/src/main/java/in/finroute/apigateway/management/dto - Management database
Smart gateway
- Gateway security
smart-gateway-service/src/main/java/in/finroute/apigateway/gateway/config/SecurityConfig.java - Gateway health API
smart-gateway-service/src/main/java/in/finroute/apigateway/gateway/controller/HealthController.java - Health response
smart-gateway-service/src/main/java/in/finroute/apigateway/gateway/dto/HealthResponse.java
Other components
- Platform operator
- Management user
- Password encoder
- JWT encoder
- Gateway client
Connections 14
- Platform operator → Organization API: manages
api-management-service/src/main/java/in/finroute/apigateway/management/controller/PlatformOrganizationController.java - Organization API → Organization service: dispatches
api-management-service/src/main/java/in/finroute/apigateway/management/controller/PlatformOrganizationController.java - Organization service → Organizations: reads/writes
api-management-service/src/main/java/in/finroute/apigateway/management/service/OrganizationService.java - Organization service → Management users: reads/writes
api-management-service/src/main/java/in/finroute/apigateway/management/service/OrganizationService.java - Organization service → Roles: looks up
api-management-service/src/main/java/in/finroute/apigateway/management/service/OrganizationService.java - Organization service → Password encoder: encodes password
api-management-service/src/main/java/in/finroute/apigateway/management/service/OrganizationService.java - Management user → Authentication API: logs in
api-management-service/src/main/java/in/finroute/apigateway/management/controller/AuthenticationController.java - Authentication API → Authentication service: dispatches
api-management-service/src/main/java/in/finroute/apigateway/management/controller/AuthenticationController.java - Authentication service → Management users: loads user
api-management-service/src/main/java/in/finroute/apigateway/management/service/AuthenticationService.java - Authentication service → Password encoder: checks password
api-management-service/src/main/java/in/finroute/apigateway/management/service/AuthenticationService.java - Authentication service → JWT encoder: signs token
api-management-service/src/main/java/in/finroute/apigateway/management/service/AuthenticationService.java - Management health → Management database: checks connection
api-management-service/src/main/java/in/finroute/apigateway/management/service/HealthService.java - Gateway client → Gateway health API: requests health
smart-gateway-service/src/main/java/in/finroute/apigateway/gateway/controller/HealthController.java - Gateway health API → Health response: returns
smart-gateway-service/src/main/java/in/finroute/apigateway/gateway/controller/HealthController.java