in tools/vscode-azurewebpubsub/src/workflows/hubSetting/switchAnonymousPolicy/switchAnonymousPolicy.ts [21:56]
export async function switchAnonymousPolicy(context: IActionContext, node?: HubSettingItem | AnonymousPolicyItem ): Promise<void> {
node = node
? (node instanceof HubSettingItem ? node : node.hubItem)
: await pickHubSetting(context);
const service: ServiceItem = node.service;
const subContext = createSubscriptionContext(service.subscription);
const targetPolicy = node.hub.properties.anonymousConnectPolicy === KnownAnonymousConnectPolicy.Allow ? KnownAnonymousConnectPolicy.Deny : KnownAnonymousConnectPolicy.Allow;
const wizardContext: ICreateOrUpdateHubSettingContext = {
...context,
...await createActivityContext(),
subscription: subContext,
resourceGroupName: service.resourceGroup,
serviceName: service.name,
hubName: node.hub.hubName,
hubProperties: {
...node.hub.properties,
anonymousConnectPolicy: targetPolicy
}
};
const client = createAzureClient([context, subContext], WebPubSubManagementClient);
const wizard: AzureWizard<ICreateOrUpdateHubSettingContext> = new AzureWizard(wizardContext, {
title: localize('switchingAnonymousPolicy', `Switching anonymous connect policy from {0} to {1}`, node.hub.properties.anonymousConnectPolicy, targetPolicy),
promptSteps: [],
executeSteps: [new CreateOrUpdateHubSettingStep(client, false)]
});
await wizard.prompt();
wizardContext.activityTitle = utils.localize('switchingAnonymousPolicy', 'Switching anonymous connect policy for hub setting {0} from "{1}" to "{2}"', wizardContext.hubName, node.hub.properties.anonymousConnectPolicy, targetPolicy);
await wizard.execute();
ext.branchDataProvider.refresh();
}