package com.megatim.fdxconsultation.core.impl.integration; import com.megatim.fdxcommons.dao.ifaces.integration.ColumnDefinitionDAO; import com.megatim.fdxcommons.model.integration.ColumnDefinition; import com.megatim.fdxconsultation.core.ifaces.integration.ColumnDefinitionManager; import java.util.List; import java.util.Map; import java.util.Set; import java.util.function.Function; import java.util.stream.Collectors; import javax.ejb.EJB; import javax.enterprise.context.Dependent; import javax.persistence.Tuple; /** * * @author ASUS */ @Dependent public class ColumnDefinitionManagerImpl implements ColumnDefinitionManager { @EJB ColumnDefinitionDAO dao; @Override public ColumnDefinition findByNameAndReferentielAndTypeFichier(String columnName, String referentielVersion, String codeTypeFichier) { return getDao().findByNameAndReferentielAndTypeFichier(columnName, referentielVersion, codeTypeFichier); } @Override public List findByReferentiel(String referentielVersion) { return getDao().findByReferentiel(referentielVersion); } @Override public List findByReferentielAndTypeFichier(String referentielVersion, String codeTypeFichier) { return getDao().findByReferentielAndTypeFichier(referentielVersion, codeTypeFichier); } @Override public Set findTypeFichierByReferentiel(String referentielVersion) { return getDao().findTypeFichierByReferentiel(referentielVersion); } @Override public ColumnDefinitionDAO getDao() { return dao; } @Override public Map getColumnsDefimitionMap(String codeTypeFichier, String referentielVersion) { List columnsDef = findByReferentielAndTypeFichier(referentielVersion, codeTypeFichier); return columnsDef.stream().collect(Collectors.toMap(c -> c.getName(), Function.identity())); } @Override public List byRefVersionAndByTypeFichier() { return dao.byRefVersionAndByTypeFichier(); } }