package com.linkedin.thirdeye.datalayer.bao.jdbc; import com.google.inject.Singleton; import com.linkedin.thirdeye.datalayer.bao.ClassificationConfigManager; import com.linkedin.thirdeye.datalayer.dto.ClassificationConfigDTO; import com.linkedin.thirdeye.datalayer.pojo.ClassificationConfigBean; import com.linkedin.thirdeye.datalayer.util.Predicate; import java.util.List; import org.apache.commons.collections.CollectionUtils; @Singleton public class ClassificationConfigManagerImpl extends AbstractManagerImpl<ClassificationConfigDTO> implements ClassificationConfigManager { protected ClassificationConfigManagerImpl() { super(ClassificationConfigDTO.class, ClassificationConfigBean.class); } @Override public List<ClassificationConfigDTO> findActives() { Predicate predicate = Predicate.EQ("active", true); return findByPredicate(predicate); } @Override public List<ClassificationConfigDTO> findActiveByFunctionId(long functionId) { Predicate predicate = Predicate.AND( Predicate.EQ("mainFunctionId", functionId), Predicate.EQ("active", true)); return findByPredicate(predicate); } @Override public ClassificationConfigDTO findByName(String name) { Predicate predicate = Predicate.EQ("name", name); List<ClassificationConfigDTO> results = findByPredicate(predicate); if (CollectionUtils.isNotEmpty(results)) { return results.get(0); } else { return null; } } }