Skip to content

Commit 46ed0a6

Browse files
committed
Add information on the type of class currently processed
1 parent 93c00bf commit 46ed0a6

13 files changed

Lines changed: 41 additions & 17 deletions

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/processing/EActivityProcessor.java‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
import org.androidannotations.helper.AnnotationHelper;
4040
import org.androidannotations.helper.CanonicalNameConstants;
4141
import org.androidannotations.helper.ModelConstants;
42+
import org.androidannotations.processing.EBeanHolder.GeneratedClassType;
4243
import org.androidannotations.rclass.IRClass;
4344
import org.androidannotations.rclass.IRClass.Res;
4445

@@ -101,7 +102,7 @@ public void process(Element element, JCodeModel codeModel, EBeansHolder eBeansHo
101102

102103
JDefinedClass generatedClass = codeModel._class(modifiers, subActivityQualifiedName, ClassType.CLASS);
103104

104-
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass);
105+
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass, GeneratedClassType.ACTIVITY);
105106

106107
JClass annotatedActivity = codeModel.directClass(annotatedActivityQualifiedName);
107108

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/processing/EApplicationProcessor.java‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,8 @@
2727

2828
import org.androidannotations.annotations.EApplication;
2929
import org.androidannotations.helper.ModelConstants;
30+
import org.androidannotations.processing.EBeanHolder.GeneratedClassType;
31+
3032
import com.sun.codemodel.ClassType;
3133
import com.sun.codemodel.JBlock;
3234
import com.sun.codemodel.JClass;
@@ -52,7 +54,7 @@ public void process(Element element, JCodeModel codeModel, EBeansHolder eBeansHo
5254
String generatedComponentQualifiedName = annotatedComponentQualifiedName + ModelConstants.GENERATION_SUFFIX;
5355

5456
JDefinedClass generatedClass = codeModel._class(PUBLIC | FINAL, generatedComponentQualifiedName, ClassType.CLASS);
55-
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass);
57+
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass, GeneratedClassType.APPLICATION);
5658

5759
JClass annotatedComponent = codeModel.directClass(annotatedComponentQualifiedName);
5860

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/processing/EBeanHolder.java‎

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,11 @@
3636

3737
public class EBeanHolder {
3838

39+
public static enum GeneratedClassType {
40+
ACTIVITY, APPLICATION, BEAN, FRAGMENT, PROVIDER, RECEIVER, SERVICE, VIEW_GROUP, VIEW, REST, SHARED_PREF
41+
}
42+
43+
public final GeneratedClassType classType;
3944
public final JDefinedClass generatedClass;
4045
/**
4146
* Only defined on activities
@@ -124,10 +129,11 @@ public class EBeanHolder {
124129
private final EBeansHolder eBeansHolder;
125130
public final Class<? extends Annotation> eBeanAnnotation;
126131

127-
public EBeanHolder(EBeansHolder eBeansHolder, Class<? extends Annotation> eBeanAnnotation, JDefinedClass generatedClass) {
132+
public EBeanHolder(EBeansHolder eBeansHolder, Class<? extends Annotation> eBeanAnnotation, JDefinedClass generatedClass, GeneratedClassType classType) {
128133
this.eBeansHolder = eBeansHolder;
129134
this.eBeanAnnotation = eBeanAnnotation;
130135
this.generatedClass = generatedClass;
136+
this.classType = classType;
131137
}
132138

133139
public Classes classes() {

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/processing/EBeanProcessor.java‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434

3535
import org.androidannotations.annotations.EBean;
3636
import org.androidannotations.helper.APTCodeModelHelper;
37+
import org.androidannotations.processing.EBeanHolder.GeneratedClassType;
3738
import org.androidannotations.processing.EBeansHolder.Classes;
3839

3940
import com.sun.codemodel.ClassType;
@@ -65,7 +66,7 @@ public void process(Element element, JCodeModel codeModel, EBeansHolder eBeansHo
6566

6667
JDefinedClass generatedClass = codeModel._class(PUBLIC | FINAL, generatedBeanQualifiedName, ClassType.CLASS);
6768

68-
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass);
69+
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass, GeneratedClassType.BEAN);
6970

7071
JClass eBeanClass = codeModel.directClass(eBeanQualifiedName);
7172

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/processing/EBeansHolder.java‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import javax.lang.model.element.Element;
2929

3030
import org.androidannotations.helper.CanonicalNameConstants;
31+
import org.androidannotations.processing.EBeanHolder.GeneratedClassType;
3132

3233
import com.sun.codemodel.JClass;
3334
import com.sun.codemodel.JClassAlreadyExistsException;
@@ -165,13 +166,13 @@ private void preloadJavaLangClasses() {
165166
loadedClasses.put(Object.class.getName(), refClass(Object.class));
166167
}
167168

168-
public EBeanHolder create(Element element, Class<? extends Annotation> eBeanAnnotation, JDefinedClass generatedClass) {
169+
public EBeanHolder create(Element element, Class<? extends Annotation> eBeanAnnotation, JDefinedClass generatedClass, GeneratedClassType classType) {
169170

170171
String qualifiedName = generatedClass.fullName();
171172

172173
originatingElements.add(qualifiedName, element);
173174

174-
EBeanHolder activityHolder = new EBeanHolder(this, eBeanAnnotation, generatedClass);
175+
EBeanHolder activityHolder = new EBeanHolder(this, eBeanAnnotation, generatedClass, classType);
175176
eBeanHolders.put(element, activityHolder);
176177
return activityHolder;
177178
}

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/processing/EFragmentProcessor.java‎

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
*/
1616
package org.androidannotations.processing;
1717

18-
import static org.androidannotations.helper.ModelConstants.GENERATION_SUFFIX;
1918
import static com.sun.codemodel.JExpr.FALSE;
2019
import static com.sun.codemodel.JExpr._new;
2120
import static com.sun.codemodel.JExpr._null;
@@ -25,6 +24,7 @@
2524
import static com.sun.codemodel.JMod.PRIVATE;
2625
import static com.sun.codemodel.JMod.PUBLIC;
2726
import static com.sun.codemodel.JMod.STATIC;
27+
import static org.androidannotations.helper.ModelConstants.GENERATION_SUFFIX;
2828

2929
import java.lang.annotation.Annotation;
3030

@@ -34,9 +34,11 @@
3434

3535
import org.androidannotations.annotations.EFragment;
3636
import org.androidannotations.helper.IdAnnotationHelper;
37+
import org.androidannotations.processing.EBeanHolder.GeneratedClassType;
3738
import org.androidannotations.processing.EBeansHolder.Classes;
3839
import org.androidannotations.rclass.IRClass;
3940
import org.androidannotations.rclass.IRClass.Res;
41+
4042
import com.sun.codemodel.ClassType;
4143
import com.sun.codemodel.JBlock;
4244
import com.sun.codemodel.JClass;
@@ -72,7 +74,7 @@ public void process(Element element, JCodeModel codeModel, EBeansHolder eBeansHo
7274

7375
JDefinedClass generatedClass = codeModel._class(PUBLIC | FINAL, generatedBeanQualifiedName, ClassType.CLASS);
7476

75-
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass);
77+
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass, GeneratedClassType.FRAGMENT);
7678

7779
JClass eBeanClass = codeModel.directClass(beanQualifiedName);
7880

@@ -142,11 +144,10 @@ public void process(Element element, JCodeModel codeModel, EBeansHolder eBeansHo
142144
JBlock onViewCreatedBody = onViewCreated.body();
143145

144146
onViewCreatedBody.invoke(_super(), onViewCreated).arg(view).arg(savedInstanceState);
145-
147+
146148
onViewCreatedBody.invoke(holder.afterSetContentView);
147149
}
148150

149-
150151
{
151152
// findViewById
152153

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/processing/EProviderProcessor.java‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@
2828

2929
import org.androidannotations.annotations.EProvider;
3030
import org.androidannotations.helper.ModelConstants;
31+
import org.androidannotations.processing.EBeanHolder.GeneratedClassType;
32+
3133
import com.sun.codemodel.ClassType;
3234
import com.sun.codemodel.JBlock;
3335
import com.sun.codemodel.JClass;
@@ -53,7 +55,7 @@ public void process(Element element, JCodeModel codeModel, EBeansHolder eBeansHo
5355

5456
JDefinedClass generatedClass = codeModel._class(PUBLIC | FINAL, generatedComponentQualifiedName, ClassType.CLASS);
5557

56-
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass);
58+
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass, GeneratedClassType.PROVIDER);
5759

5860
JClass annotatedComponent = codeModel.directClass(annotatedComponentQualifiedName);
5961

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/processing/EReceiverProcessor.java‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,9 @@
2626

2727
import org.androidannotations.annotations.EReceiver;
2828
import org.androidannotations.helper.ModelConstants;
29+
import org.androidannotations.processing.EBeanHolder.GeneratedClassType;
2930
import org.androidannotations.processing.EBeansHolder.Classes;
31+
3032
import com.sun.codemodel.ClassType;
3133
import com.sun.codemodel.JBlock;
3234
import com.sun.codemodel.JClass;
@@ -55,7 +57,7 @@ public void process(Element element, JCodeModel codeModel, EBeansHolder eBeansHo
5557

5658
JDefinedClass generatedClass = codeModel._class(PUBLIC | FINAL, generatedComponentQualifiedName, ClassType.CLASS);
5759

58-
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass);
60+
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass, GeneratedClassType.RECEIVER);
5961

6062
JClass annotatedComponent = codeModel.directClass(annotatedComponentQualifiedName);
6163

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/processing/EServiceProcessor.java‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@
2828
import org.androidannotations.annotations.EService;
2929
import org.androidannotations.helper.APTCodeModelHelper;
3030
import org.androidannotations.helper.ModelConstants;
31+
import org.androidannotations.processing.EBeanHolder.GeneratedClassType;
32+
3133
import com.sun.codemodel.ClassType;
3234
import com.sun.codemodel.JBlock;
3335
import com.sun.codemodel.JClass;
@@ -60,7 +62,7 @@ public void process(Element element, JCodeModel codeModel, EBeansHolder eBeansHo
6062

6163
JDefinedClass generatedClass = codeModel._class(PUBLIC | FINAL, generatedComponentQualifiedName, ClassType.CLASS);
6264

63-
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass);
65+
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass, GeneratedClassType.SERVICE);
6466

6567
JClass annotatedComponent = codeModel.directClass(annotatedComponentQualifiedName);
6668

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/processing/EViewGroupProcessor.java‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,11 @@
3030
import org.androidannotations.helper.APTCodeModelHelper;
3131
import org.androidannotations.helper.IdAnnotationHelper;
3232
import org.androidannotations.helper.ModelConstants;
33+
import org.androidannotations.processing.EBeanHolder.GeneratedClassType;
3334
import org.androidannotations.processing.EBeansHolder.Classes;
3435
import org.androidannotations.rclass.IRClass;
3536
import org.androidannotations.rclass.IRClass.Res;
37+
3638
import com.sun.codemodel.ClassType;
3739
import com.sun.codemodel.JBlock;
3840
import com.sun.codemodel.JClass;
@@ -95,7 +97,7 @@ public void process(Element element, JCodeModel codeModel, EBeansHolder eBeansHo
9597

9698
JDefinedClass generatedClass = codeModel._class(modifiers, generatedBeanQualifiedName, ClassType.CLASS);
9799

98-
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass);
100+
EBeanHolder holder = eBeansHolder.create(element, getTarget(), generatedClass, GeneratedClassType.VIEW_GROUP);
99101

100102
JClass eBeanClass = codeModel.directClass(eBeanQualifiedName);
101103

0 commit comments

Comments
 (0)