Хранение полученных сообщений в очереди

В некоторых случаях вам может понадобиться хранить входящие в порт сообщения в очереди. Это требуется тогда, когда поступающие в порт сообщения обрабатываются не сразу по прибытии, а позднее. Вы можете легко реализовать очередь такого рода с помощью коллекции, которая будет играть роль хранилища сообщений.

 Чтобы создать в порте очередь, хранящую поступающие сообщения

  1. Создайте коллекцию. Назовите ее, скажем, messages. Если все ваши сообщения - одного определенного класса, то укажите имя этого класса в свойстве коллекции Тип элементов. 
  2. Выберите порт, в котором вы хотите хранить входящие сообщения. Чтобы добавить сообщение в нашу коллекцию messages, напишите следующий код в свойстве порта Действие при получении:

    messages.add( msg );

    return false;

 Обратите внимание, что написав return false; мы запрещаем обработку прибывшего сообщения, принятую по умолчанию, и поэтому сообщения, полученые этим портом, не будут перенаправляться дальше согласно правилам пересылки сообщений.  Если же вам нужно перенаправлять их дальше, замените эту строку на return true; 

  1. Входящие сообщения будут помещаться в созданную "очередь порта". Вы можете работать с ее содержимым , используя стандартный  Программный интерфейс коллекции.