Пример #1
0
 public void Handle(IntrospectionRequestReceived evt)
 {
     _repository.Add(new Core.Models.EventAggregate
     {
         Id          = evt.Id,
         AggregateId = evt.ProcessId,
         Description = "Start introspection",
         CreatedOn   = DateTime.UtcNow,
         Payload     = evt.Payload,
         Order       = evt.Order,
         Type        = evt.ServerName,
         Verbosity   = Core.Models.EventVerbosities.Information,
         Key         = "introspection_started"
     }).Wait();
 }
        public string GetPayload(IntrospectionRequestReceived parameter)
        {
            if (parameter == null)
            {
                throw new ArgumentNullException(nameof(parameter));
            }

            if (parameter.Parameter == null)
            {
                throw new ArgumentNullException(nameof(parameter.Parameter));
            }

            var param   = parameter.Parameter;
            var jsonObj = new JObject();

            jsonObj.Add("token", param.Token);
            jsonObj.Add("token_type_hint", param.Token);
            jsonObj.Add("client_id", param.ClientId);
            jsonObj.Add("client_secret", param.ClientSecret);
            jsonObj.Add("client_assertion", param.ClientAssertion);
            jsonObj.Add("client_assertion_type", param.ClientAssertionType);
            var clientId = GetClientId(parameter.AuthenticationHeader);

            if (string.IsNullOrWhiteSpace(clientId))
            {
                clientId = param.ClientId;
            }

            var result = new Payload
            {
                Authorization = BuildAuthHeader(parameter.AuthenticationHeader),
                Content       = jsonObj,
                ClientId      = clientId
            };

            return(JsonConvert.SerializeObject(result));
        }