Package org.hibernate.search.jpa

Examples of org.hibernate.search.jpa.FullTextEntityManager


    persistenceQuery.setMaxResults(10);
    return (List<Activity>) persistenceQuery.getResultList();
  }

  private List<Activity> searchToDos(String fields, String searchTerm) {
    FullTextEntityManager fullTextEntityManager = org.hibernate.search.jpa.Search.getFullTextEntityManager(getEntityManager());
    QueryBuilder qb = fullTextEntityManager.getSearchFactory().buildQueryBuilder().forEntity(ToDo.class).get();
    org.apache.lucene.search.Query query = qb.keyword().onFields(fields).matching(searchTerm).createQuery();

    javax.persistence.Query persistenceQuery = fullTextEntityManager.createFullTextQuery(query, ToDo.class);
    persistenceQuery.setMaxResults(10);
    return (List<Activity>) persistenceQuery.getResultList();
  }
View Full Code Here


    persistenceQuery.setMaxResults(10);
    return (List<Activity>) persistenceQuery.getResultList();
  }

  private List<Activity> searchStatus(String fields, String searchTerm) {
    FullTextEntityManager fullTextEntityManager = org.hibernate.search.jpa.Search.getFullTextEntityManager(getEntityManager());
    QueryBuilder qb = fullTextEntityManager.getSearchFactory().buildQueryBuilder().forEntity(Status.class).get();
    org.apache.lucene.search.Query query = qb.keyword().onFields(fields).matching(searchTerm).createQuery();
    javax.persistence.Query persistenceQuery = fullTextEntityManager.createFullTextQuery(query, Status.class);
    persistenceQuery.setMaxResults(10);
    return (List<Activity>) persistenceQuery.getResultList();
  }
View Full Code Here

    {
        ProjectionSearchRequestBuilderTestHelper sutSubclass = new ProjectionSearchRequestBuilderTestHelper();

        final String searchText = "foo now hey bar";
        final Class< ? >[] resultTypes = { Integer.class };
        final FullTextEntityManager ftem = context.mock(FullTextEntityManager.class, "mockedFtem");
        final QueryParser queryParser = context.mock(QueryParser.class, "mockedQueryParser");
        final Query luceneQuery = context.mock(Query.class, "mockedQuery");
        final org.hibernate.search.jpa.FullTextQuery expectedReturnValue = context.mock(
                org.hibernate.search.jpa.FullTextQuery.class, "mockedFullTextQuery");
        final ResultTransformer resultTransformer = context.mock(ResultTransformer.class, "mockedResultTransformer");
View Full Code Here

            log.info("Lucene query parsed as: " + luceneQuery.toString());
            log.info("Querying for objects of type: " + getEntityNames());
        }

        // get the FullTextQuery
        FullTextEntityManager ftem = getFullTextEntityManager();

        // wrap the FullTextQuery so we have more control over the control flow
        ProjectionFullTextQuery projectionFullTextQuery = new ProjectionFullTextQuery(ftem.createFullTextQuery(
                luceneQuery, resultTypes));

        // set the result format to projection
        List<String> parameters = buildFieldList();
        projectionFullTextQuery.setProjection(parameters.toArray(new String[parameters.size()]));
View Full Code Here

    public PagedSet<T> execute(final LuceneSearchRequest inRequest)
    {
        /**
         * Convoluted like this to make testing possible.
         */
        FullTextEntityManager sessionEntityManager = fullTextEntityManager;

        if (sessionEntityManager == null)
        {
            sessionEntityManager = Search.getFullTextEntityManager(getEntityManager());
        }

        QueryParser parser = queryBuilder.buildQueryParser();

        List<T> results = null;

        PagedSet<T> pagedSet = null;

        try
        {
            StringBuilder query = new StringBuilder();

            // TODO Escape!!
            for (Entry<String, Float> entry : inRequest.getFields().entrySet())
            {
                query.append(entry.getKey());
                query.append(":");
                query.append("(%1$s)^");
                query.append(Float.toString(entry.getValue()));
                query.append(" ");
            }

            String luceneQueryString = String.format(query.toString(), inRequest.getSearchString());
            org.apache.lucene.search.Query luceneQuery = parser.parse(luceneQueryString);

            FullTextQuery fullTextQuery = sessionEntityManager.createFullTextQuery(luceneQuery, inRequest
                    .getObjectType());

            fullTextQuery.setFirstResult(inRequest.getFirstResult());
            fullTextQuery.setMaxResults(inRequest.getMaxResults());

View Full Code Here

    boostPerField.put( bookFields[0], ( float ) 4 );
    boostPerField.put( bookFields[1], ( float ) 3 );
    boostPerField.put( bookFields[2], ( float ) 4 );
    boostPerField.put( bookFields[3], ( float ) .5 );

    FullTextEntityManager ftEm = org.hibernate.search.jpa.Search.getFullTextEntityManager( ( EntityManager ) em );
    Analyzer customAnalyzer = ftEm.getSearchFactory().getAnalyzer( "customanalyzer" );
    QueryParser parser = new MultiFieldQueryParser(
        Version.LUCENE_29, bookFields,
        customAnalyzer, boostPerField
    );

    org.apache.lucene.search.Query luceneQuery;
    luceneQuery = parser.parse( searchQuery );

    final FullTextQuery query = ftEm.createFullTextQuery( luceneQuery, Book.class );

    return query;
  }
View Full Code Here

        boostPerField.put(bookFields[0], (float) 4);
        boostPerField.put(bookFields[1], (float) 3);
        boostPerField.put(bookFields[2], (float) 4);
        boostPerField.put(bookFields[3], (float) .5);

        FullTextEntityManager ftEm = org.hibernate.search.jpa.Search.getFullTextEntityManager((EntityManager) em);

        QueryParser parser = new MultiFieldQueryParser(bookFields, ftEm.getSearchFactory().getAnalyzer("customanalyzer"),
                boostPerField);

        org.apache.lucene.search.Query luceneQuery;
        luceneQuery = parser.parse(searchQuery);

        final FullTextQuery query = ftEm.createFullTextQuery(luceneQuery, Book.class);

        return query;
    }
View Full Code Here

TOP

Related Classes of org.hibernate.search.jpa.FullTextEntityManager

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.