Commit ef753e73cf6250c42dee4c9ff8df0195a24702b5

Authored by Emerson Oliveira
1 parent 179020f4
Exists in master

Refatoração dos métodos getClass e getInstance para selectClass e

selectInstance. Modificação da exceção lançada pela classe
StrategySelector, DemoiselleException no lugar de
ConfigurationException.
impl/core/src/main/java/br/gov/frameworkdemoiselle/internal/implementation/SecurityContextImpl.java
@@ -78,7 +78,7 @@ public class SecurityContextImpl implements SecurityContext { @@ -78,7 +78,7 @@ public class SecurityContextImpl implements SecurityContext {
78 Class<? extends Authenticator> clazz = getConfig().getAuthenticatorClass(); 78 Class<? extends Authenticator> clazz = getConfig().getAuthenticatorClass();
79 79
80 if (clazz == null) { 80 if (clazz == null) {
81 - clazz = StrategySelector.getClass(Authenticator.class, bootstrap.getCache()); 81 + clazz = StrategySelector.selectClass(Authenticator.class, bootstrap.getCache());
82 } 82 }
83 83
84 this.authenticator = Beans.getReference(clazz); 84 this.authenticator = Beans.getReference(clazz);
@@ -93,7 +93,7 @@ public class SecurityContextImpl implements SecurityContext { @@ -93,7 +93,7 @@ public class SecurityContextImpl implements SecurityContext {
93 Class<? extends Authorizer> clazz = getConfig().getAuthorizerClass(); 93 Class<? extends Authorizer> clazz = getConfig().getAuthorizerClass();
94 94
95 if (clazz == null) { 95 if (clazz == null) {
96 - clazz = StrategySelector.getClass(Authorizer.class, bootstrap.getCache()); 96 + clazz = StrategySelector.selectClass(Authorizer.class, bootstrap.getCache());
97 } 97 }
98 98
99 this.authorizer = Beans.getReference(clazz); 99 this.authorizer = Beans.getReference(clazz);
impl/core/src/main/java/br/gov/frameworkdemoiselle/internal/implementation/StrategySelector.java
@@ -45,8 +45,10 @@ import java.util.HashMap; @@ -45,8 +45,10 @@ import java.util.HashMap;
45 import java.util.List; 45 import java.util.List;
46 import java.util.Map; 46 import java.util.Map;
47 47
  48 +import javax.enterprise.inject.AmbiguousResolutionException;
  49 +
  50 +import br.gov.frameworkdemoiselle.DemoiselleException;
48 import br.gov.frameworkdemoiselle.annotation.Priority; 51 import br.gov.frameworkdemoiselle.annotation.Priority;
49 -import br.gov.frameworkdemoiselle.configuration.ConfigurationException;  
50 import br.gov.frameworkdemoiselle.internal.producer.ResourceBundleProducer; 52 import br.gov.frameworkdemoiselle.internal.producer.ResourceBundleProducer;
51 import br.gov.frameworkdemoiselle.util.ResourceBundle; 53 import br.gov.frameworkdemoiselle.util.ResourceBundle;
52 54
@@ -76,7 +78,7 @@ public final class StrategySelector implements Serializable { @@ -76,7 +78,7 @@ public final class StrategySelector implements Serializable {
76 } 78 }
77 79
78 @SuppressWarnings("unchecked") 80 @SuppressWarnings("unchecked")
79 - public static <T> T getInstance(Class<T> type, Collection<? extends T> options) throws ConfigurationException { 81 + public static <T> T selectInstance(Class<T> type, Collection<? extends T> options) {
80 82
81 Map<Class<? extends T>, T> map = new HashMap<Class<? extends T>, T>(); 83 Map<Class<? extends T>, T> map = new HashMap<Class<? extends T>, T>();
82 84
@@ -86,12 +88,11 @@ public final class StrategySelector implements Serializable { @@ -86,12 +88,11 @@ public final class StrategySelector implements Serializable {
86 } 88 }
87 } 89 }
88 90
89 - Class<? extends T> elected = getClass(type, map.keySet()); 91 + Class<? extends T> elected = selectClass(type, map.keySet());
90 return map.get(elected); 92 return map.get(elected);
91 } 93 }
92 94
93 - public static <T> Class<? extends T> getClass(Class<T> type, Collection<Class<? extends T>> options)  
94 - throws ConfigurationException { 95 + public static <T> Class<? extends T> selectClass(Class<T> type, Collection<Class<? extends T>> options) {
95 Class<? extends T> selected = null; 96 Class<? extends T> selected = null;
96 97
97 for (Class<? extends T> option : options) { 98 for (Class<? extends T> option : options) {
@@ -108,7 +109,7 @@ public final class StrategySelector implements Serializable { @@ -108,7 +109,7 @@ public final class StrategySelector implements Serializable {
108 } 109 }
109 110
110 private static <T> void checkForAmbiguity(Class<T> type, Class<? extends T> selected, 111 private static <T> void checkForAmbiguity(Class<T> type, Class<? extends T> selected,
111 - Collection<Class<? extends T>> options) throws ConfigurationException { 112 + Collection<Class<? extends T>> options) {
112 int selectedPriority = getPriority(selected); 113 int selectedPriority = getPriority(selected);
113 114
114 List<Class<? extends T>> ambiguous = new ArrayList<Class<? extends T>>(); 115 List<Class<? extends T>> ambiguous = new ArrayList<Class<? extends T>>();
@@ -123,7 +124,7 @@ public final class StrategySelector implements Serializable { @@ -123,7 +124,7 @@ public final class StrategySelector implements Serializable {
123 ambiguous.add(selected); 124 ambiguous.add(selected);
124 125
125 String message = getExceptionMessage(type, ambiguous); 126 String message = getExceptionMessage(type, ambiguous);
126 - throw new ConfigurationException(message); 127 + throw new DemoiselleException(message, new AmbiguousResolutionException());
127 } 128 }
128 } 129 }
129 130
impl/core/src/main/java/br/gov/frameworkdemoiselle/internal/implementation/TransactionContextImpl.java
@@ -62,7 +62,7 @@ public class TransactionContextImpl implements TransactionContext { @@ -62,7 +62,7 @@ public class TransactionContextImpl implements TransactionContext {
62 Class<? extends Transaction> clazz = getConfig().getTransactionClass(); 62 Class<? extends Transaction> clazz = getConfig().getTransactionClass();
63 63
64 if (clazz == null) { 64 if (clazz == null) {
65 - clazz = StrategySelector.getClass(Transaction.class, bootstrap.getCache()); 65 + clazz = StrategySelector.selectClass(Transaction.class, bootstrap.getCache());
66 } 66 }
67 67
68 this.transaction = Beans.getReference(clazz); 68 this.transaction = Beans.getReference(clazz);