Skip to content

Commit 9a6c878

Browse files
committed
Merge branch 'deathlord87-develop' into develop
2 parents c4b0451 + ace22fd commit 9a6c878

6 files changed

Lines changed: 20 additions & 41 deletions

File tree

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/processing/rest/DeleteProcessor.java‎

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,10 @@
1717

1818
import javax.annotation.processing.ProcessingEnvironment;
1919
import javax.lang.model.element.Element;
20-
import javax.lang.model.element.ExecutableElement;
2120

2221
import org.androidannotations.annotations.rest.Delete;
23-
import org.androidannotations.processing.EBeanHolder;
2422

25-
import com.sun.codemodel.JCodeModel;
26-
27-
public class DeleteProcessor extends MethodProcessor {
23+
public class DeleteProcessor extends GetPostProcessor {
2824

2925
public DeleteProcessor(ProcessingEnvironment processingEnv, RestImplementationsHolder restImplementationsHolder) {
3026
super(processingEnv, restImplementationsHolder);
@@ -36,14 +32,9 @@ public String getTarget() {
3632
}
3733

3834
@Override
39-
public void process(Element element, JCodeModel codeModel, EBeanHolder holder) throws Exception {
40-
41-
ExecutableElement executableElement = (ExecutableElement) element;
42-
43-
Delete deleteAnnotation = element.getAnnotation(Delete.class);
44-
String urlSuffix = deleteAnnotation.value();
45-
46-
generateRestTemplateCallBlock(new MethodProcessorHolder(holder, executableElement, urlSuffix, null, null, codeModel));
35+
public String retrieveUrlSuffix(Element element) {
36+
Delete getAnnotation = element.getAnnotation(Delete.class);
37+
return getAnnotation.value();
4738
}
4839

4940
}

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/processing/rest/PutProcessor.java‎

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,10 @@
1717

1818
import javax.annotation.processing.ProcessingEnvironment;
1919
import javax.lang.model.element.Element;
20-
import javax.lang.model.element.ExecutableElement;
2120

2221
import org.androidannotations.annotations.rest.Put;
23-
import org.androidannotations.processing.EBeanHolder;
2422

25-
import com.sun.codemodel.JCodeModel;
26-
import com.sun.codemodel.JInvocation;
27-
28-
public class PutProcessor extends MethodProcessor {
23+
public class PutProcessor extends GetPostProcessor {
2924

3025
public PutProcessor(ProcessingEnvironment processingEnv, RestImplementationsHolder restImplementationsHolder) {
3126
super(processingEnv, restImplementationsHolder);
@@ -37,19 +32,9 @@ public String getTarget() {
3732
}
3833

3934
@Override
40-
public void process(Element element, JCodeModel codeModel, EBeanHolder holder) throws Exception {
41-
42-
ExecutableElement executableElement = (ExecutableElement) element;
43-
44-
Put putAnnotation = element.getAnnotation(Put.class);
45-
String urlSuffix = putAnnotation.value();
46-
47-
generateRestTemplateCallBlock(new MethodProcessorHolder(holder, executableElement, urlSuffix, null, null, codeModel));
48-
}
49-
50-
@Override
51-
protected JInvocation addHttpEntityVar(JInvocation restCall, MethodProcessorHolder methodHolder) {
52-
return restCall.arg(generateHttpEntityVar(methodHolder));
35+
public String retrieveUrlSuffix(Element element) {
36+
Put getAnnotation = element.getAnnotation(Put.class);
37+
return getAnnotation.value();
5338
}
5439

5540
}

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/validation/rest/DeleteValidator.java‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,9 @@ public boolean validate(Element element, AnnotationElements validatedElements) {
5656

5757
validatorHelper.throwsOnlyRestClientException(executableElement, valid);
5858

59-
validatorHelper.returnTypeIsVoid(executableElement, valid);
59+
validatorHelper.doesNotReturnPrimitive(executableElement, valid);
6060

61-
restAnnotationHelper.urlVariableNamesExistInParametersAndHasNoOneMoreParameter(executableElement, valid);
61+
restAnnotationHelper.urlVariableNamesExistInParametersAndHasOnlyOneMoreParameter(executableElement, valid);
6262

6363
return valid.isValid();
6464
}

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/validation/rest/PutValidator.java‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ public boolean validate(Element element, AnnotationElements validatedElements) {
5656

5757
validatorHelper.throwsOnlyRestClientException(executableElement, valid);
5858

59-
validatorHelper.returnTypeIsVoid(executableElement, valid);
59+
validatorHelper.doesNotReturnPrimitive(executableElement, valid);
6060

6161
restAnnotationHelper.urlVariableNamesExistInParametersAndHasOnlyOneMoreParameter(executableElement, valid);
6262

‎AndroidAnnotations/androidannotations/src/test/java/org/androidannotations/rest/RestTest.java‎

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,21 +46,18 @@ public void client_no_internet_permission_does_not_compile() throws IOException
4646
@Test
4747
public void client_with_return_type() throws IOException {
4848
CompileResult result = compileFiles(ClientWithResponseEntity.class);
49-
assertCompilationErrorOn(ClientWithResponseEntity.class, "@Put", result);
50-
assertCompilationErrorOn(ClientWithResponseEntity.class, "@Delete", result);
5149
assertCompilationErrorOn(ClientWithResponseEntity.class, "@Options", result);
5250
assertCompilationErrorOn(ClientWithResponseEntity.class, "@Head", result);
53-
assertCompilationErrorCount(4, result);
51+
assertCompilationErrorCount(2, result);
5452
}
5553

5654
@Test
5755
public void client_with_request_entity() throws IOException {
5856
CompileResult result = compileFiles(ClientWithRequestEntity.class);
59-
assertCompilationErrorOn(ClientWithRequestEntity.class, "@Delete", result);
6057
assertCompilationErrorOn(ClientWithRequestEntity.class, "@Get", result);
6158
assertCompilationErrorOn(ClientWithRequestEntity.class, "@Head", result);
6259
assertCompilationErrorOn(ClientWithRequestEntity.class, "@Options", result);
63-
assertCompilationErrorCount(4, result);
60+
assertCompilationErrorCount(3, result);
6461
}
6562

6663
@Test

‎AndroidAnnotations/functional-test-1-5/src/main/java/org/androidannotations/test15/rest/MyService.java‎

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -191,16 +191,22 @@ ResponseEntity<Event[][]> getEventsArrayOfArrays2(String location, int year)
191191

192192
@Put("/events/{id}")
193193
void updateEvent(Event event, int id);
194-
194+
195195
@Put("/events/{date}")
196196
void updateEvent(long date);
197197

198+
@Put("/events/{date}")
199+
Event updateEventWithResponse(long date);
200+
198201
// *** DELETE ***
199202

200203
// url variables are mapped to method parameter names.
201204
@Delete("/events/{id}")
202205
void removeEvent(long id);
203206

207+
@Put("/events/{id}")
208+
Event removeEventWithRespons(long id);
209+
204210
// *** HEAD ***
205211

206212
@Head("/events/{year}/{location}")

0 commit comments

Comments
 (0)