public object Post(InitializationRequest request) { Log.Debug("starting Post(InitializationRequest request)"); InitializationRequestPayload initializationRequestPayload = request.InitializationRequestPayload; Log.Debug($"You sent me InitializationRequestPayload = {initializationRequestPayload}"); Log.Debug($"You sent me InitializationData = {initializationRequestPayload.InitializationData}"); // Initialize the plugin's data structures for this service/user/session/connection // ToDo: Figure out if the Initialization request from the GUI has any impact on the configuration or user data structures InitializationData initializationData = initializationRequestPayload.InitializationData; // Get the BaseServicesData and diskAnalysisServicesData instances that were injected into the DI container var baseServicesData = HostContext.TryResolve <BaseServicesData>(); var diskAnalysisServicesData = HostContext.TryResolve <DiskAnalysisServicesData>(); // Create the task's action // Copy the Plugin's current ConfigurationData structure to the response //ToDo: this is merely a placeholder until ConfigurationData is figured out ConfigurationData configurationData = diskAnalysisServicesData.ConfigurationData; // Copy the Plugin's current UserData structure to the response // ToDo: this is merely a placeholder until UserData is figured out UserData userData = diskAnalysisServicesData.UserData; // Create and populate the Response data structure InitializationResponsePayload initializationResponsePayload = new InitializationResponsePayload(configurationData, userData); InitializationResponse initializationResponse = new InitializationResponse(initializationResponsePayload); // return information about this service/user/session Log.Debug($"leaving Post(DiskAnalysisServicesInitializationRequest request), returning {initializationResponse}"); return(initializationResponse); }
// Add constant structures for configuration data and user data to be used when the GUI is displayed before it can initialize with the agent // Eventually localized protected override async Task OnInitAsync() { //Logger.LogDebug($"Starting OnInitAsync"); var initializationRequest = new Ace.Agent.DiskAnalysisServices.InitializationRequest(new Ace.Agent.DiskAnalysisServices.InitializationRequestPayload(new Ace.Agent.BaseServices.InitializationData())); //Logger.LogDebug($"Calling PostJsonAsync<InitializationResponse> with InitializationRequest ={initializationRequest}"); InitializationResponse = await HttpClient.PostJsonAsync <Ace.Agent.DiskAnalysisServices.InitializationResponse>("/DiskAnalysisServicesInitialization", initializationRequest); //Logger.LogDebug($"Returned from GetJsonAsync<Agent.BaseServices.InitializationResponse>, InitializationResponse = {InitializationResponse}"); ConfigurationData = InitializationResponse.InitializationResponsePayload.ConfigurationData; UserData = InitializationResponse.InitializationResponsePayload.UserData; //ToDo: trigger screen refresh ? //Logger.LogDebug($"Leaving OnInitAsync"); }