"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const handler_js_1 = require("@theia/core/lib/common/messaging/handler.js"); const proxy_factory_js_1 = require("@theia/core/lib/common/messaging/proxy-factory.js"); const preference_configurations_js_1 = require("@theia/core/lib/common/preferences/preference-configurations.js"); const index_js_1 = require("@theia/core/shared/inversify/index.js"); const gitzone_preference_configurations_js_1 = require("../common/gitzone-preference-configurations.js"); const gitzone_remote_protocol_js_1 = require("../common/gitzone-remote-protocol.js"); const gitzone_remote_node_service_js_1 = require("./gitzone-remote-node-service.js"); exports.default = new index_js_1.ContainerModule((bind, _unbind, isBound, rebind) => { const preferenceBinding = isBound(preference_configurations_js_1.PreferenceConfigurations) ? rebind(preference_configurations_js_1.PreferenceConfigurations) : bind(preference_configurations_js_1.PreferenceConfigurations); preferenceBinding.to(gitzone_preference_configurations_js_1.GitZonePreferenceConfigurations).inSingletonScope(); bind(gitzone_remote_node_service_js_1.GitZoneRemoteNodeService).toSelf().inSingletonScope(); bind(gitzone_remote_protocol_js_1.GitZoneRemoteServer).toService(gitzone_remote_node_service_js_1.GitZoneRemoteNodeService); bind(handler_js_1.ConnectionHandler) .toDynamicValue((context) => new proxy_factory_js_1.RpcConnectionHandler(gitzone_remote_protocol_js_1.gitZoneRemotePath, () => context.container.get(gitzone_remote_protocol_js_1.GitZoneRemoteServer))) .inSingletonScope(); }); //# sourceMappingURL=gitzone-remote-backend-module.js.map