File tree Expand file tree Collapse file tree 8 files changed +29
-24
lines changed
main/java/com/pengrad/telegrambot/request
test/java/com/pengrad/telegrambot Expand file tree Collapse file tree 8 files changed +29
-24
lines changed Original file line number Diff line number Diff line change 99abstract public class AbstractMultipartRequest <T extends AbstractMultipartRequest > extends AbstractSendRequest <T > {
1010
1111 private final boolean isMultipart ;
12+ private String fileName ;
1213
1314 public AbstractMultipartRequest (Object chatId , Object file ) {
1415 super (chatId );
1516 if (file instanceof String ) {
1617 isMultipart = false ;
17- } else if (file instanceof File || file instanceof byte []) {
18+ } else if (file instanceof File ) {
19+ isMultipart = true ;
20+ fileName = ((File ) file ).getName ();
21+ } else if (file instanceof byte []) {
1822 isMultipart = true ;
1923 } else {
2024 throw new IllegalArgumentException ("Sending data should be String, File or byte[]" );
2125 }
2226 add (getFileParamName (), file );
2327 }
2428
29+ public T fileName (String fileName ) {
30+ this .fileName = fileName ;
31+ return thisAsT ;
32+ }
33+
2534 @ Override
2635 public boolean isMultipart () {
2736 return isMultipart ;
2837 }
2938
30- abstract protected String getFileParamName ();
31-
3239 @ Override
33- abstract public String getFileName ();
40+ public String getFileName () {
41+ if (fileName != null && !fileName .isEmpty ()) {
42+ return fileName ;
43+ } else {
44+ return getDefaultFileName ();
45+ }
46+ }
3447
3548 @ Override
3649 abstract public String getContentType ();
50+
51+ abstract protected String getDefaultFileName ();
52+
53+ abstract protected String getFileParamName ();
3754}
Original file line number Diff line number Diff line change @@ -38,7 +38,7 @@ protected String getFileParamName() {
3838 }
3939
4040 @ Override
41- public String getFileName () {
41+ public String getDefaultFileName () {
4242 return ContentTypes .AUDIO_FILE_NAME ;
4343 }
4444
Original file line number Diff line number Diff line change 88 */
99public class SendDocument extends AbstractMultipartRequest <SendDocument > {
1010
11- private String fileName ;
12-
1311 public SendDocument (Object chatId , String document ) {
1412 super (chatId , document );
1513 }
1614
1715 public SendDocument (Object chatId , File document ) {
1816 super (chatId , document );
19- fileName = document .getName ();
2017 }
2118
2219 public SendDocument (Object chatId , byte [] document ) {
@@ -27,23 +24,14 @@ public SendDocument caption(String caption) {
2724 return add ("caption" , caption );
2825 }
2926
30- public SendDocument fileName (String fileName ) {
31- this .fileName = fileName ;
32- return thisAsT ;
33- }
34-
3527 @ Override
3628 protected String getFileParamName () {
3729 return "document" ;
3830 }
3931
4032 @ Override
41- public String getFileName () {
42- if (fileName != null && !fileName .isEmpty ()) {
43- return fileName ;
44- } else {
45- return ContentTypes .DOC_FILE_NAME ;
46- }
33+ public String getDefaultFileName () {
34+ return ContentTypes .DOC_FILE_NAME ;
4735 }
4836
4937 @ Override
Original file line number Diff line number Diff line change @@ -30,7 +30,7 @@ protected String getFileParamName() {
3030 }
3131
3232 @ Override
33- public String getFileName () {
33+ public String getDefaultFileName () {
3434 return ContentTypes .PHOTO_FILE_NAME ;
3535 }
3636
Original file line number Diff line number Diff line change @@ -26,7 +26,7 @@ protected String getFileParamName() {
2626 }
2727
2828 @ Override
29- public String getFileName () {
29+ public String getDefaultFileName () {
3030 return ContentTypes .PHOTO_FILE_NAME ;
3131 }
3232
Original file line number Diff line number Diff line change @@ -42,7 +42,7 @@ protected String getFileParamName() {
4242 }
4343
4444 @ Override
45- public String getFileName () {
45+ public String getDefaultFileName () {
4646 return ContentTypes .VIDEO_FILE_NAME ;
4747 }
4848
Original file line number Diff line number Diff line change @@ -30,7 +30,7 @@ protected String getFileParamName() {
3030 }
3131
3232 @ Override
33- public String getFileName () {
33+ public String getDefaultFileName () {
3434 return ContentTypes .VOICE_FILE_NAME ;
3535 }
3636
Original file line number Diff line number Diff line change @@ -132,7 +132,7 @@ public void sendAudio() {
132132
133133 @ Test
134134 public void sendDocument () {
135- SendDocument request = new SendDocument (chatId , new File (docFile )).caption ("caption" );
135+ SendDocument request = new SendDocument (chatId , new File (docFile )).fileName ( "my doc.zip" ). caption ("caption" );
136136 SendResponse sendResponse = bot .execute (request );
137137 Message message = sendResponse .message ();
138138 MessageTest .checkDocumentMessage (message );
You can’t perform that action at this time.
0 commit comments