|
SVCS - Русская документация
|
Обрабатывает протокол удаленной связи для SVCS. Подробнее...
#include <RemoteProtocol.hxx>
Открытые члены | |
| RemoteProtocol (std::shared_ptr< ISubject > event_bus, std::shared_ptr< RepositoryManager > repository_manager) | |
| Конструирует RemoteProtocol с необходимыми зависимостями. | |
| ~RemoteProtocol ()=default | |
| Деструктор по умолчанию. | |
| bool | handleReceivePack () |
| Обрабатывает протокол 'receive-pack' для операций push. | |
| bool | handleUploadPack () |
| Обрабатывает протокол 'upload-pack' для операций pull. | |
Обрабатывает протокол удаленной связи для SVCS.
Управляет пользовательским протоколом для операций push и pull, включая согласование объектов, передачу данных и обновления ссылок между клиентом и сервером. Протокол представляет собой простой текстовый обмен через стандартный ввод/вывод.
| svcs::server::RemoteProtocol::RemoteProtocol | ( | std::shared_ptr< ISubject > | event_bus, |
| std::shared_ptr< RepositoryManager > | repository_manager ) |
Конструирует RemoteProtocol с необходимыми зависимостями.
| event_bus | Общий указатель на шину событий для системы уведомлений (ISubject). |
| repository_manager | Общий указатель на менеджер репозитория для операций с репозиторием (RepositoryManager). |
| bool svcs::server::RemoteProtocol::handleReceivePack | ( | ) |
Обрабатывает протокол 'receive-pack' для операций push.
Эта функция обрабатывает запросы push от клиента. Она управляет согласованием объектов, получает недостающие данные объектов от клиента и, наконец, пытается применить запрошенные обновления ссылок (например, обновление веток).
| bool svcs::server::RemoteProtocol::handleUploadPack | ( | ) |
Обрабатывает протокол 'upload-pack' для операций pull.
Эта функция обрабатывает запросы pull от клиента. Она выполняет согласование объектов путем определения, каких объектов не хватает клиенту на основе его списка 'have', а затем упаковывает и отправляет недостающие данные объектов клиенту.