/** * Validation * <p/> * Conflicting use of @RolesAllowed, @PermitAll, and @DenyAll * * @param method * @param ejbName * @param ejbModule * @param seen */ private void checkConflictingSecurityAnnotations(Method method, String ejbName, EjbModule ejbModule, List<Method> seen) { if (seen.contains(method)) return; seen.add(method); List<String> annotations = new ArrayList<String>(); for (Class<? extends Annotation> annotation : asList(RolesAllowed.class, PermitAll.class, DenyAll.class)) { if (method.getAnnotation(annotation) != null) { annotations.add("@" + annotation.getSimpleName()); } } if (annotations.size() > 1) { ejbModule.getValidation().fail(ejbName, "conflictingSecurityAnnotations", method.getName(), join(" and ", annotations), method.getDeclaringClass()); } }
public List<ValidationContext> getValidationContexts() { final List<ValidationContext> contexts = new ArrayList<ValidationContext>(); contexts.add(getValidation()); for (final EjbModule module : ejbModules) { contexts.add(module.getValidation()); } for (final ClientModule module : clientModules) { contexts.add(module.getValidation()); } for (final ConnectorModule module : connectorModules) { contexts.add(module.getValidation()); } for (final WebModule module : webModules) { contexts.add(module.getValidation()); } return contexts; }
public List<ValidationContext> getValidationContexts() { final List<ValidationContext> contexts = new ArrayList<ValidationContext>(); contexts.add(getValidation()); for (final EjbModule module : ejbModules) { contexts.add(module.getValidation()); } for (final ClientModule module : clientModules) { contexts.add(module.getValidation()); } for (final ConnectorModule module : connectorModules) { contexts.add(module.getValidation()); } for (final WebModule module : webModules) { contexts.add(module.getValidation()); } return contexts; }
public List<ValidationContext> getValidationContexts() { List<ValidationContext> contexts = new ArrayList<ValidationContext>(); contexts.add(getValidation()); for (EjbModule module : ejbModules) { contexts.add(module.getValidation()); } for (ClientModule module : clientModules) { contexts.add(module.getValidation()); } for (ConnectorModule module : connectorModules) { contexts.add(module.getValidation()); } for (WebModule module : webModules) { contexts.add(module.getValidation()); } return contexts; }
private <A extends Annotation> void checkAttributes(final AnnotationHandler<A> handler, final String ejbName, final EjbModule ejbModule, final AnnotationFinder annotationFinder, final String messageKey) { final Map<String, List<MethodAttribute>> existingDeclarations = handler.getExistingDeclarations(); int xml = 0; for (final List<MethodAttribute> methodAttributes : existingDeclarations.values()) { xml += methodAttributes.size(); } if (xml > 0) { ejbModule.getValidation().warn(ejbName, "xml." + messageKey, xml); } int ann = annotationFinder.findAnnotatedClasses(handler.getAnnotationClass()).size(); ann += annotationFinder.findAnnotatedMethods(handler.getAnnotationClass()).size(); if (ann > 0) { ejbModule.getValidation().warn(ejbName, "ann." + messageKey, ann); } }
private <A extends Annotation> void checkAttributes(final AnnotationHandler<A> handler, final String ejbName, final EjbModule ejbModule, final AnnotationFinder annotationFinder, final String messageKey) { final Map<String, List<MethodAttribute>> existingDeclarations = handler.getExistingDeclarations(); int xml = 0; for (final List<MethodAttribute> methodAttributes : existingDeclarations.values()) { xml += methodAttributes.size(); } if (xml > 0) { ejbModule.getValidation().warn(ejbName, "xml." + messageKey, xml); } int ann = annotationFinder.findAnnotatedClasses(handler.getAnnotationClass()).size(); ann += annotationFinder.findAnnotatedMethods(handler.getAnnotationClass()).size(); if (ann > 0) { ejbModule.getValidation().warn(ejbName, "ann." + messageKey, ann); } }
private <A extends Annotation> void checkAttributes(AnnotationHandler<A> handler, String ejbName, EjbModule ejbModule, ClassFinder classFinder, String messageKey) { Map<String, List<MethodAttribute>> existingDeclarations = handler.getExistingDeclarations(); int xml = 0; for (List<MethodAttribute> methodAttributes : existingDeclarations.values()) { xml += methodAttributes.size(); } if (xml > 0) { ejbModule.getValidation().warn(ejbName, "xml." + messageKey, xml); } int ann = classFinder.findAnnotatedClasses(handler.getAnnotationClass()).size(); ann += classFinder.findAnnotatedMethods(handler.getAnnotationClass()).size(); if (ann > 0) { ejbModule.getValidation().warn(ejbName, "ann." + messageKey, ann); } }
/** * Validation * <p/> * Conflicting use of @RolesAllowed, @PermitAll, and @DenyAll * * @param method * @param ejbName * @param ejbModule * @param seen */ private void checkConflictingSecurityAnnotations(final Annotated<Method> method, final String ejbName, final EjbModule ejbModule, final List<Method> seen) { if (seen.contains(method.get())) { return; } else { seen.add(method.get()); } final List<String> annotations = new ArrayList<String>(); for (final Class<? extends Annotation> annotation : Arrays.asList(RolesAllowed.class, PermitAll.class, DenyAll.class)) { if (method.getAnnotation(annotation) != null) { annotations.add("@" + annotation.getSimpleName()); } } if (annotations.size() > 1) { ejbModule.getValidation().fail(ejbName, "conflictingSecurityAnnotations", method.get().getName(), Join.join(" and ", annotations), method.get().getDeclaringClass()); } }
/** * Validation * <p/> * Conflicting use of @RolesAllowed, @PermitAll, and @DenyAll * * @param method * @param ejbName * @param ejbModule * @param seen */ private void checkConflictingSecurityAnnotations(final Annotated<Method> method, final String ejbName, final EjbModule ejbModule, final List<Method> seen) { if (seen.contains(method.get())) { return; } else { seen.add(method.get()); } final List<String> annotations = new ArrayList<String>(); for (final Class<? extends Annotation> annotation : asList(RolesAllowed.class, PermitAll.class, DenyAll.class)) { if (method.getAnnotation(annotation) != null) { annotations.add("@" + annotation.getSimpleName()); } } if (annotations.size() > 1) { ejbModule.getValidation().fail(ejbName, "conflictingSecurityAnnotations", method.get().getName(), Join.join(" and ", annotations), method.get().getDeclaringClass()); } }
public boolean hasWarnings() { if (validation.hasWarnings()) return true; for (EjbModule module : ejbModules) { if (module.getValidation().hasWarnings()) return true; } for (ClientModule module : clientModules) { if (module.getValidation().hasWarnings()) return true; } for (ConnectorModule module : connectorModules) { if (module.getValidation().hasWarnings()) return true; } for (WebModule module : webModules) { if (module.getValidation().hasWarnings()) return true; } return false; }
public boolean hasErrors() { if (validation.hasErrors()) return true; for (EjbModule module : ejbModules) { if (module.getValidation().hasErrors()) return true; } for (ClientModule module : clientModules) { if (module.getValidation().hasErrors()) return true; } for (ConnectorModule module : connectorModules) { if (module.getValidation().hasErrors()) return true; } for (WebModule module : webModules) { if (module.getValidation().hasErrors()) return true; } return false; }
public boolean hasFailures() { if (validation.hasFailures()) return true; for (EjbModule module : ejbModules) { if (module.getValidation().hasFailures()) return true; } for (ClientModule module : clientModules) { if (module.getValidation().hasFailures()) return true; } for (ConnectorModule module : connectorModules) { if (module.getValidation().hasFailures()) return true; } for (WebModule module : webModules) { if (module.getValidation().hasFailures()) return true; } return false; }
public boolean hasFailures() { if (validation.hasFailures()) { return true; } for (final EjbModule module : ejbModules) { if (module.getValidation().hasFailures()) { return true; } } for (final ClientModule module : clientModules) { if (module.getValidation().hasFailures()) { return true; } } for (final ConnectorModule module : connectorModules) { if (module.getValidation().hasFailures()) { return true; } } for (final WebModule module : webModules) { if (module.getValidation().hasFailures()) { return true; } } return false; }
public boolean hasErrors() { if (validation.hasErrors()) { return true; } for (final EjbModule module : ejbModules) { if (module.getValidation().hasErrors()) { return true; } } for (final ClientModule module : clientModules) { if (module.getValidation().hasErrors()) { return true; } } for (final ConnectorModule module : connectorModules) { if (module.getValidation().hasErrors()) { return true; } } for (final WebModule module : webModules) { if (module.getValidation().hasErrors()) { return true; } } return false; }
public boolean hasWarnings() { if (validation.hasWarnings()) { return true; } for (final EjbModule module : ejbModules) { if (module.getValidation().hasWarnings()) { return true; } } for (final ClientModule module : clientModules) { if (module.getValidation().hasWarnings()) { return true; } } for (final ConnectorModule module : connectorModules) { if (module.getValidation().hasWarnings()) { return true; } } for (final WebModule module : webModules) { if (module.getValidation().hasWarnings()) { return true; } } return false; }
public boolean hasWarnings() { if (validation.hasWarnings()) { return true; } for (final EjbModule module : ejbModules) { if (module.getValidation().hasWarnings()) { return true; } } for (final ClientModule module : clientModules) { if (module.getValidation().hasWarnings()) { return true; } } for (final ConnectorModule module : connectorModules) { if (module.getValidation().hasWarnings()) { return true; } } for (final WebModule module : webModules) { if (module.getValidation().hasWarnings()) { return true; } } return false; }
public boolean hasErrors() { if (validation.hasErrors()) { return true; } for (final EjbModule module : ejbModules) { if (module.getValidation().hasErrors()) { return true; } } for (final ClientModule module : clientModules) { if (module.getValidation().hasErrors()) { return true; } } for (final ConnectorModule module : connectorModules) { if (module.getValidation().hasErrors()) { return true; } } for (final WebModule module : webModules) { if (module.getValidation().hasErrors()) { return true; } } return false; }
public boolean hasFailures() { if (validation.hasFailures()) { return true; } for (final EjbModule module : ejbModules) { if (module.getValidation().hasFailures()) { return true; } } for (final ClientModule module : clientModules) { if (module.getValidation().hasFailures()) { return true; } } for (final ConnectorModule module : connectorModules) { if (module.getValidation().hasFailures()) { return true; } } for (final WebModule module : webModules) { if (module.getValidation().hasFailures()) { return true; } } return false; }
public AppModule deploy(final AppModule appModule) throws OpenEJBException { boolean output = SystemInstance.get().getOptions().get(OUTPUT_DESCRIPTORS, false); if (output && appModule.getCmpMappings() != null) { writeGenratedCmpMappings(appModule); } for (final EjbModule ejbModule : appModule.getEjbModules()) { final Options options = new Options(ejbModule.getOpenejbJar().getProperties(), SystemInstance.get().getOptions()); final ValidationContext context = ejbModule.getValidation(); // output descriptors by default if there are validation errors final boolean invalid = context.hasErrors() || context.hasFailures(); output = options.get(OUTPUT_DESCRIPTORS, invalid); if (output) { if (ejbModule.getEjbJar() != null) { writeEjbJar(ejbModule); } if (ejbModule.getOpenejbJar() != null) { writeOpenejbJar(ejbModule); } writeGeronimoOpenejb(ejbModule); } } for (final ConnectorModule connectorModule : appModule.getConnectorModules()) { writeRaXml(connectorModule); } return appModule; }
public AppModule deploy(final AppModule appModule) throws OpenEJBException { boolean output = SystemInstance.get().getOptions().get(OUTPUT_DESCRIPTORS, false); if (output && appModule.getCmpMappings() != null) { writeGenratedCmpMappings(appModule); } for (final EjbModule ejbModule : appModule.getEjbModules()) { final Options options = new Options(ejbModule.getOpenejbJar().getProperties(), SystemInstance.get().getOptions()); final ValidationContext context = ejbModule.getValidation(); // output descriptors by default if there are validation errors final boolean invalid = context.hasErrors() || context.hasFailures(); output = options.get(OUTPUT_DESCRIPTORS, invalid); if (output) { if (ejbModule.getEjbJar() != null) { writeEjbJar(ejbModule); } if (ejbModule.getOpenejbJar() != null) { writeOpenejbJar(ejbModule); } writeGeronimoOpenejb(ejbModule); } } for (final ConnectorModule connectorModule : appModule.getConnectorModules()) { writeRaXml(connectorModule); } return appModule; }