ExportTarrifCodeRepositoryImpl.java
package com.tradecloud.repository.export.impl;
import com.tradecloud.domain.export.ExportTarrifCode;
import com.tradecloud.dto.export.ExportTarrifCodeSearch;
import com.tradecloud.repository.base.impl.CriteriaOperation;
import com.tradecloud.repository.base.impl.CriteriaValue;
import com.tradecloud.repository.base.impl.RepositoryBaseImpl;
import com.tradecloud.repository.export.ExportTarrifCodeRepository;
import org.apache.log4j.Logger;
import org.hibernate.Criteria;
import org.hibernate.criterion.Restrictions;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Isolation;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collection;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Set;
@Repository(value = "exportTarrifCodeRepository")
@Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.DEFAULT)
public class ExportTarrifCodeRepositoryImpl extends RepositoryBaseImpl<ExportTarrifCode, ExportTarrifCodeSearch> implements
ExportTarrifCodeRepository {
private static final long serialVersionUID = 1L;
private Logger log = Logger.getLogger(this.getClass().getName());
private static final String CODE = "code";
@Override
public List<ExportTarrifCode> search(ExportTarrifCodeSearch search) {
return searchByCriteria(search);
}
@Override
public long count(ExportTarrifCodeSearch search) {
return countByCriteria(search);
}
@Override
public ExportTarrifCode retrieveTarrifCode(String code) {
Criteria searchCriteria = getSession().createCriteria(ExportTarrifCode.class);
searchCriteria.add(Restrictions.eq(CODE, code));
return (ExportTarrifCode) searchCriteria.uniqueResult();
}
@Override
protected Collection<CriteriaValue> mapFieldsToValues(ExportTarrifCodeSearch search) {
Collection<CriteriaValue> fields = new LinkedHashSet<CriteriaValue>();
fields.add(new CriteriaValue(CriteriaOperation.EQUALS, CODE, search.getCode()));
return fields;
}
@Override
public List<ExportTarrifCode> retrieveByTarrifCodes(Set<String> set) {
Criteria searchCriteria = getSession().createCriteria(ExportTarrifCode.class);
searchCriteria.add(Restrictions.in(CODE, set));
return searchCriteria.list();
}
}