@CrossOriginResourceSharing(allowOrigins = { "http://area51.mil:31415" }, allowCredentials = true, maxAge = 1, allowHeaders = { "X-custom-1", "X-custom-2" }, exposeHeaders = { "X-custom-3", "X-custom-4" } ) public interface CorsSecuredBase { }
private boolean effectiveAllowAllOrigins(CrossOriginResourceSharing ann) { if (ann != null) { return ann.allowAllOrigins(); } return allowOrigins.isEmpty(); }
private boolean effectiveAllowCredentials(CrossOriginResourceSharing ann) { if (ann != null) { return ann.allowCredentials(); } return allowCredentials; }
private boolean effectiveAllowAnyHeaders(CrossOriginResourceSharing ann) { if (ann != null) { return ann.allowHeaders().length == 0; } return allowHeaders.isEmpty(); }
private Integer effectiveMaxAge(CrossOriginResourceSharing ann) { if (ann != null) { int ma = ann.maxAge(); if (ma < 0) { return null; } return Integer.valueOf(ma); } return maxAge; }
private List<String> effectiveExposeHeaders(CrossOriginResourceSharing ann) { List<String> actualExposeHeaders = null; if (ann != null) { actualExposeHeaders = Arrays.asList(ann.exposeHeaders()); } else { actualExposeHeaders = exposeHeaders; } return actualExposeHeaders; }
private boolean effectiveAllowOrigins(CrossOriginResourceSharing ann, List<String> origins) { if (effectiveAllowAllOrigins(ann)) { return true; } List<String> actualOrigins = Collections.emptyList(); if (ann != null) { actualOrigins = Arrays.asList(ann.allowOrigins()); } if (actualOrigins.isEmpty()) { actualOrigins = allowOrigins; } return actualOrigins.containsAll(origins); }
private boolean effectiveAllowAnyHeaders(CrossOriginResourceSharing ann) { if (ann != null) { return ann.allowHeaders().length == 0; } else { return allowHeaders.isEmpty(); } }
private Integer effectiveMaxAge(CrossOriginResourceSharing ann) { if (ann != null) { int ma = ann.maxAge(); if (ma < 0) { return null; } else { return Integer.valueOf(ma); } } else { return maxAge; } }
private List<String> effectiveExposeHeaders(CrossOriginResourceSharing ann) { List<String> actualExposeHeaders = null; if (ann != null) { actualExposeHeaders = Arrays.asList(ann.exposeHeaders()); } else { actualExposeHeaders = exposeHeaders; } return actualExposeHeaders; }
private boolean effectiveAllowOrigins(CrossOriginResourceSharing ann, List<String> origins) { if (effectiveAllowAllOrigins(ann)) { return true; } List<String> actualOrigins = Collections.emptyList(); if (ann != null) { actualOrigins = Arrays.asList(ann.allowOrigins()); } if (actualOrigins.isEmpty()) { actualOrigins = allowOrigins; } return actualOrigins.containsAll(origins); }
@WebService @Produces(MediaType.APPLICATION_JSON + ";charset=UTF-8") @CrossOriginResourceSharing( allowAllOrigins = true, allowCredentials = true ) public class MailChimpEndPoint { private MailChimpService mailChimpService; public MailChimpEndPoint() { System.out.println("Initializing MailChimpEndPoint service endpoint..."); } /** * This function return the available MailChimp lists ID and Name * * @return The Lists of MailChimp List */ @GET @Path("/") public List<HashMap<String, String>> getAllLists() { return mailChimpService.getAllLists(); } @WebMethod(exclude = true) public void setMailChimpService(MailChimpService mailChimpService) { this.mailChimpService = mailChimpService; } }
private boolean effectiveAllowAnyHeaders(CrossOriginResourceSharing ann) { if (ann != null) { return ann.allowHeaders().length == 0; } return allowHeaders.isEmpty(); }
private Integer effectiveMaxAge(CrossOriginResourceSharing ann) { if (ann != null) { int ma = ann.maxAge(); if (ma < 0) { return null; } return Integer.valueOf(ma); } return maxAge; }
private boolean effectiveAllowCredentials(CrossOriginResourceSharing ann) { if (ann != null) { return ann.allowCredentials(); } return allowCredentials; }
private boolean effectiveAllowAllOrigins(CrossOriginResourceSharing ann) { if (ann != null) { return ann.allowAllOrigins(); } return allowOrigins.isEmpty(); }
private List<String> effectiveExposeHeaders(CrossOriginResourceSharing ann) { List<String> actualExposeHeaders = null; if (ann != null) { actualExposeHeaders = Arrays.asList(ann.exposeHeaders()); } else { actualExposeHeaders = exposeHeaders; } return actualExposeHeaders; }
private boolean effectiveAllowOrigins(CrossOriginResourceSharing ann, List<String> origins) { if (effectiveAllowAllOrigins(ann)) { return true; } List<String> actualOrigins = Collections.emptyList(); if (ann != null) { actualOrigins = Arrays.asList(ann.allowOrigins()); } if (actualOrigins.isEmpty()) { actualOrigins = allowOrigins; } return actualOrigins.containsAll(origins); }
@CrossOriginResourceSharing( allowAllOrigins = true, allowCredentials = true
private boolean effectiveAllowHeaders(CrossOriginResourceSharing ann, List<String> aHeaders) { if (effectiveAllowAnyHeaders(ann)) { return true; } List<String> actualHeaders = null; if (ann != null) { actualHeaders = Arrays.asList(ann.allowHeaders()); } else { actualHeaders = allowHeaders; } Set<String> actualHeadersSet = new TreeSet<>(String.CASE_INSENSITIVE_ORDER); actualHeadersSet.addAll(actualHeaders); return actualHeadersSet.containsAll(aHeaders); }