commit 57aa95a74439b1aeae62671c357719390660c6a7 Author: Cristiano Gavião <cvgav...@gmail.com> AuthorDate: Mon, 17 Mar 2014 21:25:28 -0300 Commit: Mauro Talevi <mauro.tal...@aquilonia.org> CommitDate: Sun, 13 Apr 2014 12:50:06 +0200
JBEHAVE-1002: Make AnnotationBuilder elements more extendable. diff --git a/jbehave-core/src/main/java/org/jbehave/core/configuration/AnnotationBuilder.java b/jbehave-core/src/main/java/org/jbehave/core/configuration/AnnotationBuilder.java index a553845..7844bd7 100755 --- a/jbehave-core/src/main/java/org/jbehave/core/configuration/AnnotationBuilder.java +++ b/jbehave-core/src/main/java/org/jbehave/core/configuration/AnnotationBuilder.java @@ -158,7 +158,7 @@ public class AnnotationBuilder { public Embedder buildEmbedder() { if (!finder.isAnnotationPresent(UsingEmbedder.class)) { - return new Embedder(); + return defaultEmbedder(); } boolean batch = control(finder, "batch"); @@ -197,11 +197,19 @@ public class AnnotationBuilder { } @SuppressWarnings("unchecked") - private Embedder embedder() { + protected Embedder embedder() { return instanceOf(Embedder.class, (Class<? extends Embedder>) finder.getAnnotatedValue(UsingEmbedder.class, Class.class, "embedder")); } + protected Embedder defaultEmbedder() { + return new Embedder(); + } + + public AnnotationFinder finder() { + return finder; + } + public List<String> findPaths() { if (!finder.isAnnotationPresent(UsingPaths.class)) { return new ArrayList<String>(); @@ -228,7 +236,7 @@ public class AnnotationBuilder { } @SuppressWarnings("unchecked") - private <T> Class<T> elementImplementation(AnnotationFinder finder, String name) { + protected <T> Class<T> elementImplementation(AnnotationFinder finder, String name) { return finder.getAnnotatedValue(Configure.class, Class.class, name); }