All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.ikasan.solr.dao.SolrGeneralDao Maven / Gradle / Ivy

The newest version!
package org.ikasan.solr.dao;

import org.ikasan.solr.model.IkasanSolrDocument;

import java.util.List;
import java.util.Set;

/**
 * Created by Ikasan Development Team on 04/08/2017.
 */
public interface SolrGeneralDao
{
    /**
     * Perform general search against ikasan solr index.
     *
     * @param moduleName
     * @param flowNames
     * @param searchString
     * @param startTime
     * @param endTime
     * @param resultSize
     * @param negateQuery
     * @param sortField
     * @param sortOrder
     * @return RESULTS
     */
    public RESULTS search(Set moduleName, Set flowNames, String searchString, long startTime
        , long endTime, int resultSize, boolean negateQuery, String sortField, String sortOrder);


    /**
     * Perform general search against ikasan solr index.
     *
     * @param moduleName
     * @param flowNames
     * @param searchString
     * @param startTime
     * @param endTime
     * @param resultSize
     * @param entityTypes
     * @param negateQuery
     * @param sortField
     * @param sortOrder
     * @return RESULTS
     */
    public RESULTS search(Set moduleName, Set flowNames, String searchString, long startTime
        , long endTime, int resultSize, List entityTypes, boolean negateQuery, String sortField, String sortOrder);

    /**
     * Perform general search against ikasan solr index.
     *
     * @param moduleName
     * @param flowNames
     * @param componentNames
     * @param eventId
     * @param searchString
     * @param startTime
     * @param endTime
     * @param offset
     * @param resultSize
     * @param entityTypes
     * @param negateQuery
     * @param sortField
     * @param sortOrder
     * @return
     */
    public RESULTS search(Set moduleName, Set flowNames, Set componentNames, String eventId
        , String searchString, long startTime, long endTime, int offset, int resultSize, List entityTypes, boolean negateQuery
        , String sortField, String sortOrder);



    /**
     * Perform general search against ikasan solr index.
     *
     * @param searchString
     * @param startTime
     * @param endTime
     * @param resultSize
     * @param entityTypes
     * @param negateQuery
     * @param sortField
     * @param sortOrder
     * @return RESULTS
     */
    public RESULTS search(String searchString, long startTime, long endTime, int resultSize, List entityTypes, boolean negateQuery
        , String sortField, String sortOrder);

    /**
     * Perform general search against ikasan solr index.
     *
     * @param searchString
     * @param startTime
     * @param endTime
     * @param offset
     * @param resultSize
     * @param entityTypes
     * @param negateQuery
     * @param sortField
     * @param sortOrder
     * @return RESULTS
     */
    public RESULTS search(String searchString, long startTime, long endTime, int offset, int resultSize, List entityTypes, boolean negateQuery
        , String sortField, String sortOrder);

    /**
     * Set the solr username
     *
     * @param solrUsername
     */
    public void setSolrUsername(String solrUsername);


    /**
     * Set the solr password
     *
     * @param solrPassword
     */
    public void setSolrPassword(String solrPassword);

    /**
     * Method to remove expired records from the solr index.
     */
    public void removeExpired();

    /**
     * Method to find a document in the solr index by type and id.
     *
     * @param type
     * @param id
     */
    public DOCUMENT findById(String type, String id);

    /**
     * Method to find a document in the solr index by type and id.
     *
     * @param type
     * @param uri
     */
    public DOCUMENT findByErrorUri(String type, String uri);

    /**
     * Method to remove records from the solr index by type and id.
     *
     * @param type
     * @param id
     */
    public void removeById(String type, String id);

    /**
     * Save or update an IkasanSolrDocument
     *
     * @param ikasanSolrDocument
     */
    public void saveOrUpdate(IkasanSolrDocument ikasanSolrDocument);

    /**
     * Save or update a list of IkasanSolrDocument
     *
     * @param ikasanSolrDocuments
     */
    public void saveOrUpdate(List ikasanSolrDocuments);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy