-
Notifications
You must be signed in to change notification settings - Fork 0
System API to message chart
Stanislav Nepochatov edited this page Mar 24, 2023
·
9 revisions
Following table displays connection between REST API calls and internal message flow between modules. Each call can invoke certain module by message. Certain calls can produce notification messages in system. Inter module messages can be invoked without direct REST call so they listed without URL.
URL | Call topic | Description | Module | Notification topic |
---|---|---|---|---|
POST /api/user |
- | Create user | GATEWAY |
Ribbon.Global.Notification.UserCreated |
PUT /api/user/:id |
- | Update user | GATEWAY |
Ribbon.Global.Notification.UserUpdated |
DELETE /api/user |
- | Delete user | GATEWAY |
Ribbon.Global.Notification.UserDeleted |
POST /api/group |
- | Create group | GATEWAY |
Ribbon.Global.Notification.GroupCreated |
PUT /api/group |
- | Update group | GATEWAY |
Ribbon.Global.Notification.GroupUpdated |
DELETE /api/group/:id |
- | Delete group | GATEWAY |
Ribbon.Global.Notification.GroupDeleted |
POST /api/directory |
Ribbon.Global.CreateDirectory |
Create directory | DIRECTORY |
Ribbon.Global.Notification.DirectoryCreated |
PUT /api/directory |
Ribbon.Global.UpdateDirectory |
Update directory | DIRECTORY |
Ribbon.Global.Notification.DirectoryUpdated |
DELETE /api/directory/:path |
Ribbon.Global.DeleteDirectory |
Delete directory | DIRECTORY |
Ribbon.Global.Notification.DirectoryDeleted |
GET /api/directory |
Ribbon.Global.GetDirectoryAll |
Get directories paged | DIRECTORY |
- |
GET /api/directory/:path |
Ribbon.Global.GetDirectoryByPath |
Get directory by path | DIRECTORY |
- |
GET /api/directory/access/permission/all |
Ribbon.Global.GetPermissions |
Get all permissions | DIRECTORY |
- |
POST /api/directory/access/:path |
Ribbon.Global.EditDirectoryAccess |
Edit directory access for user/groups | DIRECTORY |
- |
GET /api/directory/access/{path} |
Ribbon.Global.GetDirectoryAccess |
Get directory access by path | DIRECTORY |
- |
GET /api/directory/permission/{permission} |
Ribbon.Global.GetDirectoryByPermission |
Get directories by permission | DIRECTORY |
- |
GET /api/directory/access/permission/current/{path} |
Ribbon.Global.GetCurrentPermissions |
Get current permissions by directory | DIRECTORY |
- |
POST /api/message |
Ribbon.Global.CreateMessage |
Create message | MESSAGE |
Ribbon.Global.Notification.MessageCreated |
PUT /api/message |
Ribbon.Global.UpdateMessage |
Update message | MESSAGE |
Ribbon.Global.Notification.MessageUpdated |
DELETE /api/message/:uid |
Ribbon.Global.DeleteMessage |
Delete message | MESSAGE |
Ribbon.Global.Notification.MessageDeleted |
GET /api/message |
Ribbon.Global.GetMessageAll |
Get messages paged (without content) | MESSAGE |
- |
GET /api/message |
Ribbon.Global.GetMessageByUid |
Get message by uid | MESSAGE |
- |
GET /api/message/property/all |
Ribbon.Global.GetProperties |
Get all property types | MESSAGE |
- |
POST /api/message/property/:uid |
Ribbon.Global.AddMessageProperty |
Add property to the message | MESSAGE |
- |
POST /api/io/scheme |
Ribbon.IO.SaveScheme.$type.$protocol |
Save IO scheme | EXCHANGER |
Ribbon.IO.SchemeStatusUpdated |
GET /api/io/scheme/:type/:protocol/:name |
Ribbon.IO.GetScheme.$type.$protocol |
Get IO scheme with config | EXCHANGER |
- |
DELETE /api/io/scheme/:type/:protocol/:name |
Ribbon.IO.SchemeDelete.$type.$protocol |
Delete IO scheme | EXCHANGER |
Ribbon.IO.SchemeStatusUpdated |
POST /api/io/export/scheme/:protocol/:name/assign/:dir |
Ribbon.IO.ExportSchemeAssign.$protocol |
Assign export scheme to directory | EXCHANGER |
Ribbon.IO.SchemeStatusUpdated |
DELETE /api/io/export/scheme/:protocol/:name/dismiss/:dir |
Ribbon.IO.ExportSchemeDismiss.$protocol |
Dismiss export scheme from directory | EXCHANGER |
Ribbon.IO.SchemeStatusUpdated |
Following table displays which module process which notification.
Notification topic | Processing module | Description |
---|---|---|
Ribbon.Global.Notification.UserCreated |
DIRECTORY |
Sync user data |
Ribbon.Global.Notification.UserUpdated |
DIRECTORY |
Sync user data |
Ribbon.Global.Notification.UserDeleted |
DIRECTORY |
Sync user data |
Ribbon.Global.Notification.GroupCreated |
DIRECTORY |
Sync group data |
Ribbon.Global.Notification.GroupUpdated |
DIRECTORY |
Sync group data |
Ribbon.Global.Notification.GroupDeleted |
DIRECTORY |
Sync group data |
Ribbon.Global.Notification.DirectoryCreated |
MESSAGE ,EXCHANGER
|
Sync directory data |
Ribbon.Global.Notification.DirectoryUpdated |
MESSAGE ,EXCHANGER
|
Sync directory data |
Ribbon.Global.Notification.DirectoryDeleted |
MESSAGE ,EXCHANGER
|
Sync directory data |
Ribbon.Global.Notification.MessageCreated |
EXCHANGER |
Sync message data |
Ribbon.Global.Notification.MessageUpdated |
- | Sync message data |
Ribbon.Global.Notification.MessageDeleted |
- | Sync message data |
Ribbon.IO.SchemeStatusUpdated |
GATEWAY |
Sync scheme current status |
Certain modules can invoke inter module call. Each inter module activity listed in following table.
Source module | Call topic | Mode | Destination module | Description |
---|---|---|---|---|
MESSAGE ,EXCHANGER
|
Ribbon.Global.InitPermissions |
Async | DIRECTORY |
Init messages permissions on directories module |
MESSAGE ,EXCHANGER
|
Ribbon.Global.CheckDirectoryAccess |
Sync | DIRECTORY |
Checking access by permission on directories |
MESSAGE ,EXCHANGER
|
Ribbon.Global.GetDirectoryAll |
Sync | DIRECTORY |
Sync list of directories on startup |
EXCHANGER |
Ribbon.IO.Register |
Async | GATEWAY |
Register IO module on gateway |
EXCHANGER |
Ribbon.Property.Register |
Async | MESSAGE |
Register IO property accroding to type and protocol |
EXCHANGER |
Ribbon.Global.CreateMessage |
Sync | MESSAGE |
Create message during import or send system error |
EXCHANGER |
Ribbon.Global.AddMessageProperty |
Async | MESSAGE |
Add property to exported message |
EXCHANGER |
Ribbon.IO.SchemeStatusUpdated |
Async | GATEWAY |
Sync scheme current status |
EXCHANGER |
Ribbon.Global.GetErrorDirectory |
Sync | DIRECTORY |
Get name of error directory in system |