Os programas Java™ podem acessar os seguintes serviços do CICS por meio da interface de programação JCICS: gerenciamento de dados, comunicações, unidade de trabalho, programa e serviços de diagnóstico.
Os gerenciadores de serviços do CICS geralmente possuem a palavra controle em seu título; por exemplo, "controle de terminal" e "controle de programa". Esses termos são usados extensivamente nas informações do CICS.
Serviços de gerenciamento de dados
O CICS fornece os seguintes serviços de gerenciamento de dados:
- Compartilhamento em nível de registro, com integridade, para acessar conjuntos de dados Virtual Storage
Access Method (VSAM). Atividade de logs do CICS para suportar restauração de dados (para transação ou falha do sistema) e recuperação avançada (para falha de mídia). O controle de arquivos do CICS gerencia os dados VSAM.
O CICS também implementa duas estruturas de arquivo proprietárias, e fornece comandos
para manipulá-las:
- Armazenamento temporário
- Armazenamento temporário (TS) é um meio de tornar os dados prontamente disponíveis
para diversas transações. Os dados são mantidos em filas, que são criadas conforme necessário por programas. As filas podem ser acessadas sequencialmente ou por
número de item.
Filas de armazenamento temporário podem residir na memória
principal ou podem ser gravadas em um dispositivo de armazenamento.
Uma fila de armazenamento temporário pode ser concebida como uma área de rascunho nomeada.
- Dados transientes
- Dado transientes (TD) também estão disponíveis para diversas transações,
e são mantidos em filas. Porém, diferentemente das filas TS, as filas TD devem ser predefinidas e podem ser lidas somente sequencialmente. Cada item é removido
da fila quando é lido.
Filas de dados transientes são sempre gravadas
em um conjunto de dados. É possível definir uma fila de dados transientes de modo que
a gravação de um número específico de itens nela age como um acionador para iniciar
uma transação específica. Por exemplo, a transação acionada pode processar a fila.
- Acesso a dados em outros bancos de dados (incluindo DB2),
através de interfaces com produtos de banco de dados.
Serviços de comunicações
O CICS fornece comandos que dão acesso a uma ampla gama de terminais (monitores, impressoras e estações de trabalho) usando protocolos SNA e TCP/IP. O controle de terminal do CICS fornece gerenciamento de redes SNA e TCP/IP.
É possível
criar programas que usam comandos Advanced Program-to-Program Communication
(APPC) para iniciar e comunicar-se com outros programas em sistemas remotos,
usando protocolos SNA. O CICS APPC implementa o modelo de aplicativo distribuído
ponto a ponto.
Os seguintes serviços de comunicações proprietários do CICS
são fornecidos:
- Remessa de função
- Solicitações de programa para acessar recursos (arquivos, filas e programas)
que são definidos como existentes em regiões CICS remotas são automaticamente
roteadas pelo CICS para a região proprietária.
- Link de programa distribuído (DPL)
- Solicitações de link de programa para um programa definido como existente em uma
região CICS remota são roteados automaticamente para a região proprietária. O CICS fornece
comandos para manter a integridade do aplicativo distribuído.
- Processamento assíncrono
- O CICS fornece comandos para permitir a um programa iniciar outra transação
na mesma região CICS ou em uma região CICS remota e, opcionalmente, passar dados
a ele. A nova transação é planejada independentemente, em uma nova tarefa.
Essa função é semelhante à operação bifurcar fornecida por outros
produtos de software.
- Roteamento de transações
- Solicitações para executar transações que são definidas como existentes em regiões
CICS remotas são roteadas automaticamente para a região proprietária. Respostas
ao usuário são roteadas de volta para a região que recebeu a solicitação.
Serviços de unidade de trabalho
Quando o CICS cria uma nova tarefa para executar uma transação, uma nova unidade de trabalho
(UOW) é iniciada automaticamente.
(Assim, o CICS não fornece um
comando BEGIN, pois não é necessário.)
As transações do CICS são sempre executadas na transação.
O CICS fornece um comando SYNCPOINT
para confirmar ou retroceder o trabalho recuperável feito.
Quando o ponto de sincronização
conclui, o CICS inicia automaticamente outra unidade de trabalho. Se você
finalizar seu programa sem emitir um comando SYNCPOINT, o CICS tomará um
ponto de sincronização implícito e tentará confirmar a transação.
O escopo
da confirmação inclui todos os recursos CICS que foram definidos como
recuperáveis e quaisquer outros gerenciadores de recursos que tenham registrado um
interesse por meio de interfaces fornecidas pelo CICS.
Serviços de programa
O CICS fornece comandos que permitem a um programa fazer link ou transferir o
controle para outro programa, e retornar.
Serviços de diagnóstico
O CICS fornece comando que você pode usar para rastrear programas e produzir dumps.