PHP Classes

File: src/Aplicacao/Compartilhado/Mensageria/Enumerados/Fila.php

Recommend this page to a friend!
  Classes of Matheusz Maydana   Bames   src/Aplicacao/Compartilhado/Mensageria/Enumerados/Fila.php   Download  
File: src/Aplicacao/Compartilhado/Mensageria/Enumerados/Fila.php
Role: Auxiliary script
Content type: text/plain
Description: Configuration script
Class: Bames
Application collection to study design patterns
Author: By
Last change:
Date: 26 days ago
Size: 4,019 bytes
 

Contents

Class file image Download
<?php

declare(strict_types=1);

namespace
App\Aplicacao\Compartilhado\Mensageria\Enumerados;

enum Fila: string
{
    case
EMISSAO_EMAIL_QUEUE = 'emissao_email_queue';
    case
EMISSAO_EMAIL_QUEUE_DLQ_QUEUE = 'emissao_email_queue_dlq_queue';

    case
EMPRESA_RECEM_CADASTRADA_NO_SISTEMA_QUEUE = 'empresa_recem_cadastrada_no_sistema_queue';
    case
EMPRESA_RECEM_CADASTRADA_NO_SISTEMA_QUEUE_DLQ_QUEU = 'empresa_recem_cadastrada_no_sistema_queue_dlq_queue';

    case
NOTIFICAR_COMPROMISSOS_QUEUE = 'notificar_compromissos_queue';
    case
NOTIFICAR_COMPROMISSOS_QUEUE_DLQ_QUEUE = 'notificar_compromissos_queue_dlq_queue';

    case
NOVO_EVENTO_AGENDA_QUEUE = 'novo_evento_agenda_queue';
    case
NOVO_EVENTO_AGENDA_QUEUE_DLQ_QUEUE = 'novo_evento_agenda_queue_dlq_queue';

    static public function
Ligacoes(): array
    {
        return [

           
// EVENTO AGENDA
           
[
               
'queue' => self::NOVO_EVENTO_AGENDA_QUEUE,
               
'exchange' => TrocaMensagens::NOVO_EVENTO_AGENDA_EXCHANGE,
            ],
            [
               
'queue' => self::NOVO_EVENTO_AGENDA_QUEUE_DLQ_QUEUE,
               
'exchange' => TrocaMensagens::NOVO_EVENTO_AGENDA_DLX_EXCHANGE,
            ],

           
// EMAIL
           
[
               
'queue' => self::EMISSAO_EMAIL_QUEUE,
               
'exchange' => TrocaMensagens::EMISSAO_EMAIL_EXCHANGE,
            ],
            [
               
'queue' => self::EMISSAO_EMAIL_QUEUE_DLQ_QUEUE,
               
'exchange' => TrocaMensagens::EMISSAO_EMAIL_DLX_EXCHANGE,
            ],

           
// EMPRESA RECEM CADASTRADA
           
[
               
'queue' => self::EMPRESA_RECEM_CADASTRADA_NO_SISTEMA_QUEUE,
               
'exchange' => TrocaMensagens::EMPRESA_RECEM_CADASTRADA_NO_SISTEMA_EXCHAGE,
            ],
            [
               
'queue' => self::EMPRESA_RECEM_CADASTRADA_NO_SISTEMA_QUEUE_DLQ_QUEU,
               
'exchange' => TrocaMensagens::EMPRESA_RECEM_CADASTRADA_NO_SISTEMA_DLX_EXCHAGE,
            ],

           
// NOTIFICAR COMPROMISSOS
           
[
               
'queue' => self::NOTIFICAR_COMPROMISSOS_QUEUE,
               
'exchange' => TrocaMensagens::NOTIFICAR_COMPROMISSOS_EXCHANGE,
            ],
            [
               
'queue' => self::NOTIFICAR_COMPROMISSOS_QUEUE_DLQ_QUEUE,
               
'exchange' => TrocaMensagens::NOTIFICAR_COMPROMISSOS_DLX_EXCHANGE,
            ]
        ];
    }

    static public function
Filas(): array
    {
        return [

           
// EVENTO AGENDA
           
[
               
'queue' => self::NOVO_EVENTO_AGENDA_QUEUE,
               
'dlx' => TrocaMensagens::NOVO_EVENTO_AGENDA_DLX_EXCHANGE,
            ],
            [
               
'queue' => self::NOVO_EVENTO_AGENDA_QUEUE_DLQ_QUEUE,
               
'dlx' => TrocaMensagens::NOVO_EVENTO_AGENDA_DLX_EXCHANGE,
            ],

           
// EMAIL
           
[
               
'queue' => Fila::EMISSAO_EMAIL_QUEUE,
               
'dlx' => TrocaMensagens::EMISSAO_EMAIL_DLX_EXCHANGE,
            ],
            [
               
'queue' => Fila::EMISSAO_EMAIL_QUEUE_DLQ_QUEUE,
               
'dlx' => TrocaMensagens::EMISSAO_EMAIL_DLX_EXCHANGE,
            ],

           
// EMPRESA RECEM CADASTRADA
           
[
               
'queue' => Fila::EMPRESA_RECEM_CADASTRADA_NO_SISTEMA_QUEUE,
               
'dlx' => TrocaMensagens::EMPRESA_RECEM_CADASTRADA_NO_SISTEMA_DLX_EXCHAGE
           
],
            [
               
'queue' => Fila::EMPRESA_RECEM_CADASTRADA_NO_SISTEMA_QUEUE_DLQ_QUEU,
               
'dlx' => TrocaMensagens::EMPRESA_RECEM_CADASTRADA_NO_SISTEMA_DLX_EXCHAGE
           
],

           
// NOTIFICAR COMPROMISSOS
           
[
               
'queue' => Fila::NOTIFICAR_COMPROMISSOS_QUEUE,
               
'dlx' => TrocaMensagens::NOTIFICAR_COMPROMISSOS_DLX_EXCHANGE
           
],
            [
               
'queue' => Fila::NOTIFICAR_COMPROMISSOS_QUEUE_DLQ_QUEUE,
               
'dlx' => TrocaMensagens::NOTIFICAR_COMPROMISSOS_DLX_EXCHANGE
           
]
        ];
    }
}