Universe Adapter

El adaptador de datos de UniVerse permite acceder directamente a todos los datos almcacenados en este tipo de base de datos.

El adaptador de UniVerse, permite tener control y acceso total a los datos de este tipo de base de datos, con la capacidad de realizar operaciones CRUD sobre los mismos de una manera eficiente y orientada a objetos.

Las siguientes características son representativas del adaptador desarrollado por SysOne.

  • Ejecucion de comandos LIST o SELECT, retornando el resultado de las listas como XML o JSON.
  • Ejecutar rutinas de UniVerse, retornar los resultados como XML o JSON.
  • Apertura y lectura de registros de archivos.

Arquitectura

El siguiente gráfico describe la arquitectura utilizada para acceder desde el ISB hacia sistemas legados UniVerse. Arquitectura Desde los servicios de Insurance Service Bus, se acceder a las API de Universe Objects, las cuales interactúan mediante TCP/IP (Sockets) con los servicios de UNIRPC de UniVerse.

La comunicación entre el ISB y UniVerse es completamente segura utilizando certificados digitales para establecer el intercambio de datos.

Para mejora del desempeño para el intercambio de información, se puede configurar un pool de conexiones.

Desde cualquier servicio de pueden realizar peticiones de acceso o modificación de datos mediante los métodos descriptos a continuación.

Apertura de una sesión

String user = "USER";
String account = "UVACCOUNT";
String pass = "********";
String ip = "10.1.1.1";
UVMessenger m = new UVMessenger();
m.connect(ip, user, pass, account,"SOAClient");

Lectura de registros como XML

String result = m.executeCommandAsXMLString("LIST FILE TOXML SAMPLE 10");
result = m.executeCommandAsXMLString("LIST F1 F1 F3 FILE TOXML");

Lectura de registros como Mapa

UVMessenger m = new UVMessenger();
m.connect(ip, user, pass, account, "SOAClient");
m.selectRecords("SELECT FILE WITH X = 04");
Map<String, String> fields = new HashMap<String, String>();
fields.put("@ID", "@ID");
fields.put("FIELD.1", "FIELD.1");
fields.put("FIELD.2", "FIELD.2");
fields.put("FIELD.3", "FIELD.3");
fields.put("FIELD.4", "FIELD.4");
fields.put("FIELD.5", "FIELD.5");
fields.put("FIELD.6", "FIELD.6");
fields.put("FIELD.7", "FIELD.7");
List<FieldSet> sets = m.getFields("FILE", fields);

Apertura y modificación de registros

UVMessenger m = new UVMessenger();
m.connect(ip, user, pass, account, "SOAClient");
UniFile person = m.open("PERSON");
person.setRecordID("0123456");
System.out.println("First Name: " + person.readNamedField("FIRST.NAME"));
System.out.println("Last Name: " + person.readNamedField("LAST.NAME"));

results matching ""

    No results matching ""