(ServletDef src, ServletDef dest, boolean failOnConflict)
| 2538 | } |
| 2539 | |
| 2540 | private static boolean mergeServlet(ServletDef src, ServletDef dest, boolean failOnConflict) { |
| 2541 | // These tests should be unnecessary... |
| 2542 | if (dest.getServletClass() != null && dest.getJspFile() != null) { |
| 2543 | return false; |
| 2544 | } |
| 2545 | if (src.getServletClass() != null && src.getJspFile() != null) { |
| 2546 | return false; |
| 2547 | } |
| 2548 | |
| 2549 | |
| 2550 | if (dest.getServletClass() == null && dest.getJspFile() == null) { |
| 2551 | dest.setServletClass(src.getServletClass()); |
| 2552 | dest.setJspFile(src.getJspFile()); |
| 2553 | } else if (failOnConflict) { |
| 2554 | if (src.getServletClass() != null && |
| 2555 | (dest.getJspFile() != null || !src.getServletClass().equals(dest.getServletClass()))) { |
| 2556 | return false; |
| 2557 | } |
| 2558 | if (src.getJspFile() != null && |
| 2559 | (dest.getServletClass() != null || !src.getJspFile().equals(dest.getJspFile()))) { |
| 2560 | return false; |
| 2561 | } |
| 2562 | } |
| 2563 | |
| 2564 | // Additive |
| 2565 | for (SecurityRoleRef securityRoleRef : src.getSecurityRoleRefs()) { |
| 2566 | dest.addSecurityRoleRef(securityRoleRef); |
| 2567 | } |
| 2568 | |
| 2569 | if (dest.getLoadOnStartup() == null) { |
| 2570 | if (src.getLoadOnStartup() != null) { |
| 2571 | dest.setLoadOnStartup(src.getLoadOnStartup().toString()); |
| 2572 | } |
| 2573 | } else if (src.getLoadOnStartup() != null) { |
| 2574 | if (failOnConflict && !src.getLoadOnStartup().equals(dest.getLoadOnStartup())) { |
| 2575 | return false; |
| 2576 | } |
| 2577 | } |
| 2578 | |
| 2579 | if (dest.getEnabled() == null) { |
| 2580 | if (src.getEnabled() != null) { |
| 2581 | dest.setEnabled(src.getEnabled().toString()); |
| 2582 | } |
| 2583 | } else if (src.getEnabled() != null) { |
| 2584 | if (failOnConflict && !src.getEnabled().equals(dest.getEnabled())) { |
| 2585 | return false; |
| 2586 | } |
| 2587 | } |
| 2588 | |
| 2589 | for (Map.Entry<String,String> srcEntry : src.getParameterMap().entrySet()) { |
| 2590 | if (dest.getParameterMap().containsKey(srcEntry.getKey())) { |
| 2591 | if (failOnConflict && !dest.getParameterMap().get(srcEntry.getKey()).equals(srcEntry.getValue())) { |
| 2592 | return false; |
| 2593 | } |
| 2594 | } else { |
| 2595 | dest.addInitParameter(srcEntry.getKey(), srcEntry.getValue()); |
| 2596 | } |
| 2597 | } |
no test coverage detected