O CARMA permite comparar os recursos (associados) na área
de trabalho do Rational Developer (por exemplo, projetos locais ou remotos) com
os recursos em um RAM do CARMA. Isso é útil para determinar quais alterações foram
feitas aos arquivos da área de trabalho antes de verificar as alterações no CARMA.
Por Que e Quando Desempenhar Esta Tarefa
O CARMA armazena os valores de critérios atuais ao fazer download de um recurso
para a área de trabalho. Com base no valor dos critérios e nas alterações da área de trabalho, o CARMA pode
determinar quais alterações foram feitas na versão no RAM e indicar
quais alterações de direção devem ser movidas. Por exemplo, o CARMA pode determinar
se um arquivo de área de trabalho foi atualizado localmente, no RAM ou em ambos. Com base
nas informações de alteração, o CARMA pode indicar quais partes do arquivo foram alteradas
e indicar para onde as alterações devem ser transferidas por upload para o RAM, copiadas do
RAM, ou se uma mesclagem deve ser feita em razão de as alterações terem ocorrido na área de trabalho
e no RAM.
Para realizar a comparação de uma maneira flexível, o CARMA
forneceu um arquivo de configuração dos Critérios de Comparação – syncConfig.xml.
Esse arquivo syncConfig é colocado no diretório* de configuração do RSE e automaticamente
escolhido pelo CARMA quando o RSE é iniciado**.
O arquivo de configuração de comparação
permite que o desenvolvedor do RAM especifique uma série de critérios de comparação em
uma base de RAM por RAM. Um exemplo de um arquivo de configuração de comparação é:
<?xml version="1.0" encoding="UTF-8"?>
<CARMACompare xmlns="http://www.ibm.com/CARMA/SyncConfig">
<RAMCompare ramId="00">
<memberinfo key="Last Modified Date" type="date" format="MM/DD/YY"/>
<memberinfo key="Last Modified Time" type="date" format="HH:MM"/>
<memberinfo key="Last Modified Seconds" type="int" />
</RAMCompare>
<RAMCompare ramId="01">
<content />
</RAMCompare>
</CARMACompare>
O documento XML deve começar com um elemento
CARMACompare.
O elemento
CARMACompare pode conter um ou mais elementos
RAMCompare.
Cada elemento
RAMCompare especifica os critérios de comparação
de um único RAM. O RAM ao qual os critérios se aplicam é indicado pelo atributo
ramId.
O valor
ramId deve corresponder ao ID do RAM na configuração VSAM do CARMA
e ser um número de dois dígitos. 0s são necessários para serem incluídos no
início do valor do ID se esse ID for menor do que dois dígitos. O exemplo
acima define os critérios de comparação de dois RAMs, 01 e 02. Cada elemento
RAMCompare
contém os critérios do RAM. Os critérios atualmente disponíveis para
verificação incluem:
- Informações do Membro
- Conteúdo do membro
Informações do Membro
A configuração pode definir um ou mais elementos
memberinfo
para cada
RAMCompare. Os elementos de informações do membro são concatenados
para formar uma comparação. O elemento de informações do membro contém os atributos
key,
type e, opcionalmente,
format. Atualmente, os atributos
type e
format são ignorados, mas uma explicação de uso é incluída. As chaves são atualmente
comparadas diretamente com a equivalência da cadeia.
- Atributo-chave
- O atributo key se refere a um item de informações do membro localizado
nas propriedades de um recurso. O atributo-chave deve corresponder à chave retornada
pelo RAM para o recurso.
- atributo type
- O atributo type especifica como o valor-chave deve
ser tratado. O atributo type pode ser definido como um dos
seguintes:
O tipo define como as informações do membro devem ser comparadas. Por exemplo,
utilizando os critérios a seguir
<memberinfo key="Last Modified Seconds" type="int" />
Um
valor de informações do membro de 0001 deve ser igual a 1.
- atributo format
- O atributo format é necessário apenas para os elementos que
especificam um tipo de “data”. O atributo format permite que os
critérios definam como o valor de data deve ser analisado e comparado. Por
exemplo, utilizando os seguintes critérios:
<memberinfo key="Last Modified Time" type="date" format="HH:MM"/>
Um valor de informações do membro de 1h10 deve ser equivalente a 13h10.
Conteúdo do Membro
A configuração pode definir
um elemento do conteúdo para cada
RAMCompare. O elemento do conteúdo
indica que o CARMA deve verificar o conteúdo de bytes do recurso
quanto às alterações.
Nota: Isso requer que o arquivo inteiro seja transferido por download para a área de
trabalho para realizar a comparação.
O conteúdo do arquivo é transferido por download para a
área de trabalho e um hash de arquivo (MD5) é executado no conteúdo do arquivo. Se o
hash do conteúdo do arquivo for diferente do hash do arquivo de área de trabalho, uma diferença
será indicada.
Critérios de Comparação Padrão
Se um elemento RAMCompare
não for definido para um RAM com o qual CARMA está trabalhando, um conjunto de critérios de comparação
padrão será utilizado. O primeiro critério de comparação padrão faz uma busca para ver se uma chave de informações do
membro do carma.version está definida para o recurso que está sendo comparado. Se a chave do carma.version estiver disponível, o valor único de chave será utilizado como critério de comparação. Se uma chave do carma.version
não estiver disponível, a comparação será realizada com base no conteúdo do membro.
Nota: *
Consulte o Rational Developer for System z Host Configuration Guide (SC23-7658-00) para obter informações adicionais sobre o diretório de configuração do RSE.
Nota: **
O arquivo de configuração de comparação será escolhido apenas quando o RSE for iniciado. Para
que as alterações sejam detectadas, desconecte o RSE conecte-o novamente.