Skip to content

Commit

Permalink
feat: Check connection method
Browse files Browse the repository at this point in the history
  • Loading branch information
RezaRahemtola committed Jul 29, 2024
1 parent 18da7ea commit df45590
Show file tree
Hide file tree
Showing 4 changed files with 21 additions and 1 deletion.
5 changes: 5 additions & 0 deletions packages/adena-extension/src/inject.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,11 @@ const init = (): void => {
const response = await executor.addEstablish(name);
return response;
},
async CheckConnection(name: string): Promise<unknown> {
const executor = new AdenaExecutor();
const response = await executor.checkConnection(name);
return response;
},
async DoContract(message: RequestDoContractMessage): Promise<unknown> {
const executor = new AdenaExecutor();
const response = await executor.doContract(message);
Expand Down
9 changes: 8 additions & 1 deletion packages/adena-extension/src/inject/executor/executor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,13 @@ export class AdenaExecutor {
return this.sendEventMessage(eventMessage);
};

public checkConnection = (name?: string): Promise<unknown> => {
const eventMessage = AdenaExecutor.createEventMessage('CHECK_CONNECTION', {
name: name ?? 'Unknown',
});
return this.sendEventMessage(eventMessage);
};

public doContract = (params: RequestDoContractMessage): Promise<unknown> => {
const result = this.validateContractMessage(params);
if (result) {
Expand Down Expand Up @@ -139,7 +146,7 @@ export class AdenaExecutor {
}
};

private sendEventMessage = (eventMessage: InjectionMessage): Promise<unknown> => {
private sendEventMessage = async (eventMessage: InjectionMessage): Promise<unknown> => {
this.listen();
this.eventMessage = {
...eventMessage,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,9 @@ export class MessageHandler {
case 'ADD_ESTABLISH':
HandlerMethod.addEstablish(message, sendResponse);
break;
case 'CHECK_CONNECTION':
HandlerMethod.checkEstablished(message, sendResponse);
break;
case 'ADD_NETWORK':
HandlerMethod.checkEstablished(message, sendResponse).then((isEstablished) => {
if (isEstablished) {
Expand Down
5 changes: 5 additions & 0 deletions packages/adena-extension/src/inject/message/message.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@ const MESSAGE_TYPES = {
code: 0,
description: 'Establish Connection.',
},
CHECK_CONNECTION: {
code: 0,
description: 'Check Connection status',
},
DO_CONTRACT: {
code: 0,
description: 'Do Contract.',
Expand Down Expand Up @@ -193,6 +197,7 @@ export class InjectionMessageInstance {

public getType = ():
| 'ADD_ESTABLISH'
| 'CHECK_CONNECTION'
| 'DO_CONTRACT'
| 'GET_ACCOUNT'
| 'SIGN_AMINO'
Expand Down

0 comments on commit df45590

Please sign in to comment.