Package org.dspace.app.cris.statistics

Source Code of org.dspace.app.cris.statistics.CrisSolrLogger

/**
* The contents of this file are subject to the license and copyright
* detailed in the LICENSE and NOTICE files at the root of the source
* tree and available online at
*
* https://github.com/CILEA/dspace-cris/wiki/License
*/
package org.dspace.app.cris.statistics;


import org.apache.log4j.Logger;
import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.client.solrj.SolrServerException;
import org.apache.solr.client.solrj.response.QueryResponse;
import org.apache.solr.common.SolrDocumentList;
import org.dspace.app.cris.model.CrisConstants;
import org.dspace.statistics.SolrLogger;

/**
* This class is mainly a copy and paste of the org.dspace.statistics.SolrLogger class used to manage logging
* of access to Researcher Page objects.
*
* Static SolrLogger used to hold HttpSolrClient connection pool to issue
* usage logging events to Solr from DSpace libraries.
*
* @author pascarelli, bollini
*/
public class CrisSolrLogger extends SolrLogger
{
 
  private static Logger log = Logger.getLogger(CrisSolrLogger.class);
 
 
  @Override
  public SolrDocumentList getRawData(int type) throws SolrServerException
  {

      if (type >= CrisConstants.CRIS_TYPE_ID_START)
        {
           
          SolrQuery query = new SolrQuery();
          query.setQuery("*:*");
          query.setFilterQueries("type:" + type);
          query.setRows(Integer.MAX_VALUE);
          query.setFields("ip", "id", "sectionid", "type", "time", "dns", "epersonid",
                  "isBot", "userAgent");
          QueryResponse resp = getSolr().query(query);
          return resp.getResults();
         
        }
        else
        {
            return super.getRawData(type);
        }

  }
 
   
}
TOP

Related Classes of org.dspace.app.cris.statistics.CrisSolrLogger

TOP
Copyright © 2018 www.massapi.com. 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.