package org.tanaguru.kafka.util; import java.util.List; import java.util.Map; import java.util.Set; import org.apache.log4j.Logger; import org.tanaguru.entity.parameterization.Parameter; import org.tanaguru.entity.service.parameterization.ParameterDataService; import org.tanaguru.entity.parameterization.ParameterElement; import org.tanaguru.entity.service.parameterization.ParameterElementDataService; /** * * @author omokeddem at oceaneconsulting * */ public class ParameterUtils { /** * Class logger definition */ private static final Logger LOGGER = Logger.getLogger(ParameterUtils.class); public static Map<String, List<Parameter>> parametersMap = null; private static final String PAGE_AUDIT = "Page"; private static final String SCENARIO_AUDIT = "Scenario"; private static final String FILE_AUDIT = "File"; private static final String SITE_AUDIT = "File"; private static final String AW22_REF = "Aw22"; private static final String RGAA22_REF = "Rgaa22"; private static final String RGAA30_REF = "Rgaa30"; private static final String RGAA32016_REF = "Rgaa32016"; private static String REF = AW22_REF; private static final String BRONZE_LEVEL = "Bz"; private static final String A_LEVEL = "A"; private static final String SILVER_LEVEL = "Ar"; private static final String AA_LEVEL = "AA"; private static final String GOLD_LEVEL = "Or"; private static final String AAA_LEVEL = "AAA"; private static final String LEVEL_1 = "LEVEL_1"; private static final String LEVEL_2 = "LEVEL_2"; private static final String LEVEL_3 = "LEVEL_3"; private static final int DEFAULT_XMS_VALUE = 64; private static String LEVEL = SILVER_LEVEL; private static final String LEVEL_PARAMETER_ELEMENT_CODE = "LEVEL"; private static String AUDIT_TYPE = PAGE_AUDIT; /* * **********************TANGURU SERVICE PARAMETERS */ public static final String DATA_TABLE_MARKER = "DATA_TABLE_MARKER"; public static final String COMPLEX_TABLE_MARKER = "COMPLEX_TABLE_MARKER"; public static final String PROXY_HOST = "PROXY_HOST"; public static final String CONSIDER_COOKIES = "CONSIDER_COOKIES"; public static final String ALTERNATIVE_CONTRAST_MECHANISM = "ALTERNATIVE_CONTRAST_MECHANISM"; public static final String INFORMATIVE_IMAGE_MARKER = "INFORMATIVE_IMAGE_MARKER"; public static final String PROXY_PORT = "PROXY_PORT"; public static final String DECORATIVE_IMAGE_MARKER = "DECORATIVE_IMAGE_MARKER"; public static final String MAX_DOCUMENTS = "MAX_DOCUMENTS"; public static final String MAX_DURATION = "MAX_DURATION"; public static final String EXCLUSION_REGEXP = "EXCLUSION_REGEXP"; public static final String DEPTH = "DEPTH"; public static final String PRESENTATION_TABLE_MARKER = "PRESENTATION_TABLE_MARKER"; public static final String SCREEN_WIDTH = "SCREEN_WIDTH"; public static final String SCREEN_HEIGHT = "SCREEN_HEIGHT"; /* * **********************OTHER SERVICE PARAMETERS */ public static final String AUDIT_LEVEL = "level"; public static final String PAGE_URL = "pageUrl"; public static final String PAGE_URLS = "pageUrls"; public static final String SCENARIO_NAME = "scenarioName"; public static final String SCENARIO = "scenario"; public static final String DATA_TABLE_MARKER_PARAM = "tblMarker"; public static final String PRESENTATION_TABLE_MARKER_PARAM = "prTblMarker"; public static final String DECORATIVE_IMAGE_MARKER_PARAM = "dcrImgMarker"; public static final String INFORMATIVE_IMAGE_MARKER_PARAM = "infImgMarker"; /** * * @param auditLevel * @return */ public static Set<Parameter> getParameterSetFromAuditLevel(String ref, String level, ParameterElementDataService parameterElementDataService, ParameterDataService parameterDataService) { if (ref.equalsIgnoreCase(RGAA22_REF) || ref.equalsIgnoreCase(RGAA30_REF)) { if (level.equalsIgnoreCase(BRONZE_LEVEL)) { level = A_LEVEL; } else if (level.equalsIgnoreCase(SILVER_LEVEL)) { level = AA_LEVEL; } else if (level.equalsIgnoreCase(GOLD_LEVEL)) { level = AAA_LEVEL; } } if (level.equalsIgnoreCase(BRONZE_LEVEL) || level.equalsIgnoreCase(A_LEVEL)) { level = LEVEL_1; } else if (level.equalsIgnoreCase(SILVER_LEVEL) || level.equalsIgnoreCase(AA_LEVEL)) { level = LEVEL_2; } else if (level.equalsIgnoreCase(GOLD_LEVEL) || level.equalsIgnoreCase(AAA_LEVEL)) { level = LEVEL_3; } ParameterElement levelParameterElement = parameterElementDataService.getParameterElement(LEVEL_PARAMETER_ELEMENT_CODE); Parameter levelParameter = parameterDataService.getParameter(levelParameterElement, ref + ";" + level); Set<Parameter> paramSet = parameterDataService.getDefaultParameterSet(); return parameterDataService.updateParameter(paramSet, levelParameter); } public static Set<Parameter> getAuditPageParameterSet(Set<Parameter> defaultParameterSet, ParameterElementDataService parameterElementDataService, ParameterDataService parameterDataService) { ParameterElement parameterElement = parameterElementDataService.getParameterElement("DEPTH"); Parameter depthParameter = parameterDataService.getParameter(parameterElement, "0"); Set<Parameter> auditPageParamSet = parameterDataService.updateParameter( defaultParameterSet, depthParameter); return auditPageParamSet; } public static void initializePAInputOptions(String tblMarker, String cplxTblMarker, String prTblMarker, String dcrImgMarker, String infImgMarker, String screenWidth, String screenHeight, Set<Parameter> parameters) { for (Parameter parameter : parameters) { if (parameter != null && parameter.getParameterElement() != null && parameter.getParameterElement().getParameterElementCode() != null) { if (tblMarker != null) { if (DATA_TABLE_MARKER.equals(parameter.getParameterElement().getParameterElementCode())) { parameter.setValue(tblMarker); } } if (cplxTblMarker != null) { if (COMPLEX_TABLE_MARKER.equals(parameter.getParameterElement().getParameterElementCode())) { parameter.setValue(cplxTblMarker); } } if (prTblMarker != null) { if (PRESENTATION_TABLE_MARKER.equals(parameter.getParameterElement().getParameterElementCode())) { parameter.setValue(prTblMarker); } } if (dcrImgMarker != null) { if (DECORATIVE_IMAGE_MARKER.equals(parameter.getParameterElement().getParameterElementCode())) { parameter.setValue(dcrImgMarker); } } if (infImgMarker != null) { if (INFORMATIVE_IMAGE_MARKER.equals(parameter.getParameterElement().getParameterElementCode())) { parameter.setValue(infImgMarker); } } if (screenWidth != null){ if(SCREEN_WIDTH.equals(parameter.getParameterElement().getParameterElementCode())){ parameter.setValue(screenWidth); } } if (screenHeight != null){ if(SCREEN_HEIGHT.equals(parameter.getParameterElement().getParameterElementCode())){ parameter.setValue(screenHeight); } } } } } }