Skip to content

Commit

Permalink
add old event client logic as a catch, and stringify electorn error m…
Browse files Browse the repository at this point in the history
…essage (#542)
  • Loading branch information
YingXue committed Sep 6, 2022
1 parent bd1a207 commit 58d290f
Show file tree
Hide file tree
Showing 5 changed files with 39 additions and 15 deletions.
2 changes: 1 addition & 1 deletion package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "azure-iot-explorer",
"version": "0.14.13",
"version": "0.14.14",
"description": "This project welcomes contributions and suggestions. Most contributions require you to agree to a\r Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us\r the rights to use your contribution. For details, visit https://cla.microsoft.com.",
"main": "host/electron.js",
"build": {
Expand Down
24 changes: 18 additions & 6 deletions public/handlers/eventHubHandler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,22 +32,34 @@ export const onStopMonitoring = async (): Promise<void> => {
}

const eventHubProvider = async (params: StartEventHubMonitoringParameters) => {
await initializeEventHubClient(params);
updateEntityIdIfNecessary(params);

return listeningToMessages(client, params);
};

const initializeEventHubClient = async (params: StartEventHubMonitoringParameters) => {
if (needToCreateNewEventHubClient(params))
{
// hub has changed, reinitialize client, receivers and mesages
client = params.customEventHubConnectionString ?
await EventHubClient.createFromConnectionString(params.customEventHubConnectionString, params.customEventHubName) :
await EventHubClient.createFromConnectionString(await convertIotHubToEventHubsConnectionString(params.hubConnectionString), params.customEventHubName);
if (params.customEventHubConnectionString) {
client = await EventHubClient.createFromConnectionString(params.customEventHubConnectionString, params.customEventHubName);
}
else {
try {
client = await EventHubClient.createFromConnectionString(await convertIotHubToEventHubsConnectionString(params.hubConnectionString));
}
catch {
client = await EventHubClient.createFromIotHubConnectionString(params.hubConnectionString);
}
}

connectionString = params.customEventHubConnectionString ?
`${params.customEventHubConnectionString}/${params.customEventHubName}` :
params.hubConnectionString;
receivers = [];
messages = [];
}
updateEntityIdIfNecessary(params);

return listeningToMessages(client, params);
};

const listeningToMessages = async (eventHubClient: EventHubClient, params: StartEventHubMonitoringParameters) => {
Expand Down
2 changes: 1 addition & 1 deletion public/utils/invokeHelper.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ export const invokeInMainWorld = async <T>(channel: string, ...args: Array<unkno
// using customer invoker that returns the original error if handler throws.
const { error, result } = await ipcRenderer.invoke(channel, ...args);
if (error) {
throw error;
throw new Error(JSON.stringify(error.message));
}

return result;
Expand Down
24 changes: 18 additions & 6 deletions src/server/serverBase.ts
Original file line number Diff line number Diff line change
Expand Up @@ -331,22 +331,34 @@ export const addPropertiesToCloudToDeviceMessage = (message: CloudToDeviceMessag
};

export const eventHubProvider = async (params: any) => {
await initializeEventHubClient(params);
updateEntityIdIfNecessary(params);

return listeningToMessages(client, params);
};

const initializeEventHubClient = async (params: any) => {
if (needToCreateNewEventHubClient(params))
{
// hub has changed, reinitialize client, receivers and mesages
client = params.customEventHubConnectionString ?
await EventHubClient.createFromConnectionString(params.customEventHubConnectionString, params.customEventHubName) :
await EventHubClient.createFromConnectionString(await convertIotHubToEventHubsConnectionString(params.hubConnectionString), params.customEventHubName);
if (params.customEventHubConnectionString) {
client = await EventHubClient.createFromConnectionString(params.customEventHubConnectionString, params.customEventHubName);
}
else {
try {
client = await EventHubClient.createFromConnectionString(await convertIotHubToEventHubsConnectionString(params.hubConnectionString));
}
catch {
client = await EventHubClient.createFromIotHubConnectionString(params.hubConnectionString);
}
}

connectionString = params.customEventHubConnectionString ?
`${params.customEventHubConnectionString}/${params.customEventHubName}` :
params.hubConnectionString;
receivers = [];
messages = [];
}
updateEntityIdIfNecessary(params);

return listeningToMessages(client, params);
};

const listeningToMessages = async (eventHubClient: EventHubClient, params: any) => {
Expand Down

0 comments on commit 58d290f

Please sign in to comment.