Adaptadores Worklight e o Padrão Worklight: Manipulador de Recurso

Os adaptadores Worklight são o código do lado do servidor de aplicativos implementados e atendidos pelo Worklight Mobile Application Platform. Os adaptadores conectam o Worklight Server a aplicativos corporativos, como aqueles em execução no WebSphere Message Broker. O adaptador expõe um conjunto de serviços, chamados de procedimentos. O adaptador e o aplicativo remoto são implementados no Worklight Server.

Um diagrama mostrando o comportamento do padrão.

A sequência a seguir apresenta um fluxo típico de dados para uma solicitação HTTP/JSON emitida por um aplicativo remoto:

Dispositivo Móvel para Worklight

  1. O aplicativo remoto chama procedimentos emitindo solicitações Ajax (WL.Client.invokeProcedure).
  2. Os parâmetros para o procedimento são passados como dados formatados pelo JSON. Os parâmetros podem incluir uma representação de JSON do recurso que está sendo acessado e, se a segurança estiver ativada, uma representação em sequência base64 do ID do usuário e senha.

Worklight

  1. O procedimento aumenta o objeto JSON com informações adicionais, como o nome da ação a ser executada nesse objeto.

Worklight para Message Broker

  1. O procedimento chama um comando HTTP e inclui o ID do usuário e a senha no cabeçalho de autenticação básica HTTP.

Message Broker

  1. O fluxo de mensagens do manipulador de solicitação no Message Broker manipula a solicitação de HTTP.
  2. O fluxo de mensagens do manipulador de solicitação autentica o ID do usuário e a senha com relação a um servidor LDAP.
  3. O fluxo do manipulador de solicitação remove as informações adicionais a partir do objeto JSON e usas essas informações para determinar qual ação está sendo executada em qual instância do recurso.
  4. O manipulador de solicitação autoriza a solicitação com relação a um servidor LDAP. Isso valida se o ID do usuário está no grupo LDAP correto para executar essa ação naquele recurso.
  5. Se a solicitação for para ler um recurso, o fluxo do manipulador de solicitação usará o identificador de instância de recurso para verificar se a instância do recurso está no cache.
  6. O fluxo do manipulador de solicitação preenche o ambiente local ($LocalEnvironmentVariables/Worklight/ID) com o identificador exclusivo da instância de recurso que está sendo acessada.
  7. Uma mensagem de domínio JSON é propagada para o subfluxo do manipulador de procedimento correto. A estrutura da mensagem corresponde ao objeto JavaScript passado para a API WL.Client.invokeProcedure pelo aplicativo remoto.
  8. A lógica do subfluxo é executada. Isso geralmente envolverá a transformação do objeto JSON em uma solicitação para um serviço ou banco de dados de backend.
  9. O subfluxo propaga a mensagem JSON de resposta para seu terminal de saída.
  10. Se a ação for uma leitura e o armazenamento em cache estiver ativado, o fluxo de mensagens do manipulador de solicitação gravará o objeto JSON no cache.
  11. Se a ação for atualizar ou excluir, o fluxo de mensagens do manipulador de solicitação removerá essa instância do recurso do cache.

Message Broker para Worklight

  1. A resposta JSON é enviada de volta para o adaptador Worklight como uma resposta HTTP do Message Broker.

Worklight para Dispositivo Móvel

  1. A resposta JSON é enviada de volta ao aplicativo remoto de origem como uma resposta HTTP do Worklight Server.

Voltar para a Especificação do Padrão Worklight: Manipulador de Recurso