All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javastrava.api.UploadAPI Maven / Gradle / Ivy

The newest version!
package javastrava.api;

import javastrava.api.async.StravaAPICallback;
import javastrava.model.StravaUploadResponse;
import javastrava.model.reference.StravaActivityType;
import javastrava.service.UploadService;
import javastrava.service.exception.BadRequestException;
import retrofit.http.GET;
import retrofit.http.Multipart;
import retrofit.http.POST;
import retrofit.http.Part;
import retrofit.http.Path;
import retrofit.mime.TypedFile;

/**
 * 

* API definitions for {@link UploadService} endpoints *

* * @author Dan Shannon * */ public interface UploadAPI { /** * @see javastrava.service.UploadService#checkUploadStatus(Long) * * @param uploadId * The upload id as given back in the response to * {@link #upload(StravaActivityType, String, String, Boolean, Boolean, Boolean, String, String, TypedFile)} * @return Upload response containing the upload id and activity id and current status of the upload */ @GET("/uploads/{id}") public StravaUploadResponse checkUploadStatus(@Path("id") final Long uploadId); /** * @see javastrava.service.UploadService#checkUploadStatus(Long) * * @param uploadId * The upload id as given back in the response to * {@link #upload(StravaActivityType, String, String, Boolean, Boolean, Boolean, String, String, TypedFile, StravaAPICallback)} * @param callback * The callback to execute on completion */ @GET("/uploads/{id}") public void checkUploadStatus(@Path("id") final Long uploadId, StravaAPICallback callback); /** * @see javastrava.service.UploadService#upload(StravaActivityType, String, String, Boolean, Boolean, Boolean, String, * String, java.io.File) * * @param activityType * Type of activity being uploaded * @param name * Name of the activity * @param description * (Optional) Description of the activity * @param _private * (Optional) Whether the activity should be flagged as private * @param trainer * (Optional) If true then the activity was done on a stationary trainer * @param commute * (Optional) If true then the activity represents a commute * @param dataType * Type of data file being uploaded * @param externalId * (Optional) External identifier generated by your application which Strava will later use as a reference when * you're checking upload status * @param file * The file to be uploaded! * @return Upload response containing the upload id and activity id and current status of the upload * @throws BadRequestException * If required elements of the call are missing */ @Multipart @POST("/uploads") public StravaUploadResponse upload(@Part("activity_type") final StravaActivityType activityType, @Part("name") final String name, @Part("description") final String description, @Part("private") final Boolean _private, @Part("trainer") final Boolean trainer, @Part("commute") Boolean commute, @Part("data_type") final String dataType, @Part("external_id") final String externalId, @Part("file") final TypedFile file) throws BadRequestException; /** * @see javastrava.service.UploadService#upload(StravaActivityType, String, String, Boolean, Boolean, Boolean, String, * String, java.io.File) * * @param activityType * Type of activity being uploaded * @param name * Name of the activity * @param description * (Optional) Description of the activity * @param _private * (Optional) Whether the activity should be flagged as private * @param trainer * (Optional) If true then the activity was done on a stationary trainer * @param commute * (Optional) If true then the activity represents a commute * @param dataType * Type of data file being uploaded * @param externalId * (Optional) External identifier generated by your application which Strava will later use as a reference when * you're checking upload status * @param file * The file to be uploaded! * @param callback * The callback to execute on completion * @throws BadRequestException * If required elements of the call are missing */ @Multipart @POST("/uploads") public void upload(@Part("activity_type") final StravaActivityType activityType, @Part("name") final String name, @Part("description") final String description, @Part("private") final Boolean _private, @Part("trainer") final Boolean trainer, @Part("commute") Boolean commute, @Part("data_type") final String dataType, @Part("external_id") final String externalId, @Part("file") final TypedFile file, final StravaAPICallback callback) throws BadRequestException; }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy