Search in sources :

Example 1 with FirmwareImage

use of com.arm.mbed.cloud.sdk.update.model.FirmwareImage in project mbed-cloud-sdk-java by ARMmbed.

the class Update method addFirmwareImage.

/**
 * Adds a firmware image.
 * <p>
 * Example:
 *
 * <pre>
 * {@code
 * try {
 *     String fileName = "C:\\Users\\mbedUser\\mbed-cloud-client-example.bin";
 *     FirmwareImage image = new FirmwareImage();
 *     image.setDatafile(fileName);
 *     image.setDescription("Quick start image");
 *     image.setName(fileName.substring(0,fileName.indexOf(".")));
 *
 *     FirmwareImage newImage = updateApi.addFirmwareImage(image);
 *     System.out.println("FirmwareImage URL: " + newImage.getUrl());
 *
 * } catch (MbedCloudException e) {
 *     e.printStackTrace();
 * }
 * }
 * </pre>
 *
 * @param image
 *            The image to add.
 * @return added image.
 * @throws MbedCloudException
 *             if a problem occurred during request processing.
 */
@API
@Nullable
public FirmwareImage addFirmwareImage(@NonNull FirmwareImage image) throws MbedCloudException {
    checkNotNull(image, TAG_FIRMWARE_IMAGE);
    checkModelValidity(image, TAG_FIRMWARE_IMAGE);
    final FirmwareImage finalImage = image;
    return CloudCaller.call(this, "addFirmwareImage()", FirmwareImageAdapter.getMapper(), new CloudCall<com.arm.mbed.cloud.sdk.internal.updateservice.model.FirmwareImage>() {

        @Override
        public Call<com.arm.mbed.cloud.sdk.internal.updateservice.model.FirmwareImage> call() {
            return endpoint.getUpdate().firmwareImageCreate(DataFileAdapter.reverseMap(finalImage.getDataFile()), finalImage.getName(), finalImage.getDescription());
        }
    });
}
Also used : CloudCall(com.arm.mbed.cloud.sdk.common.CloudCaller.CloudCall) Call(retrofit2.Call) FirmwareImage(com.arm.mbed.cloud.sdk.update.model.FirmwareImage) API(com.arm.mbed.cloud.sdk.annotations.API) Nullable(com.arm.mbed.cloud.sdk.annotations.Nullable)

Example 2 with FirmwareImage

use of com.arm.mbed.cloud.sdk.update.model.FirmwareImage in project mbed-cloud-sdk-java by ARMmbed.

the class UpdateExamples method listFirmwareImages.

/**
 * Lists the first 5 firmware images.
 */
@SuppressWarnings("boxing")
@Example
public void listFirmwareImages() {
    ConnectionOptions config = Configuration.get();
    Update api = new Update(config);
    try {
        // Defining query options.
        FirmwareImageListOptions options = new FirmwareImageListOptions();
        options.setLimit(5);
        // Listing firmware images.
        Paginator<FirmwareImage> images = api.listAllFirmwareImages(options);
        String imageId = null;
        for (FirmwareImage image : images) {
            log("Firmware image", image);
            imageId = image.getId();
        }
        // Getting a specific image
        FirmwareImage image = api.getFirmwareImage(imageId);
        log("Specific firmware image", image);
    } catch (Exception e) {
        logError("last API Metadata", api.getLastApiMetadata());
        fail(e.getMessage());
    }
}
Also used : FirmwareImage(com.arm.mbed.cloud.sdk.update.model.FirmwareImage) ConnectionOptions(com.arm.mbed.cloud.sdk.common.ConnectionOptions) Update(com.arm.mbed.cloud.sdk.Update) FirmwareImageListOptions(com.arm.mbed.cloud.sdk.update.model.FirmwareImageListOptions) MbedCloudException(com.arm.mbed.cloud.sdk.common.MbedCloudException) AbstractExample(utils.AbstractExample) Example(utils.Example)

Example 3 with FirmwareImage

use of com.arm.mbed.cloud.sdk.update.model.FirmwareImage in project mbed-cloud-sdk-java by ARMmbed.

the class FirmwareImageAdapter method map.

/**
 * Maps firmware image.
 *
 * @param firmwareImage
 *            image
 * @return image.
 */
public static FirmwareImage map(com.arm.mbed.cloud.sdk.internal.updateservice.model.FirmwareImage firmwareImage) {
    if (firmwareImage == null) {
        return null;
    }
    final FirmwareImage image = new FirmwareImage(firmwareImage.getId(), TranslationUtils.toUrl(firmwareImage.getDatafile()), firmwareImage.getDatafileChecksum(), TranslationUtils.toLong(firmwareImage.getDatafileSize()), TranslationUtils.toDate(firmwareImage.getCreatedAt()), TranslationUtils.toDate(firmwareImage.getUpdatedAt()));
    image.setDataFile(null);
    image.setDescription(firmwareImage.getDescription());
    image.setName(firmwareImage.getName());
    return image;
}
Also used : FirmwareImage(com.arm.mbed.cloud.sdk.update.model.FirmwareImage)

Example 4 with FirmwareImage

use of com.arm.mbed.cloud.sdk.update.model.FirmwareImage in project mbed-cloud-sdk-java by ARMmbed.

the class FirmwareImageAdapter method mapList.

/**
 * Maps list of images.
 *
 * @param list
 *            images page
 * @return list of images
 */
public static ListResponse<FirmwareImage> mapList(FirmwareImagePage list) {
    final FirmwareImagePage imageList = list;
    final RespList<com.arm.mbed.cloud.sdk.internal.updateservice.model.FirmwareImage> respList = new RespList<com.arm.mbed.cloud.sdk.internal.updateservice.model.FirmwareImage>() {

        @Override
        public Boolean getHasMore() {
            return (imageList == null) ? null : imageList.isHasMore();
        }

        @Override
        public Integer getTotalCount() {
            return (imageList == null) ? null : imageList.getTotalCount();
        }

        @Override
        public String getAfter() {
            return (imageList == null) ? null : imageList.getAfter();
        }

        @Override
        public Integer getLimit() {
            return (imageList == null) ? null : imageList.getLimit();
        }

        @Override
        public String getOrder() {
            return (imageList == null) ? null : imageList.getOrder().toString();
        }

        @Override
        public List<com.arm.mbed.cloud.sdk.internal.updateservice.model.FirmwareImage> getData() {
            return (imageList == null) ? null : imageList.getData();
        }
    };
    return GenericAdapter.mapList(respList, getMapper());
}
Also used : FirmwareImagePage(com.arm.mbed.cloud.sdk.internal.updateservice.model.FirmwareImagePage) FirmwareImage(com.arm.mbed.cloud.sdk.update.model.FirmwareImage) RespList(com.arm.mbed.cloud.sdk.common.GenericAdapter.RespList)

Aggregations

FirmwareImage (com.arm.mbed.cloud.sdk.update.model.FirmwareImage)4 Update (com.arm.mbed.cloud.sdk.Update)1 API (com.arm.mbed.cloud.sdk.annotations.API)1 Nullable (com.arm.mbed.cloud.sdk.annotations.Nullable)1 CloudCall (com.arm.mbed.cloud.sdk.common.CloudCaller.CloudCall)1 ConnectionOptions (com.arm.mbed.cloud.sdk.common.ConnectionOptions)1 RespList (com.arm.mbed.cloud.sdk.common.GenericAdapter.RespList)1 MbedCloudException (com.arm.mbed.cloud.sdk.common.MbedCloudException)1 FirmwareImagePage (com.arm.mbed.cloud.sdk.internal.updateservice.model.FirmwareImagePage)1 FirmwareImageListOptions (com.arm.mbed.cloud.sdk.update.model.FirmwareImageListOptions)1 Call (retrofit2.Call)1 AbstractExample (utils.AbstractExample)1 Example (utils.Example)1