Queue
Class: abstract Queue<T, K>
AbstractQueue implements the worker system
A Consumer allows you to define how to process message from the queue, implementing the retries policy
Extends
PubSubService<T,K>
Type parameters
• T = any
• K extends QueueParameters = QueueParameters
Constructors
new Queue(webda, name, params)
new Queue<
T,K>(webda,name,params):Queue<T,K>
Service
Parameters
• webda: Core<CoreEvents>
The main instance of Webda
• name: string
The name of the service
• params: DeepPartial<K>= {}
The parameters block define in the configuration file
Returns
Queue<T, K>
Inherited from
Source
packages/core/src/services/service.ts:334
Properties
_createException
_createException:
string
Inherited from
PubSubService._createException
Source
packages/core/src/services/service.ts:315
_initException
_initException:
any=undefined
Inherited from
Source
packages/core/src/services/service.ts:317
_initTime
_initTime:
number
Inherited from
Source
packages/core/src/services/service.ts:316
_name
protected_name:string
Service name
Inherited from
Source
packages/core/src/services/service.ts:308
_timeout
protected_timeout:Timeout
Current timeout handler
Source
packages/core/src/queues/queueservice.ts:69
_webda
protected_webda:Core<CoreEvents>
Webda Core object
Inherited from
Source
packages/core/src/services/service.ts:304
delayer
protecteddelayer:WaitDelayer
Delayer
Source
packages/core/src/queues/queueservice.ts:81
eventPrototype
eventPrototype: () =>
T
Returns
T
Source
packages/core/src/queues/queueservice.ts:82
failedIterations
protectedfailedIterations:number
Current pause instance
Source
packages/core/src/queues/queueservice.ts:77
logger
protectedlogger:Logger
Logger with class context
Inherited from
Source
packages/core/src/services/service.ts:321
metrics
protectedmetrics:Object
Type declaration
errors
errors:
Counter<string>
messages_pending
messages_pending:
Gauge<string>
messages_received
messages_received:
Counter<string>
messages_sent
messages_sent:
Counter<string>
processing_duration
processing_duration:
Histogram<string>
Inherited from
Source
packages/core/src/queues/pubsubservice.ts:12
parameters
protectedparameters:K
Hold the parameters for your service
It will be bring from the webda.config.json
Inherited from
Source
packages/core/src/services/service.ts:314
captureRejectionSymbol
staticreadonlycaptureRejectionSymbol: typeofcaptureRejectionSymbol
Inherited from
PubSubService.captureRejectionSymbol
Source
packages/core/node_modules/@types/node/events.d.ts:328
captureRejections
staticcaptureRejections:boolean
Sets or gets the default captureRejection value for all emitters.
Inherited from
PubSubService.captureRejections
Source
packages/core/node_modules/@types/node/events.d.ts:333
defaultMaxListeners
staticdefaultMaxListeners:number
Inherited from
PubSubService.defaultMaxListeners
Source
packages/core/node_modules/@types/node/events.d.ts:334
errorMonitor
staticreadonlyerrorMonitor: typeoferrorMonitor
This symbol shall be used to install a listener for only monitoring 'error'
events. Listeners installed using this symbol are called before the regular
'error' listeners are called.
Installing a listener using this symbol does not change the behavior once an
'error' event is emitted, therefore the process will still crash if no
regular 'error' listener is installed.
Inherited from
Source
packages/core/node_modules/@types/node/events.d.ts:327
Methods
__clean()
__clean():
Promise<void>
Clean the service data, can only be used in test mode
Returns
Promise<void>
Inherited from
Abstract
Source
packages/core/src/services/service.ts:642
addListener()
addListener(
eventName,listener):this
Alias for emitter.on(eventName, listener).
Parameters
• eventName: string | symbol
• listener: (...args) => void
Returns
this
Inherited from
Since
v0.1.26
Source
packages/core/node_modules/@types/node/events.d.ts:354
addRoute()
protectedaddRoute(url,methods,executer,openapi,override):void
Add a route dynamicaly
Parameters
• url: string
of the route can contains dynamic part like {uuid}
• methods: HttpMethodType[]
• executer: Function
Method to execute for this route
• openapi: OpenAPIWebdaDefinition= {}
• override: boolean= false
Returns
void
Inherited from
Source
packages/core/src/services/service.ts:482
authorizeClientEvent()
authorizeClientEvent(
_event,_context):boolean
Authorize a public event subscription
Parameters
• _event: string
• _context: OperationContext<any, any>
Returns
boolean
Inherited from
PubSubService.authorizeClientEvent
Source
packages/core/src/services/service.ts:438
computeParameters()
computeParameters():
void
Used to compute or derivate input parameter to attribute
Returns
void
Inherited from
PubSubService.computeParameters
Source
packages/core/src/services/service.ts:352
consume()
consume(
callback,eventPrototype?):CancelablePromise<void>
Work a queue calling the callback with every Event received
If the callback is called without exception the deleteMessage is called
Parameters
• callback: (event) => Promise<void>
• eventPrototype?: () => T
Returns
CancelablePromise<void>
Overrides
Source
packages/core/src/queues/queueservice.ts:172
consumerReceiveMessage()
protectedconsumerReceiveMessage():Promise<Object>
Receive and process message from the queue
Returns
Promise<Object>
items
items:
numberspeed
speed:
number
Source
packages/core/src/queues/queueservice.ts:109
deleteMessage()
abstractdeleteMessage(id):Promise<void>
Delete one message based on its receipt
Parameters
• id: string
Returns
Promise<void>
Source
packages/core/src/queues/queueservice.ts:93
emit()
emit<
Key>(event,data):boolean
Override to allow capturing long listeners
Type parameters
• Key extends string | number
Parameters
• event: symbol | Key