public virtual ISafeguardEventListener GetEventListener()
        {
            if (_disposed)
            {
                throw new ObjectDisposedException("SafeguardConnection");
            }
            var eventListener = new SafeguardEventListener(
                $"https://{_authenticationMechanism.NetworkAddress}/service/event/signalr",
                _authenticationMechanism.GetAccessToken(), _authenticationMechanism.IgnoreSsl, _authenticationMechanism.ValidationCallback);

            Log.Debug("Event listener successfully created for Safeguard connection.");
            return(eventListener);
        }
        public ISafeguardEventListener GetA2AEventListener(IEnumerable <SecureString> apiKeys, SafeguardEventHandler handler)
        {
            if (_disposed)
            {
                throw new ObjectDisposedException("SafeguardA2AContext");
            }
            if (apiKeys == null)
            {
                throw new ArgumentException("Parameter may not be null", nameof(apiKeys));
            }

            var eventListener = new SafeguardEventListener($"https://{_networkAddress}/service/a2a", _clientCertificate,
                                                           apiKeys, _ignoreSsl, _validationCallback);

            eventListener.RegisterEventHandler("AssetAccountPasswordUpdated", handler);
            Log.Debug("Event listener successfully created for Safeguard A2A context.");
            return(eventListener);
        }