OrganisationalUnitTierRepositoryImpl.java
package com.tradecloud.repository.impl;
import com.tradecloud.domain.base.utils.ObjectUtil;
import com.tradecloud.domain.model.organisationalunit.OrganisationalUnitTier;
import com.tradecloud.repository.OrganisationalUnitTierRepository;
import com.tradecloud.repository.base.impl.RepositoryBaseImpl;
import org.apache.log4j.Logger;
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.List;
/**
* Repository Implementation for Organisational Unit.
*
* This is the only class in the system that should be calling Hibernate with an
* Organisational Unit Tier
*/
@Repository
@Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.DEFAULT)
public class OrganisationalUnitTierRepositoryImpl extends RepositoryBaseImpl<OrganisationalUnitTier, Object> implements
OrganisationalUnitTierRepository {
private static final long serialVersionUID = 1L;
private static final Logger log = Logger.getLogger(OrganisationalUnitTierRepositoryImpl.class);
@Override
public OrganisationalUnitTier findByName(String name) {
log.debug("Name=" + name);
@SuppressWarnings("unchecked")
List<OrganisationalUnitTier> list = (List<OrganisationalUnitTier>) findByNamedQueryAndNamedParam("orgUnitTier.byName", "name", name);
return ObjectUtil.first(list);
}
@Override
public OrganisationalUnitTier findByCode(String code) {
log.debug("Code=" + code);
@SuppressWarnings("unchecked")
List<OrganisationalUnitTier> list = (List<OrganisationalUnitTier>) findByNamedQueryAndNamedParam("orgUnitTier.byCode", "code", code);
return ObjectUtil.first(list);
}
/**
* Deletes 'em all!
*/
@Override
public void deleteAll() {
log.debug("In delete all");
List<OrganisationalUnitTier> orgUnitTiers = findAll();
log.debug("Found " + orgUnitTiers.size() + " org unit tiers");
deleteAll(orgUnitTiers);
}
@Override
public void delete(String orgUnitName) {
OrganisationalUnitTier orgUnitTier = findByName(orgUnitName);
delete(orgUnitTier);
}
@Override
public OrganisationalUnitTier findByLevel(Integer level_) {
log.debug("level_=" + level_);
@SuppressWarnings("unchecked")
List<OrganisationalUnitTier> list = (List<OrganisationalUnitTier>) findByNamedQueryAndNamedParam("orgUnitTier.byLevel", "level", level_);
return ObjectUtil.first(list);
}
}