in src/Nodes/ModuleLabelNode.ts [28:63]
public async getChildren(context: vscode.ExtensionContext, iotHubConnectionString: string): Promise<INode[]> {
if (this.deviceNode.deviceItem.contextValue === "edge") {
TelemetryClient.sendEvent(Constants.IoTHubAILoadEdgeModuleTreeStartEvent);
try {
const moduleList: vscode.TreeItem[] = await Utility.getModuleItemsForEdge(iotHubConnectionString, this.deviceNode.deviceItem, context);
TelemetryClient.sendEvent(Constants.IoTHubAILoadEdgeModuleTreeDoneEvent, { Result: "Success" });
const moduleNodeList: INode[] = [];
moduleList.forEach((item) => {
moduleNodeList.push(new ModuleItemNode(item as ModuleItem, this));
});
return moduleNodeList;
} catch (err) {
TelemetryClient.sendEvent(Constants.IoTHubAILoadEdgeModuleTreeDoneEvent, { Result: "Fail", [Constants.errorProperties.Message]: err.message });
return Utility.getErrorMessageTreeItems("modules", err.message);
}
} else if (this.deviceNode.deviceItem.contextValue === "device") {
TelemetryClient.sendEvent(Constants.IoTHubAILoadModuleTreeStartEvent);
try {
const moduleList: vscode.TreeItem[] = await Utility.getModuleItems(iotHubConnectionString, this.deviceNode.deviceItem, context);
TelemetryClient.sendEvent(Constants.IoTHubAILoadModuleTreeDoneEvent, { Result: "Success" });
if (moduleList.length === 0) {
moduleList.push(new vscode.TreeItem(`No Modules`));
}
const moduleNodeList: INode[] = [];
moduleList.forEach((item) => {
moduleNodeList.push(new ModuleItemNode(item as ModuleItem, this));
});
return moduleNodeList;
} catch (err) {
TelemetryClient.sendEvent(Constants.IoTHubAILoadModuleTreeDoneEvent, { Result: "Fail", [Constants.errorProperties.Message]: err.message });
return Utility.getErrorMessageTreeItems("modules", err.message);
}
}
}