dispose method

  1. @override
void dispose()
override

Dispose the server

Implementation

@override
void dispose() {
  stop();
  _serverEventController.close();

  for (final plugin in plugins) {
    plugin.dispose();
  }

  // Free the document registry resources
  for (final documentId in _serverRegistry.documentIds) {
    try {
      _serverRegistry.getDocument(documentId)?.dispose();
    } catch (e) {
      _addServerEvent(
        ServerEvent(
          type: ServerEventType.error,
          message: 'Error disposing document: $e',
          data: {
            'documentId': documentId,
          },
        ),
      );
    }
  }
}