public async Task Handle(CreateApplicationProcessStartedEvent createApplicationProcessStartedEvent) { _logger.LogProgress(OperationStatus.InProgress, "Indexing started", createApplicationProcessStartedEvent.CorrelationId); var applicationDto = _mapper.Map <CreateApplicationProcessStartedEvent, ApplicationDto>(createApplicationProcessStartedEvent); await _searchableApplicationIndexer.Index(applicationDto); var applicationCreatedEvent = new ApplicationCreatedEvent(createApplicationProcessStartedEvent); await _eventStore.AppendEvent(applicationCreatedEvent.Id, applicationCreatedEvent); await _eventPublisher.PublishEvent(applicationCreatedEvent); _logger.LogProgress(OperationStatus.Finished, string.Empty, createApplicationProcessStartedEvent.CorrelationId); }
/// <summary> /// Serializes the object to JSON. /// </summary> /// <param name="writer">The <see cref="T: Newtonsoft.Json.JsonWriter" /> to write to.</param> /// <param name="obj">The object to serialize to JSON.</param> internal static void Serialize(JsonWriter writer, ApplicationCreatedEvent obj) { // Required properties are always serialized, optional properties are serialized when not null. writer.WriteStartObject(); writer.WriteProperty(obj.Kind.ToString(), "Kind", JsonWriterExtensions.WriteStringValue); writer.WriteProperty(obj.EventInstanceId, "EventInstanceId", JsonWriterExtensions.WriteGuidValue); writer.WriteProperty(obj.TimeStamp, "TimeStamp", JsonWriterExtensions.WriteDateTimeValue); writer.WriteProperty(obj.ApplicationId, "ApplicationId", JsonWriterExtensions.WriteStringValue); writer.WriteProperty(obj.ApplicationTypeName, "ApplicationTypeName", JsonWriterExtensions.WriteStringValue); writer.WriteProperty(obj.ApplicationTypeVersion, "ApplicationTypeVersion", JsonWriterExtensions.WriteStringValue); writer.WriteProperty(obj.ApplicationDefinitionKind, "ApplicationDefinitionKind", JsonWriterExtensions.WriteStringValue); if (obj.HasCorrelatedEvents != null) { writer.WriteProperty(obj.HasCorrelatedEvents, "HasCorrelatedEvents", JsonWriterExtensions.WriteBoolValue); } writer.WriteEndObject(); }