Пример #1
0
        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);
        }
Пример #2
0
        // 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");
        }