Configura o uso da Lista usando como infra estrutura o Redis e permite a configuração de tratamento das mensagens.
Se a lista não existir ela será criada se o setup retornar OK.
Sintaxe
nRet := oTQLS:Setup(cHost, nPort [, cAuth] [, nMsgRetPeriod])
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Default | Referência | Observações |
---|
cHost | caractere | Nome ou IP do servidor onde está configurado o Redis | X |
|
|
|
nPort | numérico | Número da porta no servidor onde está configurado o Redis | X |
|
| Em instalações padrão é 6379 |
cAuth | caractere | Senha de autenticação do Redis, quando configurado no serviço |
| Nil |
| Este campo foi inserido para versões superioriores "7.00.131227A-20180417 NG". |
nMsgRetPeriod | numérico | Tempo de retenção de uma mensagem na Lista em segundos (Tempo de armazenamento de Mensagem não tratada) |
| 1209600 (14 dias) |
| Se uma mensagem não retirada da fila ficar mais que este tempo, ela será descartada. Mínimo permitido 60 segundos, máximo permitido 14 dias (1209600 segundos). |
Retorno
Nome | Tipo | Descrição | Observações |
---|
nRet | numérico | Contem o a indicação do erro ou 0 (zero) se OK |
|
Observações
Se nMsgRetPeriod não for informado (Nil) ou se tiver valor de '0' (zero), nMsgRetPeriod usará o valor default, todavia se nMsgRetPeriod for passado com '-1' irá recuperar o valor de nMsgRetPeriod de uma Fila previamente criada, não alterando assim o valor já registrado nesta na Fila.
Exemplos
Exemplo 1
#include 'protheus.ch'
// Setup Redis
Static cRedisHost := "tec-clima"
Static nRedisPort := 6379
Static cRedisAuth := "abc"
User Function LstStp()
Local nRet := 0
// Nome da Lista
Local cListName := "Lista_TQLS"
// Tempo de armazenamento da mensagem
Local nMsgRetPeriod := (7 * 24 * 60 * 60) // 7 dias (em segundos) // 0 usa o default // -1 recupara o valor
// Objeto de Lista
Local oTQLS := Nil
// Cria um novo objeto de Lista
oTQLS := TListSvc():New(cListName)
If(oTQLS == Nil)
ConOut("### ERRO ### " + "Erro na criacao da Lista - " + cListName)
Return .F.
Else
ConOut("Criacao da Lista OK - " + oTQLS:cName)
EndIf
// Configurando a Lista
nRet := oTQLS:Setup(cRedisHost, nRedisPort, cRedisAuth, nMsgRetPeriod)
If nRet != 0
ConOut("### ERRO ### " + "Erro ao fazer o Setup" + " Erro: " + AllTrim(Str(nRet)))
Return .F.
Else
ConOut("Setup de Lista OK - " + oTQLS:cName + " nMsgRetPer: " + AllTrim(Str(oTQLS:nMsgRetPer)))
EndIf
Return .T.
Exemplo 2
#include 'protheus.ch'
// Setup Redis
Static cRedisHost := "tec-clima"
Static nRedisPort := 6379
User Function LstStpB()
Local nRet := 0
// Nome da Lista
Local cListName := "Lista_TQLS"
// Objeto de Lista
Local oTQLS := Nil
// Cria um novo objeto de Lista
oTQLS := TListSvc():New(cListName)
If(oTQLS == Nil)
ConOut("### ERRO ### " + "Erro na criacao da Lista - " + cListName)
Return .F.
Else
ConOut("Criacao da Lista OK - " + oTQLS:cName)
EndIf
// Configurando a Lista
nRet := oTQLS:Setup(cRedisHost, nRedisPort)
If nRet != 0
ConOut("### ERRO ### " + "Erro ao fazer o Setup" + " Erro: " + AllTrim(Str(nRet)))
Return .F.
Else
ConOut("Setup de Lista OK - " + oTQLS:cName + " nMsgRetPer: " + AllTrim(Str(oTQLS:nMsgRetPer)))
EndIf
Return .T.