package com.linkedin.thirdeye.datalayer.bao.jdbc; import com.google.inject.Singleton; import com.linkedin.thirdeye.datalayer.bao.DatasetConfigManager; import com.linkedin.thirdeye.datalayer.dto.DatasetConfigDTO; import com.linkedin.thirdeye.datalayer.pojo.DatasetConfigBean; import com.linkedin.thirdeye.datalayer.util.Predicate; import java.util.List; import org.apache.commons.collections.CollectionUtils; @Singleton public class DatasetConfigManagerImpl extends AbstractManagerImpl<DatasetConfigDTO> implements DatasetConfigManager { public DatasetConfigManagerImpl() { super(DatasetConfigDTO.class, DatasetConfigBean.class); } @Override public DatasetConfigDTO findByDataset(String dataset) { Predicate predicate = Predicate.EQ("dataset", dataset); List<DatasetConfigBean> list = genericPojoDao.get(predicate, DatasetConfigBean.class); DatasetConfigDTO result = null; if (CollectionUtils.isNotEmpty(list)) { result = MODEL_MAPPER.map(list.get(0), DatasetConfigDTO.class); } return result; } @Override public List<DatasetConfigDTO> findActive() { Predicate activePredicate = Predicate.EQ("active", true); return findByPredicate(activePredicate); } @Override public List<DatasetConfigDTO> findActiveRequiresCompletenessCheck() { Predicate activePredicate = Predicate.EQ("active", true); Predicate completenessPredicate = Predicate.EQ("requiresCompletenessCheck", true); Predicate predicate = Predicate.AND(activePredicate, completenessPredicate); return findByPredicate(predicate); } }