package com.megatim.fdxconsultation.core.impl.helper;
|
|
import com.megatim.fdxcommons.model.pojo.DataInMemory;
|
import com.megatim.fdxcommons.tools.exceptions.ApplicationForbidenException;
|
import com.megatim.fdxconsultation.core.ifaces.helper.RoutingChecker;
|
import javax.enterprise.context.Dependent;
|
|
/**
|
*
|
* @author lenovo
|
*/
|
@Dependent
|
public class RoutingCheckerImpl implements RoutingChecker {
|
|
@Override
|
public void stopIfNotProducer(String codeTypeFichier, DataInMemory dataInMemory, String codeParticipant) {
|
if (!dataInMemory.getTypeFichierToParticipantsEnvoi().get(codeTypeFichier).contains(codeParticipant)) {
|
throw new ApplicationForbidenException("Impossible de continuer la requête car le participant " + codeParticipant + " n'est pas producteur du type de fichier " + codeTypeFichier);
|
}
|
}
|
|
@Override
|
public void stopIfNotConsumer(String codeTypeFichier, DataInMemory dataInMemory, String codeParticipant) {
|
if (!dataInMemory.getTypeFichierToParticipantsReception().get(codeTypeFichier).contains(codeParticipant)) {
|
throw new ApplicationForbidenException("Impossible de continuer la requête car le participant " + codeParticipant + " n'est pas consommateur du type de fichier " + codeTypeFichier);
|
}
|
}
|
|
}
|