Los correlacionadores son clases que definen cómo se correlacionan los datos del servicio de búsqueda de las tablas de la base de datos de aplicaciones a las tablas de la base de datos de transferencia. Cada servicio de búsqueda tiene su propio correlacionador; el correlacionador que se debe utilizar se especifica en la tabla de base de datos SearchService. Para ver más detalles, consulte mapperName.
Esta funcionalidad del correlacionador se utiliza en dos procesos:
En ambos procesos, el correlacionador relevante se invoca para cada servicio de búsqueda para correlacionar datos de las tablas de base de datos de la aplicación con las tablas de la base de datos de transferencia.
Al inicializarse el Servidor de búsqueda genérico, la información de la base de datos de transferencia se lee y se utiliza para construir los índices a partir de los metadatos del servicio de búsqueda. El Servidor de búsqueda comprobará periódicamente la base de datos de transición para ver si hay actualizaciones y mantener los datos de servicio actualizados.
Los siguientes métodos de la API de correlacionador deben ser implementados por los desarrolladores de búsquedas para cada servicio de búsqueda:
SearchServiceRowDtlsList mapToStagingDb( final SearchServiceKey id) throws AppException, InformationalException; List getObjectList(final SearchServiceKey serviceId, final Object obj) throws AppException, InformationalException; String getExtKey(final SearchServiceKey serviceId, List objList); void remove(final SearchServiceKey serviceId, final Object objKey) throws AppException, InformationalException; Object getFieldValue(final SearchServiceKey serviceId, final List objList, final SearchServiceFieldDtls field);
Consulte Implementación de operaciones del correlacionador si desea obtener información detallada