From a85fe61a4683946e72497a5f2b3f58ca13ed0ec8 Mon Sep 17 00:00:00 2001 From: Trevor Pering Date: Wed, 15 May 2024 06:30:31 -0700 Subject: [PATCH 1/3] Adding listtest main --- .../access/ClearBladeIotAccessProvider.java | 24 ++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/udmis/src/main/java/com/google/bos/udmi/service/access/ClearBladeIotAccessProvider.java b/udmis/src/main/java/com/google/bos/udmi/service/access/ClearBladeIotAccessProvider.java index b8a14efa15..45c5901cee 100644 --- a/udmis/src/main/java/com/google/bos/udmi/service/access/ClearBladeIotAccessProvider.java +++ b/udmis/src/main/java/com/google/bos/udmi/service/access/ClearBladeIotAccessProvider.java @@ -67,7 +67,9 @@ import com.google.common.collect.BiMap; import com.google.common.collect.ImmutableBiMap; import com.google.common.collect.ImmutableList; +import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableSet; +import com.google.udmi.util.JsonUtil; import java.util.AbstractMap.SimpleEntry; import java.util.Base64; import java.util.Date; @@ -95,7 +97,8 @@ public class ClearBladeIotAccessProvider extends IotAccessBase { public static final String REGISTRIES_FIELD_MASK = "id,name"; - private static final Set CLOUD_REGIONS = ImmutableSet.of("us-central1"); + public static final String DEFAULT_REGION = "us-central1"; + private static final Set CLOUD_REGIONS = ImmutableSet.of(DEFAULT_REGION); private static final String EMPTY_JSON = "{}"; private static final BiMap AUTH_TYPE_MAP = ImmutableBiMap.of( Key_format.RS_256, PublicKeyFormat.RSA_PEM, @@ -117,9 +120,28 @@ public class ClearBladeIotAccessProvider extends IotAccessBase { private static final String UDMI_STATE_TOPIC = "udmi_state"; // TODO: Make this not hardcoded. private static final String TOPIC_NAME_FORMAT = "projects/%s/topics/%s"; private static final CharSequence BOUND_TO_GATEWAY_MARKER = " it's associated "; + public static final String CONFIG_ENV = "CLEARBLADE_CONFIGURATION"; private final String projectId; private final DeviceManagerInterface deviceManager; + public static void main(String[] args) { + requireNonNull(System.getenv(CONFIG_ENV), CONFIG_ENV + " not defined"); + IotAccess iotAccess = new IotAccess(); + if (args.length != 1) { + System.err.println("Usage: registry_id"); + return; + } + String registryId = args[0]; + Map stringObjectMap = JsonUtil.loadMap(System.getenv(CONFIG_ENV)); + iotAccess.project_id = (String) requireNonNull(stringObjectMap.get("project")); + System.err.println("Extracted project from ClearBlade config file: " + iotAccess.project_id); + ClearBladeIotAccessProvider clearBladeIotAccessProvider = + new ClearBladeIotAccessProvider(iotAccess); + clearBladeIotAccessProvider.populateRegistryRegions(); + CloudModel cloudModel = clearBladeIotAccessProvider.listDevices(registryId); + System.err.printf("Found %d results%n", cloudModel.device_ids.size()); + } + /** * Create a new instance for interfacing with GCP IoT Core. */ From 432bba536b5617578fd9e4add0aa7f2fa909f8c9 Mon Sep 17 00:00:00 2001 From: Trevor Pering Date: Wed, 15 May 2024 06:31:04 -0700 Subject: [PATCH 2/3] Adding project spec --- .../ClearBladeIotAccessProvider.xml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 udmis/.idea/runConfigurations/ClearBladeIotAccessProvider.xml diff --git a/udmis/.idea/runConfigurations/ClearBladeIotAccessProvider.xml b/udmis/.idea/runConfigurations/ClearBladeIotAccessProvider.xml new file mode 100644 index 0000000000..7a89db79f3 --- /dev/null +++ b/udmis/.idea/runConfigurations/ClearBladeIotAccessProvider.xml @@ -0,0 +1,19 @@ + + + + + + + \ No newline at end of file From e0925602bcb5f143876cdc87f15f74bd22c0e970 Mon Sep 17 00:00:00 2001 From: Trevor Pering Date: Wed, 15 May 2024 07:44:55 -0700 Subject: [PATCH 3/3] Linty fix --- .../bos/udmi/service/access/ClearBladeIotAccessProvider.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/udmis/src/main/java/com/google/bos/udmi/service/access/ClearBladeIotAccessProvider.java b/udmis/src/main/java/com/google/bos/udmi/service/access/ClearBladeIotAccessProvider.java index 45c5901cee..ddcc257d3c 100644 --- a/udmis/src/main/java/com/google/bos/udmi/service/access/ClearBladeIotAccessProvider.java +++ b/udmis/src/main/java/com/google/bos/udmi/service/access/ClearBladeIotAccessProvider.java @@ -124,6 +124,9 @@ public class ClearBladeIotAccessProvider extends IotAccessBase { private final String projectId; private final DeviceManagerInterface deviceManager; + /** + * Core test function for listing the devices in a registry. + */ public static void main(String[] args) { requireNonNull(System.getenv(CONFIG_ENV), CONFIG_ENV + " not defined"); IotAccess iotAccess = new IotAccess(); @@ -131,7 +134,7 @@ public static void main(String[] args) { System.err.println("Usage: registry_id"); return; } - String registryId = args[0]; + final String registryId = args[0]; Map stringObjectMap = JsonUtil.loadMap(System.getenv(CONFIG_ENV)); iotAccess.project_id = (String) requireNonNull(stringObjectMap.get("project")); System.err.println("Extracted project from ClearBlade config file: " + iotAccess.project_id);