CARMA tiene la posibilidad de comparar recursos (asociados) en el espacio de trabajo de
Rational Developer (por ejemplo, proyectos locales o remotos) con recursos en un RAM de CARMA. Esto resulta útil a la hora de determinar qué cambios se han realizado en los archivos del espacio de trabajo antes de comprobar los cambios en CARMA.
Acerca de esta tarea
CARMA almacena los valores de los criterios actuales cuando descarga un recurso en el espacio de trabajo. En función del valor del criterio y de los cambios en el espacio de trabajo, CARMA puede determinar qué cambios se han realizado en la versión en el RAM e indicar qué cambios de dirección se deberían llevar a cabo. Por ejemplo, CARMA puede determinar si se ha actualizado un archivo de espacio de trabajo localmente, en el RAM, o en ambos. Según la información del cambio, CARMA puede indicar qué partes del archivo han cambiado e indicar dónde se deberían subir los cambios en el RAM, o copiarse del RAM o si se debe realizar una fusión porque los cambios se han producido en el espacio de trabajo y en el RAM.
Para llevar a cabo la comparación de una forma flexible, CARMA ha proporcionado un archivo de configuración para comparar criterios – syncConfig.xml.
Este archivo syncConfig se encuentra en el directorio* de configuración de RSE y CARMA lo tomará automáticamente cuando se inicie** RSE.
El archivo de configuración permite que el desarrollador de RAM especifique una gran variedad de criterios para compararlos de RAM a RAM. Un ejemplo de un archivo de configuración de comparación sería:
<?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/AA"/>
<memberinfo key="Last Modified Time" type="date" format="HH:MM"/>
<memberinfo key="Last Modified Seconds" type="int" />
</RAMCompare>
<RAMCompare ramId="01">
<content />
</RAMCompare>
</CARMACompare>
El documento XML debe comenzar con un elemento CARMACompare. El elemento CARMACompare puede contener 1 elemento RAMCompare o más de uno. Cada elemento RAMCompare especifica los criterios de comparación de un solo RAM. El RAM al cual corresponde el criterio está marcado con el atributo ramId.
El valor ramId debería coincidir con el ID de RAM de la configuración VSAM de RAM y es un número de dos dígitos. Los 0 se tienen que añadir al principio del valor del ID si el ID es inferior a dos dígitos.
Nota: Puede identificar un RAM mediante ramId o uniqueId.
Si conoce el ID del RAM, utilice ramId.
Si conoce el RAM, pero no conoce el ramID asociado, utilice uniqueId.
El ejemplo anterior define criterios de comparación para dos RAM, el 01 y el 02. Cada elemento
RAMCompare contiene los criterios del RAM. Actualmente los criterios disponibles para la comprobación incluyen:
- La información de miembros
- El contenido de los miembros
La información de miembros
La configuración puede definir un elemento
memberinfo o más de uno para cada
RAMCompare.
Los elementos de la información de miembros se concatenan juntos para formar una comparación.
El elemento de información de miembros contiene atributos
key,
type y
format opcionales. Actualmente los atributos
type y
format se ignoran pero se incluye una explicación de su uso. Las claves se comparan actualmente directamente para ver la equivalencia de series.
- Atributo key
- El atributo key hace referencia a un elemento de información de miembros que se encuentra en las propiedades de un recurso. El atributo key debería coincidir con el atributo key que ha devuelto el RAM para el recurso.
- Atributo type
- El atributo type especifica la forma en que se debe tratar el valor
de clave. El atributo type se puede establecer en uno de los valores siguientes:
El tipo define la forma en que se debería comparar la información de miembros. Por ejemplo, utilizando los criterios siguientes
<memberinfo key="Last Modified Seconds" type="int" />
Un valor de información de miembros de 0001 equivaldría a 1.
- Atributo format
- El atributo format solamente es necesario para elementos que especifican un tipo de "date" (fecha). El atributo format permite que los criterios definan la forma en que se debería analizar y comparar el valor de fecha. Por ejemplo, utilizando los criterios siguientes:
<memberinfo key="Last Modified Time" type="date" format="HH:MM"/>
Un valor de información de miembros de 1:10 PM equivaldría a 13:10.
Contenido del miembro
La configuración puede definir un elemento de contenido para cada
RAMCompare.
El elemento de contenido indica que CARMA debería inspeccionar el contenido de bytes del recurso por si hay cambios.
Nota: Esto implica que se debe descargar el archivo completo en el espacio de trabajo para llevar a cabo la comparación.
El contenido del archivo se descarga en el espacio de trabajo y se lleva a cabo una acción hash de archivo
(MD5) en el contenido del archivo. Si el hash del contenido del archivo difiere del hash del archivo del espacio de trabajo se indicará la diferencia.
Criterios de comparación predeterminados
Si no se ha definido ningún elemento RAMCompare para un RAM con el que está trabajando CARMA, se utilizará un conjunto predeterminado de criterios de comparación. Los criterios de comparación predeterminados primero buscan si se ha definido alguna clave de información de miembro carma.version para el recurso que se está comparando. Si la clave carma.version está disponible, se utilizará el valor de clave solo como criterio de comparación.
Si no hay disponible ninguna clave carma.version, la comparación se realizará en función del contenido del miembro.
Nota: * Consulte la publicación Rational Developer
for System z Host Configuration
Guide (SC23-7658-00) si desea más información sobre el directorio de configuración de RSE.
Nota: ** El archivo de configuración de comparación solamente de toma cuando se inicia RSE. Para que los cambios se puedan detectar, desconecte el RSE y vuélvalo a conectar.