La tarea de actualización de proceso por lotes ayuda a migrar datos y a mover activos a un
servidor IBM® Rational Asset Manager. Puede utilizar la opción de sistema de archivos para ampliar la tarea de actualización de proceso por lotes y puede ampliar la tarea para leer cualquier tipo de datos de origen y correlacionarlos con los activos.
Acerca de esta tarea
Ampliar la tarea de actualización de proceso por lotes
Puede ampliar la tarea de actualización de
proceso por lotes para que lea cualquier clase de datos de origen y los correlacione con activos
de Rational Asset
Manager.
La tarea de actualización de proceso por lotes de Rational Asset
Manager realiza una correlación inteligente buscando activos y efectuando fusiones,
en lugar de crear activos cada vez.
El plug-in com.ibm.ram.rich.ui.extension
contiene el origen para la extensión del sistema de archivos y se incluye como parte
del cliente Eclipse de Rational Asset
Manager instalado, en la carpeta /plugins.
Puede encontrar el archivo JAR en la instalación del cliente Eclipse
en /eclipse/plugins/com.ibm.ram.rich.ui.extension_7.5.1.v.jar.
Cuando se extrae, se pueden encontrar los archivos Java en el
directorio /src.
El código de extensión del sistema de archivos se
encuentra en estos dos directorios: src\com\ibm\ram\internal\batch\filesystem\ y
src\com\ibm\ram\internal\batch\filesystem\ui\
Preparar la ampliación y el origen de datos
Para todos los orígenes de datos debe preparar la ampliación y los datos:
- Determine qué datos se mueven a Rational Asset Manager.
- Prepare los datos para la carga.
- Cree un plugin de Eclipse que amplíe las clases de tareas de actualización de proceso por lotes
de Rational Asset Manager.
- Compile y despliegue el plugin de Eclipse.
En la sección Ejemplo, Microsoft Excel
es el origen de datos. Realice los pasos 1 y 2 trabajando con la hoja de cálculo de Excel.
Para ampliar la tarea de actualización de proceso por lotes utilizando la opción del sistema de archivos, debe crear un proyecto de plugin nuevo e implementar las ampliaciones para los puntos de ampliación.
La tarea de actualización de proceso por lotes proporciona dos puntos de ampliación para su implementación:
batchDataSource y batchDataSourceUI.
Puede implementar una tarea de actualización de proceso por lotes por medio de dos puntos de ampliación:
- batchDataSource: el plugin com.ibm.ram.rich.core proporciona el punto
de ampliación batchDataSource. Este punto de ampliación le ayuda a definir una ampliación del
origen de datos para el cliente por lotes de
Rational Asset Manager. En una actualización por lotes, el punto de ampliación batchDataSource toma los datos de su repositorio y
los migra a un servidor
Rational Asset Manager.
- batchDataSourceUI: el plugin com.ibm.ram.rich.ui.extension proporciona
el punto de ampliación batchDataSourceUI. Este punto de ampliación le ayuda a contribuir con elementos
de interfaz de usuario al Editor de actualizaciones por lotes de
Rational Asset Manager.
Extensión del sistema de archivos simplificada
A continuación, se proporciona una versión simplificada
de la extensión del sistema de archivos que puede exportar como un plug-in desplegable. Esta ampliación del sistema de archivos crea
activos y archivos .zip en una carpeta raíz determinada. El ejemplo toma una carpeta raíz y cualquier subcarpeta o
archivos .zip se convierten en activos. El nombre de las subcarpetas o los archivos de archivado será
el nombre del activo.
El contenido de la subcarpeta/archivo será los artefactos, excepto por un
archivo .asset_info necesario.
Hay dos
clases Java que amplían las clases de API de proceso por lotes
de Rational Asset Manager:
- FileSystemBatchDataSource.java: amplía
BatchDataSource.
- FileSystemBatchUIContributor.java: amplía
AbstractBatchUIContributor.
La clase
FileSystemBatchDataSource crea y devuelve los activos según la vía de acceso raíz. En este archivo, se especifica el origen de
datos para la ampliación de cliente por lotes para crear activos a partir de carpetas y archivos .zip en una carpeta
raíz determinada. Estas carpetas y archivos .zip deben contener un archivo
denominado .asset_info.
El contenido del archivo
.asset_info debe
estar en el formato de un archivo .properties (normalmente, una clave=par de valores por línea) y contener
las propiedades específicas para el activo tal como se lista en el archivo
FileSystemBatchDataSource.java:
- name (Opcional. Si se omite, se utilizará el nombre de archivo/carpeta.)
- version (Opcional. Si se omite, se utilizará 1.0.)
- community (Necesario)
- asset_type (Necesario)
- short_description (Opcional. Si se omite, se utilizará el nombre de archivo/carpeta.)
- description (Opcional)
La clase FileSystemBatchUIContributor crea un origen de datos nuevo abriendo
un diálogo de selección de directorio en el que el usuario puede seleccionar el directorio raíz y, a continuación,
utilizando la selección para crear activos.
Consulte el archivo FileSystemBatchDataSource java para ver la
estructura necesaria del directorio raíz.
Los puntos de ampliación que el ejemplo del sistema
de archivos simple utiliza como gancho en el cliente por lotes se definen en el
archivo
plugin.xml:
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
<extension point="com.ibm.ram.rich.core.batchDataSource">
<dataSourceType
class="com.ibm.ram.batch.example.FileSystemBatchDataSource"
id="com.ibm.ram.batch.example.filesystem">
</dataSourceType>
</extension>
<extension point="com.ibm.ram.rich.ui.extension.batchDataSourceUI">
<batchDataSourceUI
class="com.ibm.ram.batch.example.FileSystemBatchUIContributor"
dataSourceID="com.ibm.ram.batch.example.filesystem"
icon="icon.gif"
name="File System Example">
</batchDataSourceUI>
</extension>
</plugin>
Los ejemplos de código para estas extensiones están aquí
Utilizar las ampliaciones del sistema de archivos de subida por lotes.
También
puede utilizar las API de Rational Asset
Manager Java para ejecutar una operación de subida por lotes
y subir varios activos. Consulte Realizar una subida por lotes
Ejemplo
Este ejemplo describe cómo crear ampliaciones para
archivos Microsoft Excel. En este ejemplo,
un archivo Microsoft Excel
es el origen de datos, y las ampliaciones de la tarea de actualización de proceso por lotes se compilan como un
plugin de Eclipse. La tarea de actualización de proceso por lotes lee los archivos Excel formateados y correlaciona
las filas de Excel con los activos de Rational Asset Manager. Los usuarios pueden
modificar los datos antes de someterlos a Rational Asset
Manager. Consulte también Ejemplo de subida de activos por lotes.
Preparar el origen de datos
Antes de cargar la hoja de cálculo de Excel, debe formatear la hoja de cálculo. En este ejemplo, la hoja de cálculo se formatea de la siguiente manera:
Tabla 1. | |
A |
B |
C |
D |
E |
F |
| 1 |
AssetType:
Compiler |
Community: Technical Infrastructure |
|
|
|
|
| 2 |
Asset:GUID |
Asset:Version |
Asset:Name |
Asset Attribute: Author |
Category Schema: Licenses |
Ignore:
IDE |
- Las dos primeras filas de la hoja de cálculo describen el modelo de información que se correlacionará
con Rational Asset
Manager.
- La primera fila hace referencia al tipo de activo y la comunidad. Utilice el formato de celda en la muestra; por ejemplo "Asset Type: Compiler."
- La segunda fila hace referencia a la correlación de nivel-activo, por ejemplo:
- Asset: GUID
- Asset: Version
- Asset: Name
- Asset Attribute: <attribute
name>
- Category Schema: <category schema name>
Estas filas contienen valores del esquema utilizando el formato “a/b/c”
- Ignore: <name>
Esta columna se ignorará en la carga.
Si las filas para los activos no tienen valores, se crea un activo
en Rational Asset Manager;
de lo contrario, se realiza una fusión.
- Las filas que siguen a las filas 1 y 2 se correlacionan como activos.
Las cabeceras de columna utilizan un formateo especial que utiliza el analizador en este activo. Las filas 1 y 2 se reservan. La fila 1 contiene el tipo de activo y la declaración de comunidad. La fila 2 contiene una descripción de las columnas de activo, por ejemplo GUID, Version (versión), Name (nombre), y asset attributes (atributos de activo).
Para ver los formatos esperados, examine la hoja de cálculo de muestra.
Crear el plugin de Eclipse
El código está estructurado como un plugin de Eclipse; define los puntos de extensión.
Al
crear un plugin de Eclipse que amplía las clases de tareas de actualización de proceso por lotes
de Rational Asset Manager, siga estas directrices:
- Utilice el asistente Plugin de Eclipse para crear la clase de Activador.
- Guarde al menos dos clases, en este caso: ExcelBatchDataSource
y ExcelBatchUIContributor. Coloque la lógica de análisis en la clase de origen de datos.
- Cuando ejecute la tarea de actualización de proceso por lotes en Eclipse, seleccione un origen de datos y
luego seleccione una conexión con Rational Asset
Manager.
- Cuando seleccione la conexión con Rational Asset Manager en el cliente, se llamará al método
fetchAssets en la clase de origen de datos. Utilice el método ExcelBatchDataSource.fetchAssets(); aquí es donde se producen la mayoría de códigos de análisis. Nota: no
necesita un objeto de sesión de Rational Asset
Manager en el código.
- Para obtener una hoja de cálculos, invoque createSpreadsheetAssets y abra un objeto de documento de Excel.
- Para manejar el GUID, cree uno nuevo. No obstante, si encuentra un activo: columna GUID, establezca el activo con este valor para que la tarea de actualización de proceso por lotes realice una actualización en lugar de crear un activo.
- En cada fila, seleccione las columnas que se cargarán y correlaciónelas con el activo.
Para crear un proyecto de plugin nuevo:
- En el menú de Eclipse, pulse
.
- Amplíe
- Escriba un nombre para el proyecto.
- Pulse Siguiente.
- Pulse Finalizar. Se abre el archivo MANIFEST.MF.
- Abra la pestaña Editor de dependencias.
- En la sección Plugins necesarios, pulse Añadir.
- Seleccione el plugin com.ibm.ram.rich.ui.extension y pulse Aceptar.
- Pulse Finalizar.
- En la sección Plugins necesarios, pulse Añadir.
- Seleccione el punto de ampliación com.ibm.ram.rich.ui.extension.batchDataSourceUI.
- Pulse Finalizar.
- Guarde el archivo MANIFEST.
La tarea de actualización de proceso por lotes realiza el
envío de activos a Rational Asset Manager.
Uso de la tarea de actualización por lotes
En este ejemplo, el plug-in de Eclipse se despliega en la máquina local.
Para
ejecutar la ampliación de la actualización de proceso por lotes de Rational Asset Manager Excel para que
utilice un archivo Excel para crear y someter nuevos activos como una operación de subida por lotes, siga estos pasos:
- Pulse .
- Seleccione el origen de datos de Excel y elija el archivo Excel. Aparece el editor de actualización de proceso por lotes
de Rational Asset Manager.
- Pulse el icono para el origen de datos que se va a correlacionar con Rational Asset Manager. Este icono contiene el icono de Excel. Se visualiza un explorador de archivos, que se ha utilizado para navegar hacia el archivo Excel preparado.
- Seleccione la conexión de repositorio de Rational Asset
Manager que está definida en el espacio de trabajo de Eclipse.
- Seleccione el repositorio de destino de Rational Asset
Manager en el que se subirán los activos. En este ejemplo, los activos se suben a una
instancia de Rational Asset
Manager en la máquina local.
- Para completar la correlación con Rational Asset
Manager, añada elementos de configuración, como comunidades, y correlacione las
categorizaciones.
Después de seleccionar el repositorio de destino
de Rational Asset Manager, el editor de lotes lee el archivo
Excel y lo correlaciona con la instancia de destino de Rational Asset Manager. En este momento, no se ha cargado ningún activo. El
editor de lotes de Rational Asset
Manager proporciona un resumen de la correlación inicial. En este ejemplo, los activos del archivo Excel se dirigen
a una comunidad específica de Rational Asset Manager, que el editor de lotes
no ha encontrado en Rational Asset Manager. Los usuarios que tienen derechos de acceso pueden crear la comunidad de forma inmediata, tal como se muestra en este ejemplo.
La actividad de correlación sigue examinando los tipos de activos, la información de versión de activo, los tipos de relación y así sucesivamente. En
cada caso, los usuarios pueden realizar la correlación con información de configuración existente
en Rational Asset Manager o, si tienen derechos de acceso,
pueden añadir esta información.
- Cuando la correlación haya finalizado, pulse el botón Actualizar todos los activos. Los activos se
suben a Rational Asset Manager. En el editor por lotes, se visualizarán los resultados de la carga.
Objetos y estructuras de clase
La
API de Rational Asset Manager tiene dos estructuras de clase
principales para los activos:
- Clases con nombre que empiezan por "RAM" (por ejemplo la clase RAMAsset).
- Clases con nombres que no empiezan por “RAM” (por ejemplo la clase Asset).
Los objetos de clases RAM
se recuperan de un servidor Rational Asset Manager, que necesita un objeto de sesión
de Rational Asset Manager; los objetos de sesión no se utilizan en este ejemplo. Los objetos
de clases, como Activo, se crean sin una sesión conocida de Rational Asset Manager, luego se proporcionan
a la tarea de actualización de proceso por lotes y, por último, se someten o actualizan en Rational Asset Manager.