Skip to main content

SQSQueue

@webda/aws • Readme | API


Class: SQSQueue<T, K>

Implement SQS as queue for Webda

Webda Modda​

Extends​

  • Queue<T, K>

Type parameters​

• T = any

• K extends SQSQueueParameters = SQSQueueParameters

Implements​

Constructors​

new SQSQueue(webda, name, params)​

new SQSQueue<T, K>(webda, name, params?): SQSQueue<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​

SQSQueue<T, K>

Inherited from​

Queue<T, K>.constructor

Source​

core/lib/services/service.d.ts:167

Properties​

_createException​

_createException: string

Inherited from​

Queue._createException

Source​

core/lib/services/service.d.ts:148


_initException​

_initException: any

Inherited from​

Queue._initException

Source​

core/lib/services/service.d.ts:150


_initTime​

_initTime: number

Inherited from​

Queue._initTime

Source​

core/lib/services/service.d.ts:149


_name​

protected _name: string

Service name

Inherited from​

Queue._name

Source​

core/lib/services/service.d.ts:141


_timeout​

protected _timeout: Timeout

Current timeout handler

Inherited from​

Queue._timeout

Source​

core/lib/queues/queueservice.d.ts:55


_webda​

protected _webda: Core<CoreEvents>

Webda Core object

Inherited from​

Queue._webda

Source​

core/lib/services/service.d.ts:137


delayer​

protected delayer: WaitDelayer

Delayer

Inherited from​

Queue.delayer

Source​

core/lib/queues/queueservice.d.ts:67


eventPrototype​

eventPrototype: () => T

Returns​

T

Inherited from​

Queue.eventPrototype

Source​

core/lib/queues/queueservice.d.ts:68


failedIterations​

protected failedIterations: number

Current pause instance

Inherited from​

Queue.failedIterations

Source​

core/lib/queues/queueservice.d.ts:63


logger​

protected logger: Logger

Logger with class context

Inherited from​

Queue.logger

Source​

core/lib/services/service.d.ts:154


metrics​

protected metrics: 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​

Queue.metrics

Source​

core/lib/queues/pubsubservice.d.ts:8


parameters​

protected parameters: K

Hold the parameters for your service

It will be bring from the webda.config.json

Inherited from​

Queue.parameters

Source​

core/lib/services/service.d.ts:147


sqs​

sqs: SQS

AWS SQS Client

Source​

aws/src/services/sqsqueue.ts:56


captureRejectionSymbol​

static readonly captureRejectionSymbol: typeof captureRejectionSymbol

Inherited from​

Queue.captureRejectionSymbol

Source​

aws/node_modules/@types/node/events.d.ts:38


captureRejections​

static captureRejections: boolean

Sets or gets the default captureRejection value for all emitters.

Inherited from​

Queue.captureRejections

Source​

aws/node_modules/@types/node/events.d.ts:44


defaultMaxListeners​

static defaultMaxListeners: number

Inherited from​

Queue.defaultMaxListeners

Source​

aws/node_modules/@types/node/events.d.ts:45


errorMonitor​

static readonly errorMonitor: typeof errorMonitor

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​

Queue.errorMonitor

Source​

aws/node_modules/@types/node/events.d.ts:37

Methods​

__clean()​

__clean(): Promise<void>

Returns​

Promise<void>

Overrides​

Queue.__clean

Inherit Doc​

Source​

aws/src/services/sqsqueue.ts:145


_getQueueInfosFromUrl()​

_getQueueInfosFromUrl(): Object

Returns​

Object

accountId​

accountId: string

name​

name: string

region​

region: string

Source​

aws/src/services/sqsqueue.ts:168


addListener()​

addListener(event, listener): this

Parameters​

• event: string | symbol

• listener: (...args) => void

Returns​

this

Inherited from​

Queue.addListener

Source​

aws/node_modules/@types/node/events.d.ts:57


addRoute()​

protected addRoute(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

Returns​

void

Inherited from​

Queue.addRoute

Source​

core/lib/services/service.d.ts:241


authorizeClientEvent()​

authorizeClientEvent(_event, _context): boolean

Authorize a public event subscription

Parameters​

• _event: string

• _context: OperationContext<any, any>

Returns​

boolean

Inherited from​

Queue.authorizeClientEvent

Source​

core/lib/services/service.d.ts:219


computeParameters()​

computeParameters(): void

Used to compute or derivate input parameter to attribute

Returns​

void

Inherited from​

Queue.computeParameters

Source​

core/lib/services/service.d.ts:175


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>

Inherited from​

Queue.consume

Source​

core/lib/queues/queueservice.d.ts:110


consumerReceiveMessage()​

protected consumerReceiveMessage(): Promise<Object>

Receive and process message from the queue

Returns​

Promise<Object>

items​

items: number

speed​

speed: number

Inherited from​

Queue.consumerReceiveMessage

Source​

core/lib/queues/queueservice.d.ts:89


deleteMessage()​

deleteMessage(receipt): Promise<void>

Parameters​

• receipt: string

Returns​

Promise<void>

Overrides​

Queue.deleteMessage

Inherit Doc​

Source​

aws/src/services/sqsqueue.ts:135


emit()​

emit<Key>(event, data): boolean

Override to allow capturing long listeners

Type parameters​

• Key extends string | number

Parameters​

• event: symbol | Key

• data: Events[Key]

Returns​

boolean

Inherited from​

Queue.emit

Source​

core/lib/services/service.d.ts:288


emitSync()​

emitSync<Key>(event, data): Promise<any[]>

Emit the event with data and wait for Promise to finish if listener returned a Promise

Type parameters​

• Key extends string | number

Parameters​

• event: Key

• data: Events[Key]

Returns​

Promise<any[]>

Inherited from​

Queue.emitSync

Source​

core/lib/services/service.d.ts:283


eventNames()​

eventNames(): (string | symbol)[]

Returns​

(string | symbol)[]

Inherited from​

Queue.eventNames

Source​

aws/node_modules/@types/node/events.d.ts:72


getARNPolicy()​

getARNPolicy(): Object

Returns​

Object

Action​

Action: string[]

Effect​

Effect: string = "Allow"

Resource​

Resource: string[]

Sid​

Sid: string

Source​

aws/src/services/sqsqueue.ts:185


getClientEvents()​

getClientEvents(): string[]

Return the events that an external system can subscribe to

Returns​

string[]

Inherited from​

Queue.getClientEvents

Source​

core/lib/services/service.d.ts:213


getCloudFormation()​

getCloudFormation(deployer): Object

Parameters​

• deployer: default

Returns​

Object

Implementation of​

CloudFormationContributor.getCloudFormation

Source​

aws/src/services/sqsqueue.ts:202


getMaxConsumers()​

getMaxConsumers(): number

We will retrieve more than one message on receiveMessage if maxConsumers is higher therefore we need to divide by 10 (the max number of group messaged) to get the number of consumers

Returns​

number

Overrides​

Queue.getMaxConsumers

Source​

aws/src/services/sqsqueue.ts:128


getMaxListeners()​

getMaxListeners(): number

Returns​

number

Inherited from​

Queue.getMaxListeners

Source​

aws/node_modules/@types/node/events.d.ts:64


getMetric()​

getMetric<T>(type, configuration): T

Add service name label

Type parameters​

• T = Counter<string> | Histogram<string> | Gauge<string>

Parameters​

• type: Constructor<T, [MetricConfiguration<T>]>

• configuration: MetricConfiguration<T>

Returns​

T

Inherited from​

Queue.getMetric

Source​

core/lib/services/service.d.ts:207


getName()​

getName(): string

Get service name

Returns​

string

Inherited from​

Queue.getName

Source​

core/lib/services/service.d.ts:312


getOpenApiReplacements()​

getOpenApiReplacements(): any

Return variables for replacement in openapi

Returns​

any

Inherited from​

Queue.getOpenApiReplacements

Source​

core/lib/services/service.d.ts:246


getOperationId()​

getOperationId(id): string

If undefined is returned it cancel the operation registration

Parameters​

• id: string

Returns​

string

Inherited from​

Queue.getOperationId

Source​

core/lib/services/service.d.ts:233


getParameters()​

getParameters(): K

Get the service parameters

Returns​

K

Inherited from​

Queue.getParameters

Source​

core/lib/services/service.d.ts:179


getService()​

getService<K>(service): K

Return a webda service

Type parameters​

• K extends Service<ServiceParameters, Events>

Parameters​

• service: string

name to retrieve

Returns​

K

Inherited from​

Queue.getService

Source​

core/lib/services/service.d.ts:308


getUrl()​

getUrl(url, _methods): string

Return the full path url based on parameters

Parameters​

• url: string

relative url to service

• _methods: HttpMethodType[]

in case we need filtering (like Store)

Returns​

string

absolute url or undefined if need to skip the Route

Inherited from​

Queue.getUrl

Source​

core/lib/services/service.d.ts:227


getWebda()​

getWebda(): Core<CoreEvents>

Return WebdaCore

Returns​

Core<CoreEvents>

Inherited from​

Queue.getWebda

Source​

core/lib/services/service.d.ts:183


init()​

init(): Promise<SQSQueue<T, K>>

Returns​

Promise<SQSQueue<T, K>>

Overrides​

Queue.init

Inherit Doc​

Source​

aws/src/services/sqsqueue.ts:67


initMetrics()​

initMetrics(): void

Returns​

void

Inherited from​

Queue.initMetrics

Source​

core/lib/queues/pubsubservice.d.ts:18


initOperations()​

initOperations(): void

Init the operations

Returns​

void

Inherited from​

Queue.initOperations

Source​

core/lib/services/service.d.ts:254


initRoutes()​

initRoutes(): void

Init the routes

Returns​

void

Inherited from​

Queue.initRoutes

Source​

core/lib/services/service.d.ts:250


listenerCount()​

listenerCount(event): number

Parameters​

• event: string | symbol

Returns​

number

Inherited from​

Queue.listenerCount

Source​

aws/node_modules/@types/node/events.d.ts:68


listeners()​

listeners(event): Function[]

Parameters​

• event: string | symbol

Returns​

Function[]

Inherited from​

Queue.listeners

Source​

aws/node_modules/@types/node/events.d.ts:65


loadParameters()​

loadParameters(params): SQSQueueParameters

Parameters​

• params: any

Returns​

SQSQueueParameters

Overrides​

Queue.loadParameters

Inherit Doc​

Source​

aws/src/services/sqsqueue.ts:60


log()​

log(level, ...args): void

Parameters​

• level: WorkerLogLevel

to log

• ...args: any[]

Returns​

void

Inherited from​

Queue.log

Source​

core/lib/services/service.d.ts:328


off()​

off(event, listener): this

Parameters​

• event: string | symbol

• listener: (...args) => void

Returns​

this

Inherited from​

Queue.off

Source​

aws/node_modules/@types/node/events.d.ts:61


on()​

on<Key>(event, listener): this

Type the listener part

Type parameters​

• Key extends string | number

Parameters​

• event: symbol | Key

• listener: (evt) => void

Returns​

this

Inherited from​

Queue.on

Source​

core/lib/services/service.d.ts:296


onAsync()​

onAsync<Key>(event, listener, queue?): void

Listen to an event as on(...) would do except that it will be asynchronous

Type parameters​

• Key extends string | number

Parameters​

• event: Key

• listener: (evt) => void

• queue?: string

Name of queue to use, can be undefined, queue name are used to define differents priorities

Returns​

void

Inherited from​

Queue.onAsync

Source​

core/lib/services/service.d.ts:303


once()​

once(event, listener): this

Parameters​

• event: string | symbol

• listener: (...args) => void

Returns​

this

Inherited from​

Queue.once

Source​

aws/node_modules/@types/node/events.d.ts:59


prependListener()​

prependListener(event, listener): this

Parameters​

• event: string | symbol

• listener: (...args) => void

Returns​

this

Inherited from​

Queue.prependListener

Source​

aws/node_modules/@types/node/events.d.ts:70


prependOnceListener()​

prependOnceListener(event, listener): this

Parameters​

• event: string | symbol

• listener: (...args) => void

Returns​

this

Inherited from​

Queue.prependOnceListener

Source​

aws/node_modules/@types/node/events.d.ts:71


rawListeners()​

rawListeners(event): Function[]

Parameters​

• event: string | symbol

Returns​

Function[]

Inherited from​

Queue.rawListeners

Source​

aws/node_modules/@types/node/events.d.ts:66


receiveMessage()​

receiveMessage<L>(proto?): Promise<MessageReceipt<L>[]>

Type parameters​

• L

Parameters​

• proto?: () => L

Returns​

Promise<MessageReceipt<L>[]>

Overrides​

Queue.receiveMessage

Inherit Doc​

Source​

aws/src/services/sqsqueue.ts:107


reinit()​

reinit(config): Promise<SQSQueue<T, K>>

Parameters​

• config: DeepPartial<K>

new parameters for the service

Returns​

Promise<SQSQueue<T, K>>

Inherited from​

Queue.reinit

Source​

core/lib/services/service.d.ts:279


removeAllListeners()​

removeAllListeners(event?): this

Parameters​

• event?: string | symbol

Returns​

this

Inherited from​

Queue.removeAllListeners

Source​

aws/node_modules/@types/node/events.d.ts:62


removeListener()​

removeListener(event, listener): this

Parameters​

• event: string | symbol

• listener: (...args) => void

Returns​

this

Inherited from​

Queue.removeListener

Source​

aws/node_modules/@types/node/events.d.ts:60


resolve()​

resolve(): this

Create the delayer

Returns​

this

Inherited from​

Queue.resolve

Source​

core/lib/queues/queueservice.d.ts:83


sendMessage()​

sendMessage(params): Promise<void>

Parameters​

• params: T

Returns​

Promise<void>

Overrides​

Queue.sendMessage

Inherit Doc​

Source​

aws/src/services/sqsqueue.ts:90


setMaxListeners()​

setMaxListeners(n): this

Parameters​

• n: number

Returns​

this

Inherited from​

Queue.setMaxListeners

Source​

aws/node_modules/@types/node/events.d.ts:63


size()​

size(): Promise<number>

Returns​

Promise<number>

Overrides​

Queue.size

Inherit Doc​

Source​

aws/src/services/sqsqueue.ts:76


stop()​

stop(): Promise<void>

Shutdown the current service if action need to be taken

Returns​

Promise<void>

Inherited from​

Queue.stop

Source​

core/lib/services/service.d.ts:187


toJSON()​

toJSON(): string

Prevent service to be serialized

Returns​

string

Inherited from​

Queue.toJSON

Source​

core/lib/services/service.d.ts:267


toPublicJSON()​

toPublicJSON(object): string

Convert an object to JSON using the Webda json filter

Service

Parameters​

• object: unknown

The object to export

Returns​

string

The export of the strip object ( removed all attribute with _ )

Inherited from​

Queue.toPublicJSON

Source​

core/lib/services/service.d.ts:262


toString()​

toString(): string

Return service representation

Returns​

string

Inherited from​

Queue.toString

Source​

core/lib/services/service.d.ts:191


unserialize()​

unserialize<L>(data, proto?): L

Unserialize into class

Type parameters​

• L

Parameters​

• data: string

• proto?: () => L

Returns​

L

Inherited from​

Queue.unserialize

Source​

core/lib/queues/pubsubservice.d.ts:30


listenerCount()​

static listenerCount(emitter, event): number

Parameters​

• emitter: EventEmitter

• event: string | symbol

Returns​

number

Inherited from​

Queue.listenerCount

Deprecated​

since v4.0.0

Source​

aws/node_modules/@types/node/events.d.ts:26


on()​

static on(emitter, event): AsyncIterableIterator<any, any, any>

Parameters​

• emitter: EventEmitter

• event: string

Returns​

AsyncIterableIterator<any, any, any>

Inherited from​

Queue.on

Source​

aws/node_modules/@types/node/events.d.ts:23


once()​

once(emitter, event)​

static once(emitter, event): Promise<any[]>

Parameters​

• emitter: NodeEventTarget

• event: string | symbol

Returns​

Promise<any[]>

Inherited from​

Queue.once

Source​

aws/node_modules/@types/node/events.d.ts:21

once(emitter, event)​

static once(emitter, event): Promise<any[]>

Parameters​

• emitter: DOMEventTarget

• event: string

Returns​

Promise<any[]>

Inherited from​

Queue.once

Source​

aws/node_modules/@types/node/events.d.ts:22