Estados &Events

Estados y events son principios fundamentales para entender y trabajar con IPF. Los estados representan un punto en el procesamiento de su sistema, donde events son hechos persistentes sobre algo que ha ocurrido en su sistema. (usted puede leer más sobre estados y events from a 'state perspectiva de la máquina aquí - Máquina de Estados)

Global States

Primero consideramos el "Global State Set". El global state el conjunto es un conjunto de estados que representan el total state de un pago. Se utiliza particularmente cuando un pago puede abarcar múltiples flujos (por ejemplo, si el procesamiento del pago se divide en partes de "iniciación" y "ejecución"), pero también puede aplicar un tipo de agrupación general.state a las partes individuales del flujo para simplificar lo aparente state transiciones desde un nivel de pago.

Cada nivel de flujo state puede ser mapeado a un global state de manera que múltiples estados de nivel de flujo puedan ser considerados para dejar el pago en el mismo global general state.

Un global predeterminado state se proporciona un conjunto que ofrece los siguientes estados estándar: Pendiente, Aceptado, Rechazado, Acción Manual Requerida y Cancelado.

Estados

El siguiente concepto a considerar dentro de nuestro flujo es un "Estado". Esto es simplemente un resting punto en el flujo por el que el pago puede pasar en su recorrido. Por ejemplo, podemos tener un flujo muy simple que va de " State A" a " State B".

A state tiene una serie de propiedades:

  • "Nombre"

  • "Descripción"

  • "Global" state"

  • "Es terminal" flag-el terminal flag se utiliza para indicar que esto finaliza el flujo al que el state pertenece.

Cada flujo puede contener muchos estados diferentes.

Además de la state es posible especificar propiedades por encima de su nivel técnico.

  • Si un flujo debe ser pasivado cuando la acción asociada con eso state ha sido procesado.

  • Si el state no es recuperable- en nuestro contexto significa si las acciones asociadas con esto pueden state¿ser reproducido? Esto es particularmente útil cuando un dominio externo no puede tolerar solicitudes repetidas.

Events

Cuando un flujo se mueve de uno state a otro, esto se conoce como una "Transición de Estado". Dentro de IPF, para un state la transición para que ocurra, entonces el sistema necesita recibir un "Event" en el proceso de pago. En este caso, en realidad es un tipo específico de event conocido como un "Domain Event".

A domain event es un hecho persistente-la llegada de un event significa que ha ocurrido algo explícito que puede causar algún tipo de cambio en el procesamiento de nuestro pago.

An event tiene una serie de propiedades:

  • "Nombre"

  • "Descripción"

  • Lista de "Business data" elementos.

Cuando un event se forma, entonces el sistema verificará su propio comportamiento para determinar qué acciones deben realizarse.

The behaviours y procesamiento triggered por events se discute aquí. Hay tres ocasiones en las que un event puede causar un cambio en el procesamiento, estos se conocen como las condiciones de "Criterios de Evento" y se definen como:

  • En- este movimiento ocurrirá a la llegada de un solo event(por ejemplo, podemos hacer la transición al recibir " Event 1")

  • En cualquiera de- este movimiento ocurrirá a la llegada de uno de múltiples events(por ejemplo, podemos hacer la transición al recibir cualquiera de " Event 1" o " Event 2")

  • En todos los- este movimiento solo ocurrirá tras la llegada de múltiples events(por ejemplo, podemos realizar la transición solo después de recibir ambos " Event 1" y " Event 2")

Aquí hemos descrito el " Domain Event "cuál es el tipo de" event que se declara explícitamente dentro de cualquier MPS solución. Sin embargo, IPF en su conjunto utiliza una serie de diferentes tipos de event:
  • " System Event "- esto ocurre cuando algo sucede en el sistema y puede ser adaptado para ser específico a las necesidades individuales.

  • " Action Timeout Events "- estos events ocurren durante el procesamiento cuando se rompen los ajustes de tiempo de espera configurados.

  • " Decision Events "- estos event se utilizan como respuesta a la recepción de resultados de decisions.

Todo esto event Los tipos se discuten en los conceptos o tutoriales.