Skip to content
Snippets Groups Projects
Commit acb80ff3 authored by Jonas Blatt's avatar Jonas Blatt :ant:
Browse files

Add more logging for verifier execution

parent 1e87e467
Branches
Tags
No related merge requests found
...@@ -28,10 +28,15 @@ import javax.inject.Inject; ...@@ -28,10 +28,15 @@ import javax.inject.Inject;
import org.apache.commons.lang3.Validate; import org.apache.commons.lang3.Validate;
import org.eclipse.microprofile.config.inject.ConfigProperty; import org.eclipse.microprofile.config.inject.ConfigProperty;
import org.reflections.Reflections; import org.reflections.Reflections;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ApplicationScoped @ApplicationScoped
public class DmnVerificationService { public class DmnVerificationService {
private static final Logger LOGGER =
LoggerFactory.getLogger(DmnVerificationService.class.getSimpleName());
@ConfigProperty(name = "verifier.threads", defaultValue = "2") @ConfigProperty(name = "verifier.threads", defaultValue = "2")
Integer maxThreads; Integer maxThreads;
...@@ -53,7 +58,8 @@ public class DmnVerificationService { ...@@ -53,7 +58,8 @@ public class DmnVerificationService {
private void initVerifier() { private void initVerifier() {
if (executor == null || verifierClasses == null) { if (executor == null || verifierClasses == null) {
System.out.println("Creating thread pool with " + maxThreads + " threads!"); // TODO remove LOGGER.info("Init verification.");
LOGGER.info("Creating thread pool with " + maxThreads + " threads.");
executor = Executors.newFixedThreadPool(maxThreads); executor = Executors.newFixedThreadPool(maxThreads);
Reflections reflections = new Reflections(packagePath); Reflections reflections = new Reflections(packagePath);
verifierClasses = reflections.getTypesAnnotatedWith(DmnVerifier.class); verifierClasses = reflections.getTypesAnnotatedWith(DmnVerifier.class);
...@@ -62,8 +68,11 @@ public class DmnVerificationService { ...@@ -62,8 +68,11 @@ public class DmnVerificationService {
Set<Class<?>> clVts = reflections.getTypesAnnotatedWith(Type.class); Set<Class<?>> clVts = reflections.getTypesAnnotatedWith(Type.class);
for (Class<?> clVt : clVts) { for (Class<?> clVt : clVts) {
try { try {
verificationTypes.add( VerificationType verificationType =
(VerificationType) clVt.getMethod("getInstance").invoke(null, null)); (VerificationType) clVt.getMethod("getInstance").invoke(null, null);
LOGGER.info("Verifier found: " + verificationType.getName() + " (" + verificationType
.getClassification().getName() + ")");
verificationTypes.add(verificationType);
} catch (IllegalAccessException | NoSuchMethodException | InvocationTargetException e) { } catch (IllegalAccessException | NoSuchMethodException | InvocationTargetException e) {
e.printStackTrace(); e.printStackTrace();
} }
...@@ -120,11 +129,11 @@ public class DmnVerificationService { ...@@ -120,11 +129,11 @@ public class DmnVerificationService {
.getValue() .getValue()
.equals(classificationName))) { .equals(classificationName))) {
// Create Configuration // Create Configuration
AbstractDmnVerifierConfig vConfig = AbstractDmnVerifierConfig verifierConfig =
configs.get(av.getClass().getAnnotation(DmnVerifier.class).verifierConfig()); configs.get(av.getClass().getAnnotation(DmnVerifier.class).verifierConfig());
// Add Configuration and start Calculation // Add Configuration and start Calculation
results.add(av.withConfiguration(vConfig).verify(executor)); results.add(av.withConfiguration(verifierConfig).verify(executor));
} }
} }
...@@ -132,9 +141,7 @@ public class DmnVerificationService { ...@@ -132,9 +141,7 @@ public class DmnVerificationService {
r -> { r -> {
try { try {
resultBuilder.addVerifierResult(r.get()); resultBuilder.addVerifierResult(r.get());
} catch (InterruptedException e) { } catch (InterruptedException | ExecutionException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace(); e.printStackTrace();
} }
}); });
...@@ -143,13 +150,13 @@ public class DmnVerificationService { ...@@ -143,13 +150,13 @@ public class DmnVerificationService {
} }
private Map<Class<? extends AbstractDmnVerifierConfig>, AbstractDmnVerifierConfig> getConfigs( private Map<Class<? extends AbstractDmnVerifierConfig>, AbstractDmnVerifierConfig> getConfigs(
String dmnXML) { String dmnXml) {
Map<Class<? extends AbstractDmnVerifierConfig>, AbstractDmnVerifierConfig> map = Map<Class<? extends AbstractDmnVerifierConfig>, AbstractDmnVerifierConfig> map =
new ConcurrentHashMap<>(); new ConcurrentHashMap<>();
map.put( map.put(
DefaultConfiguration.class, DefaultConfiguration.class,
DefaultConfiguration.getBuilder() DefaultConfiguration.getBuilder()
.withDmnObjectContainer(dmnService.getDmnServiceFromXml(dmnXML)) .withDmnObjectContainer(dmnService.getDmnServiceFromXml(dmnXml))
.build()); .build());
return map; return map;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment