com.backendless.UploadBitmapAsyncTask Maven / Gradle / Ivy
/*
* ********************************************************************************************************************
*
* BACKENDLESS.COM CONFIDENTIAL
*
* ********************************************************************************************************************
*
* Copyright 2012 BACKENDLESS.COM. All Rights Reserved.
*
* NOTICE: All information contained herein is, and remains the property of Backendless.com and its suppliers,
* if any. The intellectual and technical concepts contained herein are proprietary to Backendless.com and its
* suppliers and may be covered by U.S. and Foreign Patents, patents in process, and are protected by trade secret
* or copyright law. Dissemination of this information or reproduction of this material is strictly forbidden
* unless prior written permission is obtained from Backendless.com.
*
* ********************************************************************************************************************
*/
package com.backendless;
import android.graphics.Bitmap;
import com.backendless.async.callback.AsyncCallback;
import com.backendless.async.message.AsyncMessage;
import com.backendless.core.ResponseCarrier;
import com.backendless.exceptions.BackendlessFault;
import com.backendless.files.BackendlessFile;
import com.backendless.files.router.BitmapOutputStreamRouter;
class UploadBitmapAsyncTask
{
private AsyncCallback responder;
private boolean overwrite;
void executeThis( Bitmap bitmap, Bitmap.CompressFormat compressFormat, int quality, String name, String path,
AsyncCallback responder )
{
executeThis( bitmap, compressFormat, quality, name, path, false, responder );
}
void executeThis( Bitmap bitmap, Bitmap.CompressFormat compressFormat, int quality, String name, String path, boolean overwrite,
AsyncCallback responder )
{
this.responder = responder;
this.overwrite = overwrite;
doInBackground( bitmap, compressFormat, quality, name, path );
}
private void doInBackground( final Bitmap bitmap, final Bitmap.CompressFormat compressFormat, final int quality,
final String name, final String path )
{
ThreadPoolService.getPoolExecutor().execute( new Runnable()
{
@Override
public void run()
{
try
{
BitmapOutputStreamRouter bitmapOutputStreamRouter = new BitmapOutputStreamRouter( bitmap, compressFormat, quality );
BackendlessFile result = Backendless.Files.uploadFromStream( bitmapOutputStreamRouter, name, path, overwrite );
ResponseCarrier.getInstance().deliverMessage( new AsyncMessage( result, responder ) );
}
catch( Exception e )
{
ResponseCarrier.getInstance().deliverMessage( new AsyncMessage( new BackendlessFault( e ), responder ) );
}
}
} );
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy