
org.ikasan.metrics.service.SolrMetricsServiceImpl Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of ikasan-solr-client Show documentation
Show all versions of ikasan-solr-client Show documentation
Ikasan EIP Solr Client Abstraction
The newest version!
package org.ikasan.metrics.service;
import org.ikasan.metrics.dao.SolrMetricsDao;
import org.ikasan.spec.history.FlowInvocationMetric;
import org.ikasan.spec.metrics.MetricsService;
import org.ikasan.spec.persistence.BatchInsert;
import org.ikasan.spec.solr.SolrService;
import org.ikasan.spec.solr.SolrServiceBase;
import java.util.List;
public class SolrMetricsServiceImpl extends SolrServiceBase implements SolrService, BatchInsert, MetricsService {
private SolrMetricsDao solrMetricsDao;
public SolrMetricsServiceImpl(SolrMetricsDao solrMetricsDao) {
this.solrMetricsDao = solrMetricsDao;
if(this.solrMetricsDao == null) {
throw new IllegalArgumentException("solrMetricsDao cannot be null!");
}
}
@Override
public void insert(List entities) {
this.solrMetricsDao.setSolrUsername(this.solrUsername);
this.solrMetricsDao.setSolrPassword(this.solrPassword);
this.solrMetricsDao.save(entities);
}
@Override
public void save(FlowInvocationMetric save) {
this.solrMetricsDao.setSolrUsername(this.solrUsername);
this.solrMetricsDao.setSolrPassword(this.solrPassword);
this.solrMetricsDao.save(save);
}
@Override
public void save(List save) {
this.solrMetricsDao.setSolrUsername(this.solrUsername);
this.solrMetricsDao.setSolrPassword(this.solrPassword);
this.insert(save);
}
@Override
public List getMetrics(long startTime, long endTime) {
this.solrMetricsDao.setSolrUsername(this.solrUsername);
this.solrMetricsDao.setSolrPassword(this.solrPassword);
return this.solrMetricsDao.getMetrics(startTime, endTime);
}
@Override
public List getMetrics(String moduleName, long startTime, long endTime) {
this.solrMetricsDao.setSolrUsername(this.solrUsername);
this.solrMetricsDao.setSolrPassword(this.solrPassword);
return this.solrMetricsDao.getMetrics(moduleName, startTime, endTime);
}
@Override
public List getMetrics(String moduleName, String flowName, long startTime, long endTime) {
this.solrMetricsDao.setSolrUsername(this.solrUsername);
this.solrMetricsDao.setSolrPassword(this.solrPassword);
return this.solrMetricsDao.getMetrics(moduleName, flowName, startTime, endTime);
}
@Override
public List getMetrics(long startTime, long endTime, int offset, int limit) {
this.solrMetricsDao.setSolrUsername(this.solrUsername);
this.solrMetricsDao.setSolrPassword(this.solrPassword);
return this.solrMetricsDao.getMetrics(startTime, endTime, offset, limit);
}
@Override
public long count(long startTime, long endTime) {
this.solrMetricsDao.setSolrUsername(this.solrUsername);
this.solrMetricsDao.setSolrPassword(this.solrPassword);
return this.solrMetricsDao.count(startTime, endTime);
}
@Override
public List getMetrics(String moduleName, long startTime, long endTime, int offset, int limit) {
this.solrMetricsDao.setSolrUsername(this.solrUsername);
this.solrMetricsDao.setSolrPassword(this.solrPassword);
return this.solrMetricsDao.getMetrics(moduleName, startTime, endTime, offset, limit);
}
@Override
public long count(String moduleName, long startTime, long endTime) {
this.solrMetricsDao.setSolrUsername(this.solrUsername);
this.solrMetricsDao.setSolrPassword(this.solrPassword);
return this.solrMetricsDao.count(moduleName, startTime, endTime);
}
@Override
public List getMetrics(String moduleName, String flowName, long startTime, long endTime, int offset, int limit) {
this.solrMetricsDao.setSolrUsername(this.solrUsername);
this.solrMetricsDao.setSolrPassword(this.solrPassword);
return this.solrMetricsDao.getMetrics(moduleName, flowName, startTime, endTime, offset, limit);
}
@Override
public long count(String moduleName, String flowName, long startTime, long endTime) {
this.solrMetricsDao.setSolrUsername(this.solrUsername);
this.solrMetricsDao.setSolrPassword(this.solrPassword);
return this.solrMetricsDao.count(moduleName, flowName, startTime, endTime);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy