package at.asitplus.eidas.specific.modules.authmodule_eIDASv2.handler;
import java.util.Map;
import at.asitplus.eidas.specific.modules.authmodule_eIDASv2.DAO.ERnBeIDData;
import at.asitplus.eidas.specific.modules.authmodule_eIDASv2.exception.eIDASAttributeException;
import at.asitplus.eidas.specific.modules.authmodule_eIDASv2.exception.eIDPostProcessingException;
public interface INationaleIDPostProcessor {
/**
* Get a friendlyName of this post-processor implementation
*
* @return
*/
public String getName();
/**
* Get the priority of this eID Post-Processor
*
* If more than one Post-Processor implementations can handle the eID data, the post-processor with the highest priority are selected.
* The Default-Processor has priority '0'
*
* @return Priority of this handler
*/
public int getPriority();
/**
* Check if this postProcessor is sensitive for a specific country
*
* @param countryCode of the eID data that should be processed
* @return true if this implementation can handle the country, otherwise false
*
*/
public boolean canHandle(String countryCode);
/**
* Post-Process eIDAS eID data into national format
* @param eIDASAttrMap Map of eIDAS attributes in format friendlyName and attribute
* @throws eIDPostProcessingException
* @throws eIDASAttributeException
*
*/
public ERnBeIDData postProcess(Map eIDASAttrMap) throws eIDPostProcessingException, eIDASAttributeException;
}