ProductEventMetaDataRepositoryImpl.java
package com.tradecloud.repository.configuration.impl;
import com.tradecloud.domain.configuration.ProductEventsMetaData;
import com.tradecloud.repository.configuration.ProductEventMetaDataRepository;
import com.tradecloud.repository.impl.RepositoryBaseImplNoSearch;
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.List;
/**
* Default implementation of the {@code ProductEventMetaData} interface.
*/
@Repository(value = "productEventMetaDataRepository")
@Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.DEFAULT)
public class ProductEventMetaDataRepositoryImpl extends RepositoryBaseImplNoSearch<ProductEventsMetaData> implements ProductEventMetaDataRepository {
private static final long serialVersionUID = 1L;
@Override
public ProductEventsMetaData findByEventType(String eventType) {
Criteria searchCriteria = getSessionCustom().createCriteria(ProductEventsMetaData.class);
searchCriteria.add(Restrictions.eq("event", eventType));
return (ProductEventsMetaData) searchCriteria.uniqueResult();
}
@Override
public List<ProductEventsMetaData> findAllTypes() {
Criteria searchCriteria = getSessionCustom().createCriteria(ProductEventsMetaData.class);
return (List<ProductEventsMetaData>) searchCriteria.list();
}
}