Map<String, Redirect> redirects = redirectable.getRedirects();
List<RedirectData> redirectsData = src.getRedirects();
if (redirectsData != null) {
for (RedirectData redirectData : redirectsData) {
Redirect redirect;
if (!redirects.containsKey(redirectData.getRedirectName())) {
redirect = redirectable.createRedirect();
redirectable.getRedirects().put(redirectData.getRedirectName(), redirect);
} else {
redirect = redirects.get(redirectData.getRedirectName());
}
redirect.setName(redirectData.getRedirectName());
redirect.setSite(redirectData.getRedirectSiteName());
redirect.setEnabled(redirectData.isEnabled());
if (redirectData.getConditions() != null) {
for (RedirectConditionData conditionData : redirectData.getConditions()) {
Condition condition = redirect.getConditions().get(conditionData.getRedirectName());
if (condition == null) {
condition = redirect.createCondition();
redirect.getConditions().put(conditionData.getRedirectName(), condition);
}
// condition.setName(conditionData.getRedirectName());
buildCondition(conditionData, condition);
}
}
if (redirectData.getMappings() != null) {
Mappings mappings = redirect.getMapping();
if (redirect.getMapping() == null) {
mappings = redirect.createMapping();
redirect.setMapping(mappings);
}
buildMappings(redirectData.getMappings(), mappings);
}
}
}