Class MeasuredSearch

java.lang.Object
com.erudika.para.server.search.MeasuredSearch
All Implemented Interfaces:
com.erudika.para.core.search.Search

public class MeasuredSearch extends Object implements com.erudika.para.core.search.Search
This class watches search methods and gathers metrics for each one of them.
Author:
Alex Bogdanovski [[email protected]]
  • Constructor Details

    • MeasuredSearch

      public MeasuredSearch(com.erudika.para.core.search.Search search)
  • Method Details

    • index

      public void index(com.erudika.para.core.ParaObject po)
      Specified by:
      index in interface com.erudika.para.core.search.Search
    • index

      public void index(String appid, com.erudika.para.core.ParaObject po)
      Specified by:
      index in interface com.erudika.para.core.search.Search
    • unindex

      public void unindex(com.erudika.para.core.ParaObject po)
      Specified by:
      unindex in interface com.erudika.para.core.search.Search
    • unindex

      public void unindex(String appid, com.erudika.para.core.ParaObject po)
      Specified by:
      unindex in interface com.erudika.para.core.search.Search
    • indexAll

      public <P extends com.erudika.para.core.ParaObject> void indexAll(List<P> objects)
      Specified by:
      indexAll in interface com.erudika.para.core.search.Search
    • indexAll

      public <P extends com.erudika.para.core.ParaObject> void indexAll(String appid, List<P> objects)
      Specified by:
      indexAll in interface com.erudika.para.core.search.Search
    • unindexAll

      public <P extends com.erudika.para.core.ParaObject> void unindexAll(List<P> objects)
      Specified by:
      unindexAll in interface com.erudika.para.core.search.Search
    • unindexAll

      public <P extends com.erudika.para.core.ParaObject> void unindexAll(String appid, List<P> objects)
      Specified by:
      unindexAll in interface com.erudika.para.core.search.Search
    • unindexAll

      public void unindexAll(Map<String,?> terms, boolean matchAll)
      Specified by:
      unindexAll in interface com.erudika.para.core.search.Search
    • unindexAll

      public void unindexAll(String appid, Map<String,?> terms, boolean matchAll)
      Specified by:
      unindexAll in interface com.erudika.para.core.search.Search
    • findById

      public <P extends com.erudika.para.core.ParaObject> P findById(String id)
      Specified by:
      findById in interface com.erudika.para.core.search.Search
    • findById

      public <P extends com.erudika.para.core.ParaObject> P findById(String appid, String id)
      Specified by:
      findById in interface com.erudika.para.core.search.Search
    • findByIds

      public <P extends com.erudika.para.core.ParaObject> List<P> findByIds(List<String> ids)
      Specified by:
      findByIds in interface com.erudika.para.core.search.Search
    • findByIds

      public <P extends com.erudika.para.core.ParaObject> List<P> findByIds(String appid, List<String> ids)
      Specified by:
      findByIds in interface com.erudika.para.core.search.Search
    • findNearby

      public <P extends com.erudika.para.core.ParaObject> List<P> findNearby(String type, String query, int radius, double lat, double lng, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findNearby in interface com.erudika.para.core.search.Search
    • findNearby

      public <P extends com.erudika.para.core.ParaObject> List<P> findNearby(String appid, String type, String query, int radius, double lat, double lng, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findNearby in interface com.erudika.para.core.search.Search
    • findPrefix

      public <P extends com.erudika.para.core.ParaObject> List<P> findPrefix(String type, String field, String prefix, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findPrefix in interface com.erudika.para.core.search.Search
    • findPrefix

      public <P extends com.erudika.para.core.ParaObject> List<P> findPrefix(String appid, String type, String field, String prefix, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findPrefix in interface com.erudika.para.core.search.Search
    • findQuery

      public <P extends com.erudika.para.core.ParaObject> List<P> findQuery(String type, String query, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findQuery in interface com.erudika.para.core.search.Search
    • findQuery

      public <P extends com.erudika.para.core.ParaObject> List<P> findQuery(String appid, String type, String query, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findQuery in interface com.erudika.para.core.search.Search
    • findNestedQuery

      public <P extends com.erudika.para.core.ParaObject> List<P> findNestedQuery(String type, String field, String query, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findNestedQuery in interface com.erudika.para.core.search.Search
    • findNestedQuery

      public <P extends com.erudika.para.core.ParaObject> List<P> findNestedQuery(String appid, String type, String field, String query, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findNestedQuery in interface com.erudika.para.core.search.Search
    • findSimilar

      public <P extends com.erudika.para.core.ParaObject> List<P> findSimilar(String type, String filterKey, String[] fields, String liketext, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findSimilar in interface com.erudika.para.core.search.Search
    • findSimilar

      public <P extends com.erudika.para.core.ParaObject> List<P> findSimilar(String appid, String type, String filterKey, String[] fields, String liketext, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findSimilar in interface com.erudika.para.core.search.Search
    • findTagged

      public <P extends com.erudika.para.core.ParaObject> List<P> findTagged(String type, String[] tags, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findTagged in interface com.erudika.para.core.search.Search
    • findTagged

      public <P extends com.erudika.para.core.ParaObject> List<P> findTagged(String appid, String type, String[] tags, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findTagged in interface com.erudika.para.core.search.Search
    • findTags

      public <P extends com.erudika.para.core.ParaObject> List<P> findTags(String keyword, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findTags in interface com.erudika.para.core.search.Search
    • findTags

      public <P extends com.erudika.para.core.ParaObject> List<P> findTags(String appid, String keyword, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findTags in interface com.erudika.para.core.search.Search
    • findTermInList

      public <P extends com.erudika.para.core.ParaObject> List<P> findTermInList(String type, String field, List<?> terms, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findTermInList in interface com.erudika.para.core.search.Search
    • findTermInList

      public <P extends com.erudika.para.core.ParaObject> List<P> findTermInList(String appid, String type, String field, List<?> terms, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findTermInList in interface com.erudika.para.core.search.Search
    • findTerms

      public <P extends com.erudika.para.core.ParaObject> List<P> findTerms(String type, Map<String,?> terms, boolean matchAll, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findTerms in interface com.erudika.para.core.search.Search
    • findTerms

      public <P extends com.erudika.para.core.ParaObject> List<P> findTerms(String appid, String type, Map<String,?> terms, boolean matchAll, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findTerms in interface com.erudika.para.core.search.Search
    • findWildcard

      public <P extends com.erudika.para.core.ParaObject> List<P> findWildcard(String type, String field, String wildcard, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findWildcard in interface com.erudika.para.core.search.Search
    • findWildcard

      public <P extends com.erudika.para.core.ParaObject> List<P> findWildcard(String appid, String type, String field, String wildcard, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      findWildcard in interface com.erudika.para.core.search.Search
    • getCount

      public Long getCount(String type)
      Specified by:
      getCount in interface com.erudika.para.core.search.Search
    • getCount

      public Long getCount(String appid, String type)
      Specified by:
      getCount in interface com.erudika.para.core.search.Search
    • getCount

      public Long getCount(String type, Map<String,?> terms)
      Specified by:
      getCount in interface com.erudika.para.core.search.Search
    • getCount

      public Long getCount(String appid, String type, Map<String,?> terms)
      Specified by:
      getCount in interface com.erudika.para.core.search.Search
    • rebuildIndex

      public boolean rebuildIndex(com.erudika.para.core.persistence.DAO dao, com.erudika.para.core.App app, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      rebuildIndex in interface com.erudika.para.core.search.Search
    • rebuildIndex

      public boolean rebuildIndex(com.erudika.para.core.persistence.DAO dao, com.erudika.para.core.App app, String destinationIndex, com.erudika.para.core.utils.Pager... pager)
      Specified by:
      rebuildIndex in interface com.erudika.para.core.search.Search
    • isValidQueryString

      public boolean isValidQueryString(String queryString)
      Specified by:
      isValidQueryString in interface com.erudika.para.core.search.Search
    • createIndex

      public void createIndex(com.erudika.para.core.App app)
      Specified by:
      createIndex in interface com.erudika.para.core.search.Search
    • deleteIndex

      public void deleteIndex(com.erudika.para.core.App app)
      Specified by:
      deleteIndex in interface com.erudika.para.core.search.Search
    • getSearchClassName

      public String getSearchClassName()
      Specified by:
      getSearchClassName in interface com.erudika.para.core.search.Search