|
1 | 1 | /** |
2 | 2 | * Copyright (C) 2010-2016 eBusiness Information, Excilys Group |
| 3 | + * Copyright (C) 2016-2017 the AndroidAnnotations project |
3 | 4 | * |
4 | 5 | * Licensed under the Apache License, Version 2.0 (the "License"); you may not |
5 | 6 | * use this file except in compliance with the License. You may obtain a copy of |
@@ -39,6 +40,7 @@ public class EServiceHolder extends EComponentHolder implements HasIntentBuilder |
39 | 40 | private ServiceIntentBuilder intentBuilder; |
40 | 41 | private JDefinedClass intentBuilderClass; |
41 | 42 | private ReceiverRegistrationDelegate<EServiceHolder> receiverRegistrationDelegate; |
| 43 | + private JBlock onCreateAfterSuperBlock; |
42 | 44 | private JBlock onDestroyBeforeSuperBlock; |
43 | 45 |
|
44 | 46 | public EServiceHolder(AndroidAnnotationsEnvironment environment, TypeElement annotatedElement, AndroidManifest androidManifest) throws Exception { |
@@ -70,6 +72,7 @@ private void setOnCreate() { |
70 | 72 | JBlock onCreateBody = onCreate.body(); |
71 | 73 | onCreateBody.invoke(getInit()); |
72 | 74 | onCreateBody.invoke(JExpr._super(), onCreate); |
| 75 | + onCreateAfterSuperBlock = onCreateBody.blockVirtual(); |
73 | 76 | } |
74 | 77 |
|
75 | 78 | private void setOnDestroy() { |
@@ -101,45 +104,16 @@ public JBlock getIntentFilterInitializationBlock(IntentFilterData intentFilterDa |
101 | 104 | } |
102 | 105 |
|
103 | 106 | @Override |
104 | | - public JBlock getOnCreateAfterSuperBlock() { |
105 | | - return getInitBody(); |
| 107 | + public JBlock getStartLifecycleAfterSuperBlock() { |
| 108 | + return onCreateAfterSuperBlock; |
106 | 109 | } |
107 | 110 |
|
108 | 111 | @Override |
109 | | - public JBlock getOnDestroyBeforeSuperBlock() { |
| 112 | + public JBlock getEndLifecycleBeforeSuperBlock() { |
110 | 113 | if (onDestroyBeforeSuperBlock == null) { |
111 | 114 | setOnDestroy(); |
112 | 115 | } |
113 | | - return onDestroyBeforeSuperBlock; |
114 | | - } |
115 | | - |
116 | | - @Override |
117 | | - public JBlock getOnStartAfterSuperBlock() { |
118 | | - return receiverRegistrationDelegate.getOnStartAfterSuperBlock(); |
119 | | - } |
120 | 116 |
|
121 | | - @Override |
122 | | - public JBlock getOnStopBeforeSuperBlock() { |
123 | | - return receiverRegistrationDelegate.getOnStopBeforeSuperBlock(); |
124 | | - } |
125 | | - |
126 | | - @Override |
127 | | - public JBlock getOnResumeAfterSuperBlock() { |
128 | | - return receiverRegistrationDelegate.getOnResumeAfterSuperBlock(); |
129 | | - } |
130 | | - |
131 | | - @Override |
132 | | - public JBlock getOnPauseBeforeSuperBlock() { |
133 | | - return receiverRegistrationDelegate.getOnPauseBeforeSuperBlock(); |
134 | | - } |
135 | | - |
136 | | - @Override |
137 | | - public JBlock getOnAttachAfterSuperBlock() { |
138 | | - return receiverRegistrationDelegate.getOnAttachAfterSuperBlock(); |
139 | | - } |
140 | | - |
141 | | - @Override |
142 | | - public JBlock getOnDetachBeforeSuperBlock() { |
143 | | - return receiverRegistrationDelegate.getOnDetachBeforeSuperBlock(); |
| 117 | + return onDestroyBeforeSuperBlock; |
144 | 118 | } |
145 | 119 | } |
0 commit comments