How westcoastinformatics/wci-mt2-service works
Refset Service is a REST backend for the Refset Tool GUI, managing reference sets and mapping work while integrating with Snowstorm. The documented workflow is a GUI user calling REST endpoints, with an administrator able to trigger synchronization that loads code systems and reference sets from Snowstorm into the local database. The source index supports the controller, service, persistence, search, and branch-management layers; the README documents major integrations and capabilities. Several subsystem links are dashed because their implementation was not sampled.
Main entry points: rest REST Controllers · RefsetService.java Refset Service · TerminologyService.java Terminology Service · sync Sync Agents
Components 19
REST API
- REST Controllers
src/main/java/org/ihtsdo/refsetservice/rest
Refset Domain
- Refset Service
src/main/java/org/ihtsdo/refsetservice/terminologyservice/RefsetService.java - Member Service
src/main/java/org/ihtsdo/refsetservice/terminologyservice/RefsetMemberService.java - Domain Models
src/main/java/org/ihtsdo/refsetservice/model - Branch Service
src/main/java/org/ihtsdo/refsetservice/terminologyservice/BranchService.java - Security Service
src/main/java/org/ihtsdo/refsetservice/service/SecurityService.java - Terminology Service
src/main/java/org/ihtsdo/refsetservice/service/TerminologyService.java - Search Handler
src/main/java/org/ihtsdo/refsetservice/handler/DefaultSearchHandler.java
External Integrations
- Snowstorm Handler
src/main/java/org/ihtsdo/refsetservice/handler/SNOMEDSnowstormTerminologyServerHandler.java - Snowstorm
- IMS / Crowd
Persistence and Search
- MySQL Database
- Elasticsearch
- Core Utilities
src/main/java/org/ihtsdo/refsetservice/util
Sync and Reports
- Sync Agents
src/main/java/org/ihtsdo/refsetservice/sync - Export Strategies
src/main/java/org/ihtsdo/refsetservice/handler/snowstorm/export - Norway Reports
src/main/java/org/ihtsdo/refsetservice/terminologyservice/norway - Audit Service
src/main/java/org/ihtsdo/refsetservice/service/AuditService.java
Other components
- GUI User
Connections 19
- GUI User → REST Controllers: calls REST
- REST Controllers → Refset Service: dispatches
src/main/java/org/ihtsdo/refsetservice/rest/RefsetController.java - REST Controllers → Security Service: authenticates
src/main/java/org/ihtsdo/refsetservice/rest/RefsetController.java - Refset Service → Domain Models: manages
src/main/java/org/ihtsdo/refsetservice/terminologyservice/RefsetService.java - Member Service → Domain Models: uses
src/main/java/org/ihtsdo/refsetservice/terminologyservice/RefsetMemberService.java - Refset Service → Branch Service: manages branches
src/main/java/org/ihtsdo/refsetservice/terminologyservice/RefsetService.java - Refset Service → Terminology Service: persists data
src/main/java/org/ihtsdo/refsetservice/terminologyservice/RefsetService.java - Terminology Service → MySQL Database: reads and writes
- Terminology Service → Search Handler: dispatches search
src/main/java/org/ihtsdo/refsetservice/service/TerminologyService.java - Search Handler → Elasticsearch: searches
- Security Service → IMS / Crowd: authenticates users
- Member Service → Export Strategies: exports members
src/main/java/org/ihtsdo/refsetservice/terminologyservice/RefsetMemberService.java - REST Controllers → Sync Agents: triggers sync
src/main/java/org/ihtsdo/refsetservice/rest/RefsetController.java - Sync Agents → Snowstorm: loads terminology
- Sync Agents → MySQL Database: loads data
- Snowstorm Handler → Snowstorm: integrates
- REST Controllers → Norway Reports: serves reports
- REST Controllers → Audit Service: records activity
- Terminology Service → Core Utilities: uses helpers
src/main/java/org/ihtsdo/refsetservice/service/TerminologyService.java