Search in sources :

Example 11 with ConnectionOptions

use of com.arm.mbed.cloud.sdk.common.ConnectionOptions in project mbed-cloud-sdk-java by ARMmbed.

the class DeviceDirectoryExamples method listDeviceEvents.

/**
 * Lists the first 5 device events.
 */
@SuppressWarnings("boxing")
@Example
public void listDeviceEvents() {
    ConnectionOptions config = Configuration.get();
    DeviceDirectory api = new DeviceDirectory(config);
    try {
        // Defining query options.
        DeviceEventListOptions options = new DeviceEventListOptions();
        options.setLimit(5);
        // Listing device events in a page.
        ListResponse<DeviceEvent> events = api.listDeviceEvents(options);
        for (DeviceEvent event : events.getData()) {
            log("Device event", event);
        }
    } catch (Exception e) {
        logError("last API Metadata", api.getLastApiMetadata());
        fail(e.getMessage());
    }
}
Also used : DeviceDirectory(com.arm.mbed.cloud.sdk.DeviceDirectory) DeviceEvent(com.arm.mbed.cloud.sdk.devicedirectory.model.DeviceEvent) ConnectionOptions(com.arm.mbed.cloud.sdk.common.ConnectionOptions) DeviceEventListOptions(com.arm.mbed.cloud.sdk.devicedirectory.model.DeviceEventListOptions) MbedCloudException(com.arm.mbed.cloud.sdk.common.MbedCloudException) AbstractExample(utils.AbstractExample) Example(utils.Example)

Example 12 with ConnectionOptions

use of com.arm.mbed.cloud.sdk.common.ConnectionOptions 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 13 with ConnectionOptions

use of com.arm.mbed.cloud.sdk.common.ConnectionOptions in project mbed-cloud-sdk-java by ARMmbed.

the class UpdateExamples method manageCampaigns.

/**
 * Lists the first 5 update campaigns.
 */
@SuppressWarnings("boxing")
@Example
public void manageCampaigns() {
    ConnectionOptions config = Configuration.get();
    Update api = new Update(config);
    DeviceDirectory api2 = new DeviceDirectory(config);
    String campaignId = null;
    try {
        // Getting a manifest file.
        FirmwareManifestListOptions options = new FirmwareManifestListOptions();
        options.setLimit(1);
        FirmwareManifest manifest = null;
        Paginator<FirmwareManifest> manifests = api.listAllFirmwareManifests(options);
        if (!manifests.hasNext()) {
            fail("Could not get any manifest files from Mbed Cloud");
        }
        manifest = manifests.next();
        log("Campaign manifest", manifest);
        // Getting a query.
        QueryListOptions options2 = new QueryListOptions();
        options.setLimit(1);
        options.setOrder(Order.DESC);
        Query query = null;
        Paginator<Query> queries = api2.listAllQueries(options2);
        if (!queries.hasNext()) {
            fail("Could not fetch any queries from Mbed Cloud");
        }
        query = queries.first();
        log("Campaign query", query);
        // Creating an update campaign.
        String campaignName = "campaign-" + UUID.randomUUID().toString();
        log("Campaign name", campaignName);
        Campaign myCampaign = new Campaign(campaignName, manifest, query);
        myCampaign.setScheduledAt(new Date());
        myCampaign = api.addCampaign(myCampaign);
        log("Created campaign", myCampaign);
        campaignId = myCampaign.getId();
        // Updating campaign.
        campaignName = "campaign-" + UUID.randomUUID().toString();
        log("Updated campaign name", campaignName);
        myCampaign.setName(campaignName);
        myCampaign = api.updateCampaign(myCampaign);
        log("Updated campaign", myCampaign);
        campaignId = myCampaign.getId();
        // Starting the campaign.
        myCampaign = api.startCampaign(myCampaign);
        log("Started campaign", myCampaign);
        campaignId = myCampaign.getId();
        // Printing device states
        CampaignDevicesStatesListOptions deviceStateOptions = new CampaignDevicesStatesListOptions();
        deviceStateOptions.setLimit(20);
        for (int countdown = 10; countdown >= 0; countdown--) {
            log("Device states at countdown", countdown);
            Paginator<CampaignDeviceState> states = api.listAllCampaignDeviceStates(campaignId, deviceStateOptions);
            while (states.hasNext()) {
                CampaignDeviceState state = states.next();
                log("Device " + state.getDeviceId() + " state", state.getState());
            }
        }
        // Stopping campaign.
        myCampaign = api.stopCampaign(myCampaign);
        log("Stopped campaign", myCampaign);
        campaignId = myCampaign.getId();
        // Deleting campaign.
        deleteCreatedCampaign(campaignId, api);
    } catch (Exception e) {
        logError("last API Metadata", api.getLastApiMetadata());
        deleteCreatedCampaign(campaignId, api);
        fail(e.getMessage());
    }
}
Also used : Query(com.arm.mbed.cloud.sdk.devicedirectory.model.Query) FirmwareManifestListOptions(com.arm.mbed.cloud.sdk.update.model.FirmwareManifestListOptions) FirmwareManifest(com.arm.mbed.cloud.sdk.update.model.FirmwareManifest) Update(com.arm.mbed.cloud.sdk.Update) CampaignDevicesStatesListOptions(com.arm.mbed.cloud.sdk.update.model.CampaignDevicesStatesListOptions) Date(java.util.Date) MbedCloudException(com.arm.mbed.cloud.sdk.common.MbedCloudException) DeviceDirectory(com.arm.mbed.cloud.sdk.DeviceDirectory) QueryListOptions(com.arm.mbed.cloud.sdk.devicedirectory.model.QueryListOptions) Campaign(com.arm.mbed.cloud.sdk.update.model.Campaign) ConnectionOptions(com.arm.mbed.cloud.sdk.common.ConnectionOptions) CampaignDeviceState(com.arm.mbed.cloud.sdk.update.model.CampaignDeviceState) AbstractExample(utils.AbstractExample) Example(utils.Example)

Example 14 with ConnectionOptions

use of com.arm.mbed.cloud.sdk.common.ConnectionOptions in project mbed-cloud-sdk-java by ARMmbed.

the class AccountManagementExamples method listGroups.

/**
 * Lists the last 5 groups and their contents.
 */
@SuppressWarnings("boxing")
@Example
public void listGroups() {
    ConnectionOptions config = Configuration.get();
    AccountManagement api = new AccountManagement(config);
    try {
        // Defining query options
        GroupListOptions options = new GroupListOptions();
        options.setLimit(5);
        options.setOrder(Order.DESC);
        // Listing groups.
        ListResponse<Group> groups = api.listGroups(options);
        for (Group group : groups.getData()) {
            log("Group", group);
            Paginator<ApiKey> apiKeyIterator = api.listAllGroupApiKeys(group.getId(), null);
            while (apiKeyIterator.hasNext()) {
                log("API key of group [" + group.getId() + "]", apiKeyIterator.next());
            }
            Paginator<User> userIterator = api.listAllGroupUsers(group.getId(), null);
            while (userIterator.hasNext()) {
                log("User of group [" + group.getId() + "]", userIterator.next());
            }
        }
    } catch (Exception e) {
        logError("last API Metadata", api.getLastApiMetadata());
        fail(e.getMessage());
    }
}
Also used : Group(com.arm.mbed.cloud.sdk.accountmanagement.model.Group) ApiKey(com.arm.mbed.cloud.sdk.accountmanagement.model.ApiKey) User(com.arm.mbed.cloud.sdk.accountmanagement.model.User) GroupListOptions(com.arm.mbed.cloud.sdk.accountmanagement.model.GroupListOptions) ConnectionOptions(com.arm.mbed.cloud.sdk.common.ConnectionOptions) AccountManagement(com.arm.mbed.cloud.sdk.AccountManagement) AbstractExample(utils.AbstractExample) Example(utils.Example)

Example 15 with ConnectionOptions

use of com.arm.mbed.cloud.sdk.common.ConnectionOptions in project mbed-cloud-sdk-java by ARMmbed.

the class TestServer method defineCreateModuleInstanceRoute.

private void defineCreateModuleInstanceRoute() {
    Route route = router.route(HttpMethod.POST, "/modules/:" + PARAM_MODULE + "/instances").produces(APPLICATION_JSON);
    route.blockingHandler(routingContext -> {
        String moduleId = routingContext.request().getParam(PARAM_MODULE);
        ConnectionOptions opts = retrieveConnectionOptions(routingContext.getBodyAsString());
        execute(200, routingContext, new ServerAction() {

            @Override
            public Object execute() throws Exception {
                return engine.createInstance(moduleId, opts).toInstance();
            }
        }, false);
    });
}
Also used : ConnectionOptions(com.arm.mbed.cloud.sdk.common.ConnectionOptions) JsonObject(io.vertx.core.json.JsonObject) Route(io.vertx.ext.web.Route) UnknownAPIException(com.arm.mbed.cloud.sdk.testserver.internal.model.UnknownAPIException) ServerCacheException(com.arm.mbed.cloud.sdk.testserver.cache.ServerCacheException) APICallException(com.arm.mbed.cloud.sdk.testutils.APICallException) MissingInstanceException(com.arm.mbed.cloud.sdk.testserver.cache.MissingInstanceException)

Aggregations

ConnectionOptions (com.arm.mbed.cloud.sdk.common.ConnectionOptions)35 AbstractExample (utils.AbstractExample)31 Example (utils.Example)31 MbedCloudException (com.arm.mbed.cloud.sdk.common.MbedCloudException)27 Connect (com.arm.mbed.cloud.sdk.Connect)15 Device (com.arm.mbed.cloud.sdk.devicedirectory.model.Device)12 DeviceListOptions (com.arm.mbed.cloud.sdk.devicedirectory.model.DeviceListOptions)10 Resource (com.arm.mbed.cloud.sdk.connect.model.Resource)8 DeviceDirectory (com.arm.mbed.cloud.sdk.DeviceDirectory)7 AccountManagement (com.arm.mbed.cloud.sdk.AccountManagement)4 Update (com.arm.mbed.cloud.sdk.Update)4 Metric (com.arm.mbed.cloud.sdk.connect.model.Metric)3 Webhook (com.arm.mbed.cloud.sdk.connect.model.Webhook)3 Query (com.arm.mbed.cloud.sdk.devicedirectory.model.Query)3 Certificates (com.arm.mbed.cloud.sdk.Certificates)2 ApiKey (com.arm.mbed.cloud.sdk.accountmanagement.model.ApiKey)2 User (com.arm.mbed.cloud.sdk.accountmanagement.model.User)2 Certificate (com.arm.mbed.cloud.sdk.certificates.model.Certificate)2 TimePeriod (com.arm.mbed.cloud.sdk.common.TimePeriod)2 MetricsPeriodListOptions (com.arm.mbed.cloud.sdk.connect.model.MetricsPeriodListOptions)2