@@ -131,12 +131,16 @@ public Object fromJson(String json, Class c) {
131
131
132
132
public void setGson (Gson gson ) { this .gson = gson ; }
133
133
134
+ public String apiUrl (Object requestDto ){
135
+ return this .replyUrl + requestDto .getClass ().getSimpleName ();
136
+ }
137
+
134
138
public String createUrl (Object requestDto ) {
135
139
return createUrl (requestDto , null );
136
140
}
137
141
138
142
public String createUrl (Object requestDto , Map <String ,String > query ) {
139
- String requestUrl = this .replyUrl + requestDto . getClass (). getSimpleName ( );
143
+ String requestUrl = this .apiUrl ( requestDto );
140
144
141
145
StringBuilder sb = new StringBuilder ();
142
146
Field lastField = null ;
@@ -679,21 +683,33 @@ public void clearCookies() {
679
683
cookieManager .getCookieStore ().removeAll ();
680
684
}
681
685
682
- // Add these methods to JsonServiceClient class:
683
-
684
- public <TResponse > TResponse postFilesWithRequest (IReturn <TResponse > request , FileUpload [] filesresponseType ) {
685
- String requestUrl = this .replyUrl + requestDto .getClass ().getSimpleName ();
686
- return postFilesWithRequest (requestUrl , request , files , request .getResponseType ());
686
+ // Convenience method for single file upload
687
+ @ Override
688
+ public <TResponse > TResponse postFileWithRequest (IReturn <TResponse > request , FileUpload file ) {
689
+ return postFilesWithRequest (this .apiUrl (request ), request , new FileUpload []{file }, request .getResponseType ());
690
+ }
691
+ @ Override
692
+ public <TResponse > TResponse postFileWithRequest (Object request , FileUpload file , Object responseType ) {
693
+ return postFilesWithRequest (this .apiUrl (request ), request , new FileUpload []{file }, responseType );
694
+ }
695
+ @ Override
696
+ public <TResponse > TResponse postFileWithRequest (String path , Object request , FileUpload file , Object responseType ) {
697
+ return postFilesWithRequest (path , request , new FileUpload []{file }, responseType );
687
698
}
688
699
689
- public <TResponse > TResponse postFilesWithRequest (Object request , FileUpload [] files , Class <TResponse > responseType ) {
690
- String requestUrl = this .replyUrl + requestDto .getClass ().getSimpleName ();
691
- return postFilesWithRequest (requestUrl , request , files , responseType );
700
+ @ Override
701
+ public <TResponse > TResponse postFilesWithRequest (IReturn <TResponse > request , FileUpload [] files ) {
702
+ return this .postFilesWithRequest (this .apiUrl (request ), request , files , request .getResponseType ());
703
+ }
704
+ @ Override
705
+ public <TResponse > TResponse postFilesWithRequest (Object request , FileUpload [] files , Object responseType ) {
706
+ return this .postFilesWithRequest (this .apiUrl (request ), request , files , responseType );
692
707
}
693
708
694
709
private static final String BOUNDARY = "---" + UUID .randomUUID ().toString () + "---" ;
695
710
696
- public <TResponse > TResponse postFilesWithRequest (String path , Object request , FileUpload [] files , Class <TResponse > responseType ) {
711
+ @ Override
712
+ public <TResponse > TResponse postFilesWithRequest (String path , Object request , FileUpload [] files , Object responseType ) {
697
713
try {
698
714
// Prepare multipart data
699
715
ByteArrayOutputStream baos = new ByteArrayOutputStream ();
@@ -744,9 +760,4 @@ private void writeMultipartFile(DataOutputStream dos, FileUpload file) throws IO
744
760
dos .write (file .getFileBytes ());
745
761
dos .writeBytes ("\r \n " );
746
762
}
747
-
748
- // Convenience method for single file upload
749
- public <TResponse > TResponse postFileWithRequest (String path , Object request , FileUpload file , Class <TResponse > responseType ) {
750
- return postFilesWithRequest (path , request , new FileUpload []{file }, responseType );
751
- }
752
763
}
0 commit comments