Class: RemoteScheduler

@nginstack/engine/lib/scheduler/RemoteScheduler~ RemoteScheduler


new RemoteScheduler(database)

Classe que permite o agendamento da execução de scripts em um Engine remoto.

A execução agendada de um script é útil para permitir a execução automática de processos rotineiros. Ela também é útil para implementar operações off-line, permitindo que um script que não possa ser executado em um momento de indisponibilidade do banco de dados ou conexão possa ser executado posteriormente quando a conexão for restabelecida.

Um script agendado não tem acesso à interface com o usuário, nem tem acesso às variáveis request e response. Ele deve ser desenvolvido com essas restrições e um eventual resultado a ser comunicado para o usuário deve ser realizado por meio de logs, arquivos, email ou alterações na base de dados.

Parameters:
Name Type Description
database Database

Base de dados que será utilizada para consultar ou agendar a execução de scripts.

See:

Members


maxConcurrentTaskCount :number

Quantidade de scripts que serão executados concorrentemente pelo scheduler em um Engine remoto. Por padrão, a base de dados permite a execução de quatro scripts.

Type:
  • number

maxSimultaneousTasks :number

Quantidade de scripts que serão executados concorrentemente pelo scheduler em um Engine remoto. Por padrão, a base de dados permite a execução de quatro scripts.

Type:
  • number
Deprecated:
  • Utilize `maxConcurrentTaskCount`.

Methods


delTasks(taskIds [, userName] [, password])

Remove as tarefas informadas por meio do seu identificador único, obtido na coluna "iUniqueId" do DataSet retornado pelo método getTasks.

Parameters:
Name Type Argument Description
taskIds string | Array.<string>

Identificador único das tarefas a serem removidas.

userName string <optional>

Nome do usuário que será utilizado para remover as tarefas. Caso não seja informado, será utilizado o usuário corrente da sessão.

password string <optional>

Senha do usuário que será utilizado para remover as tarefas.


getTasks( [options])

Obtém todos os scripts agendados no Engine remoto. O esquema de campos do dataSet retornado é similar ao da classe Scripts Agendados (-1898145133).

Parameters:
Name Type Argument Description
options Object <optional>

Opções de filtragem

Properties
Name Type Argument Description
scriptKey string <optional>

Chave do script cadastrada no script agendado.

scriptURI string <optional>

URI do script da Virtual File System ou da Union File System cadastrada no script agendado. Para mais detalhes, veja module:@nginstack/engine/lib/scheduler/Task~Task#scriptURI

Returns:

Scripts agendados no Engine remoto.

Type
DataSet

saveTasks(tasks [, userName] [, password])

Efetiva as alterações realizadas no dataSet tasks, obtido previamente por meio do método getTasks.

Parameters:
Name Type Argument Description
tasks DataSet

Tarefas a serem gravadas.

userName string <optional>

Nome do usuário que será utilizado para executar as tarefas. Caso não seja informado, será utilizado o usuário corrente da sessão.

password string <optional>

Senha do usuário que será utilizado para executar as tarefas.


startTasks(taskIds)

Inicia as tarefas informadas por meio do seu identificador único, obtido na coluna "iUniqueId" do DataSet retornado pelo método getTasks.

Parameters:
Name Type Description
taskIds string | Array.<string>

Identificador único das tarefas a serem iniciadas.


stopTasks(taskIds)

Interrompe as tarefas informadas por meio do seu identificador único, obtido na coluna "iUniqueId" do DataSet retornado pelo método getTasks.

A interrupção de um script em execução não é imediata, pois nem todas as operações bloqueantes permitem a interrupção, como o acesso a drivers externos e o uso de APIs do sistema operacional.

Parameters:
Name Type Description
taskIds string | Array.<string>

Identificador único das tarefas a serem interrompidas.