private String uploadPhoto(PhotoModel photo) throws IOException, FlickrException { BufferedInputStream inStream = imageStreamProvider.get(photo.getFetchableUrl()); UploadMetaData uploadMetaData = new UploadMetaData() .setAsync(false) .setPublicFlag(false) .setFriendFlag(false) .setFamilyFlag(false) .setTitle(COPY_PREFIX + photo.getTitle()) .setDescription(photo.getDescription()); return uploader.upload(inStream, uploadMetaData); }
when(flickr.getAuthInterface()).thenReturn(authInterface); when(imageStreamProvider.get(FETCHABLE_URL)).thenReturn(bufferedInputStream); when(uploader.upload(any(BufferedInputStream.class), any(UploadMetaData.class))) .thenReturn(FLICKR_PHOTO_ID); verify(uploader).upload(eq(bufferedInputStream), uploadMetaDataArgumentCaptor.capture()); UploadMetaData actualUploadMetaData = uploadMetaDataArgumentCaptor.getValue(); assertThat(actualUploadMetaData.getTitle()) .isEqualTo(FlickrPhotosImporter.COPY_PREFIX + PHOTO_TITLE); assertThat(actualUploadMetaData.getDescription()).isEqualTo(PHOTO_DESCRIPTION);
/** * Replace a photo from an InputStream. * * @param in * @return photoId or ticketId * @throws FlickrException */ @Override public String replace(InputStream in, String flickrId, boolean async) throws FlickrException { Payload payload = new Payload(in, flickrId); return sendReplaceRequest(async, payload); }
private String sendReplaceRequest(boolean async, Payload payload) throws FlickrException { UploaderResponse response = (UploaderResponse) transport.postMultiPart(SERVICES_REPLACE_PATH, UploadMetaData.replace(async, payload.getPhotoId()), payload, apiKey, sharedSecret); if (response.isError()) { throw new FlickrException(response.getErrorCode(), response.getErrorMessage()); } return getResponseString(async, response); }
/** * Upload a photo from an InputStream. * * @param in * @param metaData * @return photoId or ticketId * @throws FlickrException */ @Override public String upload(InputStream in, UploadMetaData metaData) throws FlickrException { Map<String, Object> parameters = setUploadParameters(metaData); parameters.put("photo", in); UploaderResponse response = postPhoto(parameters, SERVICES_UPLOAD_PATH); return getResponseString(metaData.isAsync(), response); }
private String sendUploadRequest(UploadMetaData metaData, Payload payload) throws FlickrException { UploaderResponse response = (UploaderResponse) transport.postMultiPart(SERVICES_UPLOAD_PATH, metaData, payload, apiKey, sharedSecret); if (response.isError()) { throw new FlickrException(response.getErrorCode(), response.getErrorMessage()); } return getResponseString(metaData.isAsync(), response); }
/** * Replace a photo from an InputStream. * * @param in * @return photoId or ticketId * @throws FlickrException */ @Override public String replace(InputStream in, String flickrId, boolean async) throws FlickrException { Map<String, Object> parameters = setReplaceParameters(flickrId, async); parameters.put("photo", in); UploaderResponse response = postPhoto(parameters, SERVICES_REPLACE_PATH); return getResponseString(async, response); }
/** * Upload a photo from a File. * * @param file * the photo file * @param metaData * The meta data * @return photoId or ticketId * @throws FlickrException */ @Override public String upload(File file, UploadMetaData metaData) throws FlickrException { Payload payload = new Payload(file); return sendUploadRequest(metaData, payload); }
/** * Call the post multipart end point. * * @param parameters * @param path * @return * @throws FlickrException */ private UploaderResponse postPhoto(Map<String, Object> parameters, String path) throws FlickrException { UploaderResponse response = (UploaderResponse) transport.post(path, parameters, apiKey, sharedSecret, true); if (response.isError()) { throw new FlickrException(response.getErrorCode(), response.getErrorMessage()); } return response; }
/** * Get the photo or ticket id from the response. * * @param async * @param response * @return */ private String getResponseString(boolean async, UploaderResponse response) { return async ? response.getTicketId() : response.getPhotoId(); }
public static UploadMetaData replace(boolean async, String photoId) { UploadMetaData metaData = new UploadMetaData(); metaData.async = async; metaData.photoId = photoId; return metaData; }
@Override public Uploader getUploader() { if (uploader == null) { uploader = new Uploader(apiKey, sharedSecret); } return uploader; }
/** * Upload a photo from a byte-array. * * @param data * The photo data as a byte array * @param metaData * The meta data * @return photoId or ticketId * @throws FlickrException */ @Override public String upload(byte[] data, UploadMetaData metaData) throws FlickrException { Map<String, Object> parameters = setUploadParameters(metaData); parameters.put("photo", data); UploaderResponse response = postPhoto(parameters, SERVICES_UPLOAD_PATH); return getResponseString(metaData.isAsync(), response); }
/** * Replace a photo from an InputStream. * * @param data * @param flickrId * @param async * @return photoId or ticketId * @throws FlickrException */ @Override public String replace(byte[] data, String flickrId, boolean async) throws FlickrException { Map<String, Object> parameters = setReplaceParameters(flickrId, async); parameters.put("photo", data); UploaderResponse response = postPhoto(parameters, SERVICES_REPLACE_PATH); return getResponseString(async, response); }
/** * Replace a photo from an InputStream. * * @param data * @param flickrId * @param async * @return photoId or ticketId * @throws FlickrException */ @Override public String replace(byte[] data, String flickrId, boolean async) throws FlickrException { Payload payload = new Payload(data, flickrId); return sendReplaceRequest(async, payload); }
/** * Upload a photo from an InputStream. * * @param in * @param metaData * @return photoId or ticketId * @throws FlickrException */ @Override public String upload(InputStream in, UploadMetaData metaData) throws FlickrException { Payload payload = new Payload(in); return sendUploadRequest(metaData, payload); }
/** * Get the photo or ticket id from the response. * * @param async * @param response * @return */ private String getResponseString(boolean async, UploaderResponse response) { String id = ""; if (async) { id = response.getTicketId(); } else { id = response.getPhotoId(); } return id; }
@Override public Uploader getUploader() { if (uploader == null) { uploader = new Uploader(apiKey, sharedSecret); } return uploader; }
/** * Replace a photo from a File. * * @param file * @param flickrId * @param async * @return photoId or ticketId * @throws FlickrException */ @Override public String replace(File file, String flickrId, boolean async) throws FlickrException { Payload payload = new Payload(file, flickrId); return sendReplaceRequest(async, payload); }
/** * Upload a photo from a byte-array. * * @param data * The photo data as a byte array * @param metaData * The meta data * @return photoId or ticketId * @throws FlickrException */ @Override public String upload(byte[] data, UploadMetaData metaData) throws FlickrException { Payload payload = new Payload(data); return sendUploadRequest(metaData, payload); }