Needed an additional check for empty correlation keys - which on a RECEIVE message, should always match anything.
When finding messages to match a send, assure they are RECIEVE messages. Fix some of the json output for messages sent to the front end
This commit is contained in:
parent
7c74e216a2
commit
4ca6e3f276
|
@ -100,6 +100,11 @@ class MessageInstanceModel(SpiffworkflowBaseDBModel):
|
||||||
# We know we have a match, and we can just return if we don't have to figure out the key
|
# We know we have a match, and we can just return if we don't have to figure out the key
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
if self.correlation_keys == {}:
|
||||||
|
# Then there is nothing more to match on -- we accept any message with the given name.
|
||||||
|
return True
|
||||||
|
|
||||||
|
|
||||||
# Loop over the receives' correlation keys - if any of the keys fully match, then we match.
|
# Loop over the receives' correlation keys - if any of the keys fully match, then we match.
|
||||||
for expected_values in self.correlation_keys.values():
|
for expected_values in self.correlation_keys.values():
|
||||||
if self.payload_matches_expected_values(
|
if self.payload_matches_expected_values(
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
"""Message_service."""
|
"""Message_service."""
|
||||||
from spiffworkflow_backend.models.db import db
|
from spiffworkflow_backend.models.db import db
|
||||||
from spiffworkflow_backend.models.message_instance import MessageInstanceModel
|
from spiffworkflow_backend.models.message_instance import MessageInstanceModel, MessageTypes
|
||||||
from spiffworkflow_backend.models.message_instance import MessageStatuses
|
from spiffworkflow_backend.models.message_instance import MessageStatuses
|
||||||
from spiffworkflow_backend.models.message_triggerable_process_model import (
|
from spiffworkflow_backend.models.message_triggerable_process_model import (
|
||||||
MessageTriggerableProcessModel,
|
MessageTriggerableProcessModel,
|
||||||
|
@ -42,7 +42,8 @@ class MessageService:
|
||||||
|
|
||||||
# Find available messages that might match
|
# Find available messages that might match
|
||||||
available_receive_messages = MessageInstanceModel.query.filter_by(
|
available_receive_messages = MessageInstanceModel.query.filter_by(
|
||||||
name=message_instance_send.name, status=MessageStatuses.ready.value
|
name=message_instance_send.name, status=MessageStatuses.ready.value,
|
||||||
|
message_type=MessageTypes.receive.value
|
||||||
).all()
|
).all()
|
||||||
message_instance_receive: MessageInstanceModel | None = None
|
message_instance_receive: MessageInstanceModel | None = None
|
||||||
try:
|
try:
|
||||||
|
|
Loading…
Reference in New Issue