Options
All
  • Public
  • Public/Protected
  • All
Menu

Interface IMessageQueue

Interface for asynchronous message queues.

Not all queues may implement all the methods. Attempt to call non-supported method will result in NotImplemented exception. To verify if specific method is supported consult with MessagingCapabilities.

see

[[MessageEnvelop]]

see

MessagingCapabilities

Hierarchy

  • IOpenable
  • IClosable
    • IMessageQueue

Implemented by

Index

Methods

abandon

  • Returnes message into the queue and makes it available for all subscribers to receive it again. This method is usually used to return a message which could not be processed at the moment to repeat the attempt. Messages that cause unrecoverable errors shall be removed permanently or/and send to dead letter queue.

    Parameters

    • message: MessageEnvelope

      a message to return.

    • Optional callback: function

      (optional) callback function that receives an error or null for success.

        • (err: any): void
        • Parameters

          • err: any

          Returns void

    Returns void

beginListen

close

  • close(correlationId: string, callback?: function): void
  • Abstract method that will contain the logic for closing a component, disconnecting it from other services, and disposing resources.

    Parameters

    • correlationId: string

      unique business transaction id to trace calls across components.

    • Optional callback: function

      the function to call when the closing process is complete. It will be called with an error if one is raised.

        • (err: any): void
        • Parameters

          • err: any

          Returns void

    Returns void

complete

  • Permanently removes a message from the queue. This method is usually used to remove the message after successful processing.

    Parameters

    • message: MessageEnvelope

      a message to remove.

    • Optional callback: function

      (optional) callback function that receives an error or null for success.

        • (err: any): void
        • Parameters

          • err: any

          Returns void

    Returns void

endListen

  • endListen(correlationId: string): void
  • Ends listening for incoming messages. When this method is call listen unblocks the thread and execution continues.

    Parameters

    • correlationId: string

      (optional) transaction id to trace execution through call chain.

    Returns void

getCapabilities

getName

  • getName(): string

isOpen

  • isOpen(): boolean
  • Abstract method that will contain the logic for checking whether or not a component has been opened.

    Returns boolean

    true if the component has been opened and false otherwise.

listen

  • Listens for incoming messages and blocks the current thread until queue is closed.

    see

    IMessageReceiver

    see

    receive

    Parameters

    • correlationId: string

      (optional) transaction id to trace execution through call chain.

    • receiver: IMessageReceiver

      a receiver to receive incoming messages.

    Returns void

moveToDeadLetter

  • Permanently removes a message from the queue and sends it to dead letter queue.

    Parameters

    • message: MessageEnvelope

      a message to be removed.

    • Optional callback: function

      (optional) callback function that receives an error or null for success.

        • (err: any): void
        • Parameters

          • err: any

          Returns void

    Returns void

open

  • open(correlationId: string, callback?: function): void
  • Abstract method that will contain the logic for opening a component and establishing connections to other services.

    Parameters

    • correlationId: string

      unique business transaction id to trace calls across components.

    • Optional callback: function

      the function to call when the opening process is complete. It will be called with an error if one is raised.

        • (err: any): void
        • Parameters

          • err: any

          Returns void

    Returns void

peek

  • peek(correlationId: string, callback: function): void
  • Peeks a single incoming message from the queue without removing it. If there are no messages available in the queue it returns null.

    Parameters

    • correlationId: string

      (optional) transaction id to trace execution through call chain.

    • callback: function

      callback function that receives a message or error.

    Returns void

peekBatch

  • peekBatch(correlationId: string, messageCount: number, callback: function): void
  • Peeks multiple incoming messages from the queue without removing them. If there are no messages available in the queue it returns an empty list.

    Parameters

    • correlationId: string

      (optional) transaction id to trace execution through call chain.

    • messageCount: number

      a maximum number of messages to peek.

    • callback: function

      callback function that receives a list with messages or error.

    Returns void

readMessageCount

  • readMessageCount(callback: function): void
  • Reads the current number of messages in the queue to be delivered.

    Parameters

    • callback: function

      callback function that receives number of messages or error.

        • (err: any, count: number): void
        • Parameters

          • err: any
          • count: number

          Returns void

    Returns void

receive

  • receive(correlationId: string, waitTimeout: number, callback: function): void
  • Receives an incoming message and removes it from the queue.

    Parameters

    • correlationId: string

      (optional) transaction id to trace execution through call chain.

    • waitTimeout: number

      a timeout in milliseconds to wait for a message to come.

    • callback: function

      callback function that receives a message or error.

    Returns void

renewLock

  • renewLock(message: MessageEnvelope, lockTimeout: number, callback?: function): void
  • Renews a lock on a message that makes it invisible from other receivers in the queue. This method is usually used to extend the message processing time.

    Parameters

    • message: MessageEnvelope

      a message to extend its lock.

    • lockTimeout: number

      a locking timeout in milliseconds.

    • Optional callback: function

      (optional) callback function that receives an error or null for success.

        • (err: any): void
        • Parameters

          • err: any

          Returns void

    Returns void

send

  • send(correlationId: string, envelope: MessageEnvelope, callback?: function): void
  • Sends a message into the queue.

    Parameters

    • correlationId: string

      (optional) transaction id to trace execution through call chain.

    • envelope: MessageEnvelope

      a message envelop to be sent.

    • Optional callback: function

      (optional) callback function that receives error or null for success.

        • (err: any): void
        • Parameters

          • err: any

          Returns void

    Returns void

sendAsObject

  • sendAsObject(correlationId: string, messageType: string, value: any, callback?: function): void
  • Sends an object into the queue. Before sending the object is converted into JSON string and wrapped in a [[MessageEnvelop]].

    see

    send

    Parameters

    • correlationId: string

      (optional) transaction id to trace execution through call chain.

    • messageType: string

      a message type

    • value: any

      an object value to be sent

    • Optional callback: function

      (optional) callback function that receives error or null for success.

        • (err: any): void
        • Parameters

          • err: any

          Returns void

    Returns void

Generated using TypeDoc