for (WebInitParam webInitParam : webFilter.initParams()) {
String paramName = webInitParam.name();
if (FilterInitParamMergeHandler.isFilterInitParamConfigured(filterName, paramName, mergeContext)) {
continue;
}
ParamValueType newParamValue = targetFilter.addNewInitParam();
newParamValue.addNewDescription().setStringValue(webInitParam.description());
newParamValue.addNewParamName().setStringValue(webInitParam.name());
newParamValue.addNewParamValue().setStringValue(webInitParam.value());
FilterInitParamMergeHandler.addFilterInitParam(filterName, newParamValue, ElementSource.ANNOTATION, mergeContext.getCurrentJarUrl(), mergeContext);
}
} else {
//Create filter element
FilterType newFilter = webApp.addNewFilter();
newFilter.addNewFilterName().setStringValue(filterName);
newFilter.addNewAsyncSupported().setBooleanValue(webFilter.asyncSupported());
if (!webFilter.description().isEmpty()) {
newFilter.addNewDescription().setStringValue(webFilter.description());
}
if (!webFilter.displayName().isEmpty()) {
newFilter.addNewDisplayName().setStringValue(webFilter.displayName());
}
newFilter.addNewFilterClass().setStringValue(cls.getName());
for (WebInitParam webInitParam : webFilter.initParams()) {
ParamValueType paramValue = newFilter.addNewInitParam();
paramValue.addNewDescription().setStringValue(webInitParam.description());
paramValue.addNewParamName().setStringValue(webInitParam.name());
paramValue.addNewParamValue().setStringValue(webInitParam.value());
}
if (!webFilter.smallIcon().isEmpty() || !webFilter.largeIcon().isEmpty()) {
IconType iconType = newFilter.addNewIcon();
if (!webFilter.smallIcon().isEmpty()) {
iconType.addNewSmallIcon().setStringValue(webFilter.smallIcon());