// Access the Logging extensions registered in the DI container //[Inject] //public ILogger<BaseServicesCodeBehind> Log { get; set; } //[Inject] //protected SessionStorage sessionStorage; //[Inject] //protected LocalStorage localStorage; #endregion #region Page Initialization Handler protected override async Task OnInitAsync() { //Log.LogDebug($"Starting OnInitAsync"); ////Log.LogDebug($"Initializing IServiceClient"); ////IServiceClient client = new JsonHttpClient("http://localhost:21100"); ////Log.LogDebug($"client is null: {client == null}"); /* // from teh stateless statemachine compiler project * const string on = "On"; * const string off = "Off"; * const char space = ' '; * var onOffSwitch = new StateMachine<string, char>(off); * onOffSwitch.Configure(off).Permit(space, on); * onOffSwitch.Configure(on).Permit(space, off); */ var initializationRequest = new InitializationRequest(new InitializationRequestPayload(new InitializationData("BaseVersionXX", "MachineIDXX", "userIDxx"))); //Log.LogDebug($"Calling PostJsonAsync<InitializationResponse> with InitializationRequest = {InitializationRequest}"); InitializationResponse = await HttpClient.PostJsonAsync <InitializationResponse>("/BaseServicesInitialization", initializationRequest); //Log.LogDebug($"Returned from PostJsonAsync<InitializationResponse>, InitializationResponse = {InitializationResponse}"); ConfigurationData = InitializationResponse.InitializationResponsePayload.ConfigurationData; UserData = InitializationResponse.InitializationResponsePayload.UserData; PartitionInfoExs = new PartitionInfoExs(); LongRunningTasksCOD = new ConcurrentObservableDictionary <Id <LongRunningTaskInfo>, LongRunningTaskStatus>(); //Log.LogDebug($"Leaving OnInitAsync"); }
// Extension methods to populate a ComputerHardware object public static ATAP.Utilities.ComputerInventory.ComputerHardware FromComputerName(this ATAP.Utilities.ComputerInventory.ComputerHardware me, string computerName) { ATAP.Utilities.ComputerInventory.ComputerHardware lCH; switch (computerName.Trim().ToLowerInvariant()) { //ToDo: read actual HW, currently specific for laptop case "localhost": // create the partitions COD for drive 2 //Log.Debug("in ComputerHardware.FromComputerName initializer"); var partitionInfoExs = new PartitionInfoExs(); PartitionInfoEx PIE1 = new PartitionInfoEx() { DriveLetters = new List <string>() { "E" }, Exceptions = new List <Exception>(), PartitionDbId = new Id <PartitionInfoEx>(Guid.Empty), PartitionId = new Id <PartitionInfoEx>(Guid.NewGuid()), Size = 1000000000000 }; partitionInfoExs.PartitionInfoExCOD.Add(PIE1.PartitionId, PIE1); DiskDriveInfoEx DDIE0 = new DiskDriveInfoEx() { DiskDriveId = new Id <DiskDriveInfoEx>(Guid.NewGuid()), DiskDriveDbId = new Id <DiskDriveInfoEx>(Guid.Empty), DiskDriveMaker = DiskDriveMaker.Generic, DiskDriveType = DiskDriveType.SSD, SerialNumber = "123", PartitionInfoExs = partitionInfoExs, Exceptions = new List <Exception>() }; var diskDriveInfoExs = new DiskDriveInfoExs(); diskDriveInfoExs.DiskDriveInfoExCOD.Add(DDIE0.DiskDriveId, DDIE0); lCH = new ComputerHardware(new MainBoard(MainBoardMaker.Generic, CPUSocket.Generic), new List <CPUMaker> { CPUMaker.Intel }, diskDriveInfoExs.DiskDriveInfoExCOD, new TimeBlock(DateTime.UtcNow, true)); break; default: throw new NotImplementedException($"cannot populate ComputerHardware object from computerName = {computerName}"); } return(lCH); }