in source/ui/src/views/Dashboard.tsx [141:180]
async function controlConnection(paramConnectionName: string, control: ConnectionControl, protocol: MachineProtocol) {
try {
const connectionDefinition = buildConnectionDefinition({ connectionName: paramConnectionName, control, protocol });
const response: ControlConnectionResponse = await API.post(API_NAME, '/connections', { body: connectionDefinition });
switch (control) {
case ConnectionControl.START:
setMessageModalMessage(I18n.get('info.message.start.connection').replace('{}', response.connectionName));
break;
case ConnectionControl.STOP:
setMessageModalMessage(I18n.get('info.message.stop.connection').replace('{}', response.connectionName));
break;
case ConnectionControl.PUSH:
setMessageModalMessage(I18n.get('info.message.check.connectivity').replace('{}', response.connectionName));
break;
case ConnectionControl.PULL:
setMessageModalMessage(I18n.get('info.message.get.connection.configuration').replace('{}', response.connectionName));
break;
case ConnectionControl.DELETE:
setMessageModalMessage(I18n.get('info.message.delete.connection').replace('{}', response.connectionName));
break;
default:
break;
}
} catch (error) {
const errorMessage = getErrorMessage(error);
logger.error(errorMessage);
setMessageModalMessage(
<Alert variant="danger">
{I18n.get('error.message.control.connection')}
<br />
{I18n.get('error')}: <code>{JSON.stringify(errorMessage)}</code>
</Alert>
);
}
setShowMessageModal(true);
if ([ConnectionControl.START, ConnectionControl.STOP].includes(control)) getConnections();
}