Búsqueda sencilla

La forma más sencilla de construir una consulta de búsqueda es utilizar el método RAMSession.createAssetQuery(String). Puede pasar cualquier serie que escribiría en el recuadro de entrada de búsqueda en el cliente web o Eclipse. O puede pegar un atajo de búsqueda que se encuentra bajo el recuadro de texto Buscar en el cliente web.

Captura de pantalla del acceso directo de búsqueda en el cliente web

En el cliente Eclipse puede obtener un atajo de búsqueda utilizando Copiar del portapapeles desde el menú desplegable en la vista de búsqueda de activos.

El método createAssetQuery devolverá un objeto RAMAssetQueryBuilder invocado al objeto SeachQuery simplificado. Este objeto se puede pasar al método RAMSession.getAssets(SearchQuery) y devolverá un objeto RAMSearchResult invocado al objeto SearchResult común. En el objeto SearchResult puede obtener el número total de activos que cumplen esta consulta de búsqueda junto con una lista de objetos RAMAsset para esta página de resultados.

Este es un ejemplo de una búsqueda sencilla de todos los activos que coincidan con las palabras "Rational Asset Manager" y "javadoc":

                SearchQuery query = session.createAssetQuery("Rational Asset Manager javadoc");
                SearchResult searchResult = session.getAssets(query);
                RAMAssetSearchResult[] assets = (RAMAssetSearchResult[])searchResult.getAssetSearchResults();

Resultados de la búsqueda en tiempo real

Puede utilizar la búsqueda sincronizada, o búsqueda en tiempo real, para asegurarse de que los resultados de la búsqueda se sincronizan con la base de datos. Utilice el distintivo SYNCHRONIZED_SEARCH_FLAG para habilitar las búsquedas en tiempo real.

Cuando utiliza la búsqueda sincronizada, los resultados devueltos del índice coinciden con el contenido de la base de datos en el momento en que se sometió la consulta. Las búsquedas sincronizadas pueden tardar más que las búsquedas normales porque la solicitud debe esperar a que el índice se sincronice con la base de datos si se han producido actualizaciones recientes del sistema.

A continuación se muestra un ejemplo de búsqueda sincronizada:

                RAMAssetQueryBuilder query = (RAMAssetQueryBuilder)session.createAssetQuery("Synchronized Search Test");
                query.setSearchModes(SearchQuery.SYNCHRONIZED_SEARCH_FLAG);
                SearchResult searchResult = session.getAssets(query);

Comentarios