/// <summary>
 ///
 /// </summary>
 private void SendAuditEvent(IntegrationRequestEvent integrationRequestEvent)
 {
     if (runtimeBundleProperties.EventsProperties.IntegrationAuditEventsEnabled)
     {
         IntegrationRequestSentEventImpl @event = new IntegrationRequestSentEventImpl(runtimeBundleProperties.AppName, runtimeBundleProperties.AppVersion, runtimeBundleProperties.ServiceName, runtimeBundleProperties.ServiceFullName, runtimeBundleProperties.ServiceType, runtimeBundleProperties.ServiceVersion, integrationRequestEvent.ExecutionId, integrationRequestEvent.ProcessDefinitionId, integrationRequestEvent.ProcessInstanceId, integrationRequestEvent.IntegrationContextId, integrationRequestEvent.FlowNodeId);
         auditProducer.Send(MessageBuilder <IProcessEngineEvent[]> .WithPayload(new IProcessEngineEvent[] { @event }).Build());
     }
 }
Example #2
0
        /// <summary>
        /// Publishes an custom event using the Spring <seealso cref="IApplicationEventPublisher"/>. This event will be caught by
        /// <seealso ref="IntegrationRequestSender#sendIntegrationRequest(IntegrationRequestEvent)"/> which is annotated with
        /// <seealso ref="TransactionalEventListener"/> on phase <seealso ref="TransactionPhase#AFTER_COMMIT"/>. </summary>
        /// <param name="execution"> the related execution </param>
        /// <param name="integrationContext"> the related integration context </param>
        private void PublishSpringEvent(IExecutionEntity execution, IIntegrationContextEntity integrationContext)
        {
            IntegrationRequestEvent @event = new IntegrationRequestEvent(execution, integrationContext, runtimeBundleProperties.AppName, runtimeBundleProperties.AppVersion, runtimeBundleProperties.ServiceName, runtimeBundleProperties.ServiceFullName, runtimeBundleProperties.ServiceType, runtimeBundleProperties.ServiceVersion);

            eventPublisher.PublishEvent(@event);
        }
 /// <summary>
 ///
 /// </summary>
 private IMessage <IntegrationRequestEvent> buildIntegrationRequestMessage(IntegrationRequestEvent @event)
 {
     return(MessageBuilder <IntegrationRequestEvent> .WithPayload(@event).SetHeader(CONNECTOR_TYPE, @event.ConnectorType).Build());
 }
 /// <summary>
 ///
 /// </summary>
 public virtual void sendIntegrationRequest(IntegrationRequestEvent @event)
 {
     resolver.ResolveDestination(@event.ConnectorType).Send(buildIntegrationRequestMessage(@event));
     SendAuditEvent(@event);
 }
 public void PublishEvent(IntegrationRequestEvent @event)
 {
     inMemoryBus.PublishAsync(@event);
 }