Commit 33801f670b87ea06a6f0b37ab13fc3736130b4ee

Authored by Cleverson Sacramento
1 parent 4f73e196
Exists in master

Limpando a casa...

impl/core/src/main/java/br/gov/frameworkdemoiselle/internal/processor/AbstractProcessor.java
@@ -1,113 +0,0 @@ @@ -1,113 +0,0 @@
1 -/*  
2 - * Demoiselle Framework  
3 - * Copyright (C) 2010 SERPRO  
4 - * ----------------------------------------------------------------------------  
5 - * This file is part of Demoiselle Framework.  
6 - *  
7 - * Demoiselle Framework is free software; you can redistribute it and/or  
8 - * modify it under the terms of the GNU Lesser General Public License version 3  
9 - * as published by the Free Software Foundation.  
10 - *  
11 - * This program is distributed in the hope that it will be useful,  
12 - * but WITHOUT ANY WARRANTY; without even the implied warranty of  
13 - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the  
14 - * GNU General Public License for more details.  
15 - *  
16 - * You should have received a copy of the GNU Lesser General Public License version 3  
17 - * along with this program; if not, see <http://www.gnu.org/licenses/>  
18 - * or write to the Free Software Foundation, Inc., 51 Franklin Street,  
19 - * Fifth Floor, Boston, MA 02110-1301, USA.  
20 - * ----------------------------------------------------------------------------  
21 - * Este arquivo é parte do Framework Demoiselle.  
22 - *  
23 - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou  
24 - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação  
25 - * do Software Livre (FSF).  
26 - *  
27 - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA  
28 - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou  
29 - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português  
30 - * para maiores detalhes.  
31 - *  
32 - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título  
33 - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/>  
34 - * ou escreva para a Fundação do Software Livre (FSF) Inc.,  
35 - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA.  
36 - */  
37 -package br.gov.frameworkdemoiselle.internal.processor;  
38 -  
39 -import java.util.Locale;  
40 -  
41 -import javax.enterprise.inject.spi.AnnotatedCallable;  
42 -import javax.enterprise.inject.spi.BeanManager;  
43 -  
44 -import org.slf4j.Logger;  
45 -  
46 -import br.gov.frameworkdemoiselle.internal.producer.LoggerProducer;  
47 -import br.gov.frameworkdemoiselle.internal.producer.ResourceBundleProducer;  
48 -import br.gov.frameworkdemoiselle.util.Beans;  
49 -import br.gov.frameworkdemoiselle.util.ResourceBundle;  
50 -  
51 -/**  
52 - * It abstract the integration between Processor and the context;  
53 - *  
54 - * @param <T>  
55 - * the declaring class  
56 - */  
57 -public abstract class AbstractProcessor<T> implements Processor {  
58 -  
59 - private BeanManager beanManager;  
60 -  
61 - private AnnotatedCallable<T> annotatedCallable;  
62 -  
63 - private ResourceBundle bundle;  
64 -  
65 - protected static final String BUNDLE_BASE_NAME = "demoiselle-core-bundle";  
66 -  
67 - public AbstractProcessor(final BeanManager beanManager) {  
68 - this.beanManager = beanManager;  
69 - }  
70 -  
71 - public AbstractProcessor(final AnnotatedCallable<T> annotatedCallable, final BeanManager beanManager) {  
72 - this.annotatedCallable = annotatedCallable;  
73 - this.beanManager = beanManager;  
74 - }  
75 -  
76 - protected AnnotatedCallable<T> getAnnotatedCallable() {  
77 - return this.annotatedCallable;  
78 - }  
79 -  
80 - protected BeanManager getBeanManager() {  
81 - return this.beanManager;  
82 - }  
83 -  
84 - /**  
85 - * Ask the bean manager for the firt instance of the declaring classe for this java member, then returns the current  
86 - * reference;  
87 - *  
88 - * @param <T>  
89 - * DeclaringClass  
90 - * @return  
91 - */  
92 - @SuppressWarnings("unchecked")  
93 - protected T getReferencedBean() {  
94 - Class<T> classType = (Class<T>) getAnnotatedCallable().getJavaMember().getDeclaringClass();  
95 - return Beans.getReference(classType);  
96 - }  
97 -  
98 - protected ResourceBundle getBundle() {  
99 - return getBundle(BUNDLE_BASE_NAME);  
100 - }  
101 -  
102 - protected ResourceBundle getBundle(String baseName) {  
103 - if (bundle == null) {  
104 - bundle = ResourceBundleProducer.create(baseName, Locale.getDefault());  
105 - }  
106 -  
107 - return bundle;  
108 - }  
109 -  
110 - protected Logger getLogger() {  
111 - return LoggerProducer.create(this.getClass());  
112 - }  
113 -}  
impl/core/src/main/java/br/gov/frameworkdemoiselle/internal/processor/AnnotatedMethodProcessor.java
@@ -1,125 +0,0 @@ @@ -1,125 +0,0 @@
1 -/*  
2 - * Demoiselle Framework  
3 - * Copyright (C) 2010 SERPRO  
4 - * ----------------------------------------------------------------------------  
5 - * This file is part of Demoiselle Framework.  
6 - *  
7 - * Demoiselle Framework is free software; you can redistribute it and/or  
8 - * modify it under the terms of the GNU Lesser General Public License version 3  
9 - * as published by the Free Software Foundation.  
10 - *  
11 - * This program is distributed in the hope that it will be useful,  
12 - * but WITHOUT ANY WARRANTY; without even the implied warranty of  
13 - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the  
14 - * GNU General Public License for more details.  
15 - *  
16 - * You should have received a copy of the GNU Lesser General Public License version 3  
17 - * along with this program; if not, see <http://www.gnu.org/licenses/>  
18 - * or write to the Free Software Foundation, Inc., 51 Franklin Street,  
19 - * Fifth Floor, Boston, MA 02110-1301, USA.  
20 - * ----------------------------------------------------------------------------  
21 - * Este arquivo é parte do Framework Demoiselle.  
22 - *  
23 - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou  
24 - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação  
25 - * do Software Livre (FSF).  
26 - *  
27 - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA  
28 - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou  
29 - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português  
30 - * para maiores detalhes.  
31 - *  
32 - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título  
33 - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/>  
34 - * ou escreva para a Fundação do Software Livre (FSF) Inc.,  
35 - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA.  
36 - */  
37 -package br.gov.frameworkdemoiselle.internal.processor;  
38 -  
39 -import java.lang.reflect.InvocationTargetException;  
40 -  
41 -import javax.enterprise.inject.spi.AnnotatedMethod;  
42 -import javax.enterprise.inject.spi.BeanManager;  
43 -  
44 -import br.gov.frameworkdemoiselle.annotation.Priority;  
45 -import br.gov.frameworkdemoiselle.exception.ApplicationException;  
46 -import br.gov.frameworkdemoiselle.message.SeverityType;  
47 -  
48 -/**  
49 - * Represents an annotated method to be processed;  
50 - *  
51 - * @param <T>  
52 - * declaring class owner of the method  
53 - */  
54 -public abstract class AnnotatedMethodProcessor<T> extends AbstractProcessor<T> implements  
55 - Comparable<AnnotatedMethodProcessor<T>> {  
56 -  
57 - public AnnotatedMethodProcessor(final AnnotatedMethod<T> annotatedMethod, final BeanManager beanManager) {  
58 - super(annotatedMethod, beanManager);  
59 - }  
60 -  
61 - public AnnotatedMethod<T> getAnnotatedMethod() {  
62 - return (AnnotatedMethod<T>) getAnnotatedCallable();  
63 - }  
64 -  
65 - protected Integer getPriority(AnnotatedMethod<T> annotatedMethod) {  
66 - Integer priority = Priority.MIN_PRIORITY;  
67 -  
68 - Priority annotation = annotatedMethod.getAnnotation(Priority.class);  
69 - if (annotation != null) {  
70 - priority = annotation.value();  
71 - }  
72 -  
73 - return priority;  
74 - }  
75 -  
76 - public int compareTo(final AnnotatedMethodProcessor<T> other) {  
77 - Integer orderThis = getPriority(getAnnotatedMethod());  
78 - Integer orderOther = getPriority(other.getAnnotatedMethod());  
79 -  
80 - return orderThis.compareTo(orderOther);  
81 - }  
82 -  
83 - public boolean process(Object... args) throws Throwable {  
84 - getLogger().info(getBundle().getString("processing", getAnnotatedMethod().getJavaMember().toGenericString()));  
85 -  
86 - try {  
87 - getAnnotatedMethod().getJavaMember().invoke(getReferencedBean(), args);  
88 -  
89 - } catch (InvocationTargetException cause) {  
90 - handleException(cause.getCause());  
91 - }  
92 -  
93 - return true;  
94 - }  
95 -  
96 - private void handleException(Throwable cause) throws Throwable {  
97 - ApplicationException ann = cause.getClass().getAnnotation(ApplicationException.class);  
98 -  
99 - if (ann == null || SeverityType.FATAL == ann.severity()) {  
100 - throw cause;  
101 -  
102 - } else {  
103 - switch (ann.severity()) {  
104 - case INFO:  
105 - getLogger().info(cause.getMessage());  
106 - break;  
107 -  
108 - case WARN:  
109 - getLogger().warn(cause.getMessage());  
110 - break;  
111 -  
112 - default:  
113 - getLogger().error(getBundle().getString("processing-fail"), cause);  
114 - break;  
115 - }  
116 - }  
117 - }  
118 -  
119 - @Override  
120 - public String toString() {  
121 - return getBundle().getString("for", getClass().getSimpleName(),  
122 - getAnnotatedMethod().getJavaMember().toGenericString());  
123 - }  
124 -  
125 -}  
impl/core/src/main/java/br/gov/frameworkdemoiselle/internal/processor/Processor.java
@@ -1,45 +0,0 @@ @@ -1,45 +0,0 @@
1 -/*  
2 - * Demoiselle Framework  
3 - * Copyright (C) 2010 SERPRO  
4 - * ----------------------------------------------------------------------------  
5 - * This file is part of Demoiselle Framework.  
6 - *  
7 - * Demoiselle Framework is free software; you can redistribute it and/or  
8 - * modify it under the terms of the GNU Lesser General Public License version 3  
9 - * as published by the Free Software Foundation.  
10 - *  
11 - * This program is distributed in the hope that it will be useful,  
12 - * but WITHOUT ANY WARRANTY; without even the implied warranty of  
13 - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the  
14 - * GNU General Public License for more details.  
15 - *  
16 - * You should have received a copy of the GNU Lesser General Public License version 3  
17 - * along with this program; if not, see <http://www.gnu.org/licenses/>  
18 - * or write to the Free Software Foundation, Inc., 51 Franklin Street,  
19 - * Fifth Floor, Boston, MA 02110-1301, USA.  
20 - * ----------------------------------------------------------------------------  
21 - * Este arquivo é parte do Framework Demoiselle.  
22 - *  
23 - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou  
24 - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação  
25 - * do Software Livre (FSF).  
26 - *  
27 - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA  
28 - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou  
29 - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português  
30 - * para maiores detalhes.  
31 - *  
32 - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título  
33 - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/>  
34 - * ou escreva para a Fundação do Software Livre (FSF) Inc.,  
35 - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA.  
36 - */  
37 -package br.gov.frameworkdemoiselle.internal.processor;  
38 -  
39 -/**  
40 - * Represents an classe that can be processed.  
41 - */  
42 -public interface Processor {  
43 -  
44 - public boolean process(Object... args) throws Throwable;  
45 -}  
impl/core/src/main/java/br/gov/frameworkdemoiselle/internal/processor/ShutdownProcessor.java
@@ -1,67 +0,0 @@ @@ -1,67 +0,0 @@
1 -/*  
2 - * Demoiselle Framework  
3 - * Copyright (C) 2010 SERPRO  
4 - * ----------------------------------------------------------------------------  
5 - * This file is part of Demoiselle Framework.  
6 - *  
7 - * Demoiselle Framework is free software; you can redistribute it and/or  
8 - * modify it under the terms of the GNU Lesser General Public License version 3  
9 - * as published by the Free Software Foundation.  
10 - *  
11 - * This program is distributed in the hope that it will be useful,  
12 - * but WITHOUT ANY WARRANTY; without even the implied warranty of  
13 - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the  
14 - * GNU General Public License for more details.  
15 - *  
16 - * You should have received a copy of the GNU Lesser General Public License version 3  
17 - * along with this program; if not, see <http://www.gnu.org/licenses/>  
18 - * or write to the Free Software Foundation, Inc., 51 Franklin Street,  
19 - * Fifth Floor, Boston, MA 02110-1301, USA.  
20 - * ----------------------------------------------------------------------------  
21 - * Este arquivo é parte do Framework Demoiselle.  
22 - *  
23 - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou  
24 - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação  
25 - * do Software Livre (FSF).  
26 - *  
27 - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA  
28 - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou  
29 - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português  
30 - * para maiores detalhes.  
31 - *  
32 - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título  
33 - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/>  
34 - * ou escreva para a Fundação do Software Livre (FSF) Inc.,  
35 - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA.  
36 - */  
37 -package br.gov.frameworkdemoiselle.internal.processor;  
38 -  
39 -import javax.enterprise.inject.spi.AnnotatedMethod;  
40 -import javax.enterprise.inject.spi.BeanManager;  
41 -  
42 -import br.gov.frameworkdemoiselle.annotation.Priority;  
43 -import br.gov.frameworkdemoiselle.annotation.Shutdown;  
44 -  
45 -/**  
46 - * Processor for a {@code Shutdown} annotated method, making it comparable.  
47 - *  
48 - * @param <T>  
49 - */  
50 -public class ShutdownProcessor<T> extends AnnotatedMethodProcessor<T> {  
51 -  
52 - public ShutdownProcessor(AnnotatedMethod<T> annotatedMethod, BeanManager beanManager) {  
53 - super(annotatedMethod, beanManager);  
54 - }  
55 -  
56 - @SuppressWarnings("deprecation")  
57 - protected Integer getPriority(AnnotatedMethod<T> annotatedMethod) {  
58 - Integer priority = super.getPriority(annotatedMethod);  
59 -  
60 - if (!annotatedMethod.isAnnotationPresent(Priority.class)) {  
61 - Shutdown annotation = annotatedMethod.getAnnotation(Shutdown.class);  
62 - priority = annotation.priority();  
63 - }  
64 -  
65 - return priority;  
66 - }  
67 -}  
impl/core/src/main/java/br/gov/frameworkdemoiselle/internal/processor/StartupProcessor.java
@@ -1,67 +0,0 @@ @@ -1,67 +0,0 @@
1 -/*  
2 - * Demoiselle Framework  
3 - * Copyright (C) 2010 SERPRO  
4 - * ----------------------------------------------------------------------------  
5 - * This file is part of Demoiselle Framework.  
6 - *  
7 - * Demoiselle Framework is free software; you can redistribute it and/or  
8 - * modify it under the terms of the GNU Lesser General Public License version 3  
9 - * as published by the Free Software Foundation.  
10 - *  
11 - * This program is distributed in the hope that it will be useful,  
12 - * but WITHOUT ANY WARRANTY; without even the implied warranty of  
13 - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the  
14 - * GNU General Public License for more details.  
15 - *  
16 - * You should have received a copy of the GNU Lesser General Public License version 3  
17 - * along with this program; if not, see <http://www.gnu.org/licenses/>  
18 - * or write to the Free Software Foundation, Inc., 51 Franklin Street,  
19 - * Fifth Floor, Boston, MA 02110-1301, USA.  
20 - * ----------------------------------------------------------------------------  
21 - * Este arquivo é parte do Framework Demoiselle.  
22 - *  
23 - * O Framework Demoiselle é um software livre; você pode redistribuí-lo e/ou  
24 - * modificá-lo dentro dos termos da GNU LGPL versão 3 como publicada pela Fundação  
25 - * do Software Livre (FSF).  
26 - *  
27 - * Este programa é distribuído na esperança que possa ser útil, mas SEM NENHUMA  
28 - * GARANTIA; sem uma garantia implícita de ADEQUAÇÃO a qualquer MERCADO ou  
29 - * APLICAÇÃO EM PARTICULAR. Veja a Licença Pública Geral GNU/LGPL em português  
30 - * para maiores detalhes.  
31 - *  
32 - * Você deve ter recebido uma cópia da GNU LGPL versão 3, sob o título  
33 - * "LICENCA.txt", junto com esse programa. Se não, acesse <http://www.gnu.org/licenses/>  
34 - * ou escreva para a Fundação do Software Livre (FSF) Inc.,  
35 - * 51 Franklin St, Fifth Floor, Boston, MA 02111-1301, USA.  
36 - */  
37 -package br.gov.frameworkdemoiselle.internal.processor;  
38 -  
39 -import javax.enterprise.inject.spi.AnnotatedMethod;  
40 -import javax.enterprise.inject.spi.BeanManager;  
41 -  
42 -import br.gov.frameworkdemoiselle.annotation.Priority;  
43 -import br.gov.frameworkdemoiselle.annotation.Startup;  
44 -  
45 -/**  
46 - * Processor for a {@code @Startup} annotated method, making it comparable.  
47 - *  
48 - * @param <T>  
49 - */  
50 -public class StartupProcessor<T> extends AnnotatedMethodProcessor<T> {  
51 -  
52 - public StartupProcessor(final AnnotatedMethod<T> annotatedMethod, final BeanManager beanManager) {  
53 - super(annotatedMethod, beanManager);  
54 - }  
55 -  
56 - @SuppressWarnings("deprecation")  
57 - protected Integer getPriority(AnnotatedMethod<T> annotatedMethod) {  
58 - Integer priority = super.getPriority(annotatedMethod);  
59 -  
60 - if (!annotatedMethod.isAnnotationPresent(Priority.class)) {  
61 - Startup annotation = annotatedMethod.getAnnotation(Startup.class);  
62 - priority = annotation.priority();  
63 - }  
64 -  
65 - return priority;  
66 - }  
67 -}