private static void AddNewDirectMissingFileErrors(FilePath fileName, ErrorListViewModel errors, ReferencedFileSave rfs) { var directErrorsFound = new List <ErrorViewModel>(); TryAddDirectMissingFileError(directErrorsFound, rfs); if (directErrorsFound.Any()) { var existingErrors = errors.Errors .Where(item => item is MissingFileErrorViewModel) .Select(item => item as MissingFileErrorViewModel); foreach (MissingFileErrorViewModel newError in directErrorsFound) { var alreadyExists = existingErrors.Any(item => item.AbsoluteMissingFile == newError.AbsoluteMissingFile); if (!alreadyExists) { lock (GlueState.ErrorListSyncLock) { errors.Errors.Add(newError); } } } } }
internal static void HandleFileReadError(FilePath filePath, ErrorListViewModel errorListViewModel) { TaskManager.Self.AddSync(() => { ErrorCreateRemoveLogic.AddNewErrorsForFileReadError(filePath, errorListViewModel); }, $"Handle file read error {filePath}"); }
public RealTimeStatusDataViewModel(RealTimeStatusDataModel RealTimeStatusDataModel, PrinterViewModel PrinterViewModel, SerialCommunicationCommandSetsModel SerialCommunicationCommandSetsModel, ErrorListViewModel ErrorListViewModel) { _realTimeStatusDataModel = RealTimeStatusDataModel; _printerViewModel = PrinterViewModel; _serialCommunicationCommandSetsModel = SerialCommunicationCommandSetsModel; _errorListViewModel = ErrorListViewModel; Initialize(); //Subscribe to events. _realTimeStatusDataModel.RecordSetAxisExecuted += new RecordSetAxisExecutedEventHandler(UpdateRecordSetAxis); _realTimeStatusDataModel.RecordSetMotorizedPrintheadExecuted += new RecordSetMotorizedPrintheadExecutedEventHandler(UpdateSetPrinthead); _realTimeStatusDataModel.RecordSetValvePrintheadExecuted += new RecordSetValvePrintheadExecutedEventHandler(UpdateSetPrinthead); _realTimeStatusDataModel.RecordMoveAxesExecuted += new RecordMoveAxesExecutedEventHandler(UpdateRecordMoveAxes); _realTimeStatusDataModel.RecordMotorizedPrintWithMovementExecuted += new RecordMotorizedPrintWithMovementExecutedEventHandler(UpdateRecordMotorizedPrintWithMovement); _realTimeStatusDataModel.RecordValvePrintWithMovementExecuted += new RecordValvePrintWithMovementExecutedEventHandler(UpdateRecordValvePrintWithMovement); _realTimeStatusDataModel.RecordMotorizedPrintWithoutMovementExecuted += new RecordMotorizedPrintWithoutMovementExecutedEventHandler(UpdateRecordMotorizedPrintWithoutMovement); _realTimeStatusDataModel.RecordValvePrintWithoutMovementExecuted += new RecordValvePrintWithoutMovementExecutedEventHandler(UpdateRecordValvePrintWithoutMovement); _realTimeStatusDataModel.RecordValveCloseExecuted += new RecordValveCloseExecutedEventHandler(UpdateRecordValveClose); _realTimeStatusDataModel.TaskQueuedMessagesUpdated += new TaskQueuedMessagesUpdatedEventHandler(UpdateTaskQueuedMessages); _realTimeStatusDataModel.ErrorMessagesUpdated += new ErrorMessagesUpdatedEventHandler(UpdateErrorMessages); _realTimeStatusDataModel.RecordLimitExecuted += new RecordLimitExecutedEventHandler(UpdatePositions); _realTimeStatusDataModel.RealTimeStatusDataAborted += new RealTimeStatusDataAbortedEventHandler(Abort); _serialCommunicationCommandSetsModel.CommandSetPositionChanged += new CommandSetPositionChangedEventHandler(UpdatePositions); }
private static void AddNewIndirectMissingFileErrors(ErrorListViewModel errors) { // can only be an indirect error if the file can reference content // Update - but the changed file can be referenced too, even though // it itself may not reference content (like a png) //var canReferenceContent = FileHelper.DoesFileReferenceContent(fileName.Standardized); //if(canReferenceContent) // If a file changes, then we need to see if there are any indirect missing files caused by the change. // The easiest way to do this is to perform a full scan and not add dupes: var indirectErrorsFound = new List <ErrorViewModel>(); var allFiles = GlueState.Self.GetAllReferencedFiles(); foreach (var file in allFiles) { TryAddIndirectMissingFileErrors(indirectErrorsFound, file); } // now add them: var existingIndirects = errors.Errors.Where(item => item is IndirectMissingFileErrorViewModel).Select(item => item as IndirectMissingFileErrorViewModel); foreach (var candidateToAdd in indirectErrorsFound) { var shouldAdd = existingIndirects.Any(item => item.Matches(candidateToAdd)) == false; if (shouldAdd) { lock (GlueState.ErrorListSyncLock) { errors.Errors.Add(candidateToAdd); } } } }
public List <ErrorListViewModel> GetAllErrorLogs(int appID) { List <ErrorListViewModel> logs = new List <ErrorListViewModel>(); using (ErrorLoggerDBContext context = new ErrorLoggerDBContext()) { try { var app = context.Applications.Where(x => x.ApplicationId.Equals(appID)).First(); foreach (Error err in app.errors) { ErrorListViewModel errorView = new ErrorListViewModel { logLevel = err.logLevel, errorDescription = err.errorDescription, timestamp = Convert.ToDateTime(err.timestamp), exceptionMessage = err.exceptionMessage, appID = err.applicationID, applicationName = app.applicationName }; logs.Add(errorView); } } catch (Exception ex) { Log.Error(string.Format("Function : GetAllErrorLogs CustomizeDeveloperMessage: Not able to get Errors for application {0}. Excetion Message: {1} ", appID, ex)); throw new Exception(string.Format("CustomizeDeveloperMessage: Not able to get Errors for application {0}. ", appID)); } } return(logs); }
public static void RefreshAllErrors(ErrorListViewModel errorListViewModel) { TaskManager.Self.AddSync(() => { // todo - need to store a list of IErrorReporter's somewhere, and loop through them // here lock (GlueState.ErrorListSyncLock) { errorListViewModel.Errors.Clear(); } var reporters = Container.Get <List <IErrorReporter> >(); foreach (var reporter in reporters) { var errors = reporter.GetAllErrors(); foreach (var error in errors) { lock (GlueState.ErrorListSyncLock) { errorListViewModel.Errors.Add(error); } } } } , "Refresh all errors"); }
public GCodeConverterModel(PrinterModel PrinterModel, PrintModel PrintModel, RealTimeStatusDataModel RealTimeStatusDataModel, ErrorListViewModel ErrorListViewModel) { _printerModel = PrinterModel; _printModel = PrintModel; _realTimeStatusDataModel = RealTimeStatusDataModel; _errorListViewModel = ErrorListViewModel; InstantiateGCodeConverterClasses(); }
public XMLDeserializerInitializeModel(ErrorListViewModel ErrorListViewModel) : base(ErrorListViewModel) { //XmlReader will be instantiated and disposed of in derived class methods. //XML Reader Settings. _xmlReaderSettings = new XmlReaderSettings(); _xmlReaderSettings.ConformanceLevel = ConformanceLevel.Fragment; _xmlReaderSettings.CloseInput = true; }
private ErrorListViewModel GetdefaultErrorListViewModel() { if (_defaultErrorListViewModel == null) { var iconSource = LoggerModule.CreateImageSource(@"Icons/BuildErrorList_16x.png"); _defaultErrorListViewModel = new ErrorListViewModel(this, iconSource); } return(_defaultErrorListViewModel); }
public SaveLoadViewModel(GCodeManagerViewModel GCodeManagerViewModel, PrinterViewModel PrinterViewModel, PrintViewModel PrintViewModel, ErrorListViewModel ErrorListViewModel) { _gCodeManagerViewModel = GCodeManagerViewModel; _printerViewModel = PrinterViewModel; _printViewModel = PrintViewModel; _errorListViewModel = ErrorListViewModel; _modiPrintXMLSerializerModel = new ModiPrintXMLSerializerModel(_gCodeManagerViewModel, _printerViewModel, _printViewModel, _errorListViewModel); _modiPrintXMLDeserializerModel = new ModiPrintXMLDeserializerModel(_gCodeManagerViewModel, _printerViewModel, _printerViewModel.GPIOPinListsViewModel, _printViewModel, _errorListViewModel); }
internal static void HandleFileChange(FilePath filePath, ErrorListViewModel errorListViewModel) { TaskManager.Self.AddSync(() => { // Add new errors: ErrorCreateRemoveLogic.AddNewErrorsForChangedFile(filePath, errorListViewModel); ErrorCreateRemoveLogic.RemoveFixedErrorsForChangedFile(filePath, errorListViewModel); }, $"Handle file change {filePath}"); }
public RealTimeStatusSerialInterpreterModel(SerialCommunicationMainModel SerialCommunicationMainModel, PrinterModel PrinterModel, PrinterViewModel PrinterViewModel, RealTimeStatusDataModel RealTimeStatusDataModel, ErrorListViewModel ErrorListViewModel) { _serialCommunicationMainModel = SerialCommunicationMainModel; _printerModel = PrinterModel; _printerViewModel = PrinterViewModel; _realTimeStatusDataModel = RealTimeStatusDataModel; _errorListViewModel = ErrorListViewModel; _serialCommunicationMainModel.SerialCommunicationMessageReceived += new SerialCommunicationMessageReceivedEventHandler(SerialCommunicationMessageReceived); }
public XMLSerializerInitializeModel(ErrorListViewModel ErrorListViewModel) : base(ErrorListViewModel) { //StringWriter and XmlWriter will be instantiated and disposed of in derived class methods. //XML Writer Settings. _xmlWriterSettings = new XmlWriterSettings(); _xmlWriterSettings.Indent = true; _xmlWriterSettings.NewLineOnAttributes = true; _xmlWriterSettings.ConformanceLevel = ConformanceLevel.Fragment; _xmlWriterSettings.OmitXmlDeclaration = true; _xmlWriterSettings.CloseOutput = true; }
public CalibrationModel(RealTimeStatusDataModel RealTimeStatusDataModel, PrinterModel PrinterModel, SerialCommunicationOutgoingMessagesModel SerialCommunicationOutgoingMessagesModel, ErrorListViewModel ErrorListViewModel) { _realTimeStatusDataModel = RealTimeStatusDataModel; _printerModel = PrinterModel; _serialCommunicationOutgoingMessagesModel = SerialCommunicationOutgoingMessagesModel; ParametersModel parametersModel = new ParametersModel(_printerModel, null); _writeSetAxisModel = new WriteSetAxisModel(parametersModel); _errorListViewModel = ErrorListViewModel; }
public ManualControlModel(PrinterModel PrinterModel, SerialCommunicationOutgoingMessagesModel SerialCommunicationOutgoingMessagesModel, RealTimeStatusDataModel RealTimeStatusDataModel, ErrorListViewModel ErrorListViewModel) { _printerModel = PrinterModel; _serialCommunicationOutgoingMessagesModel = SerialCommunicationOutgoingMessagesModel; _realTimeStatusDataModel = RealTimeStatusDataModel; _errorListViewModel = ErrorListViewModel; ParametersModel parametersModel = new ParametersModel(_printerModel, null); _writeSetPrintheadModel = new WriteSetPrintheadModel(parametersModel); _writeSetAxisModel = new WriteSetAxisModel(parametersModel); }
private static void CreateItem(ErrorListViewModel newItem) { HttpClient client = new HttpClient(); client.BaseAddress = new Uri(SERVICE_URL); var response = client.PostAsJsonAsync(GENERAL_ACTION, newItem).Result; if (response.StatusCode.Equals(System.Net.HttpStatusCode.InternalServerError)) { Log.Debug("Post Fail. Exception Message : " + response.ReasonPhrase); } }
public static void AddNewErrorsForChangedFile(FilePath fileName, ErrorListViewModel errors) { var rfs = GlueCommands.Self.FileCommands.GetReferencedFile(fileName.Standardized); if (rfs != null) { AddNewDirectMissingFileErrors(fileName, errors, rfs); } AddNewIndirectMissingFileErrors(errors); AddFileParseErrors(fileName, errors); }
public SerialCommunicationCommandSetsModel( RealTimeStatusDataModel RealTimeStatusDataModel, SerialCommunicationMainModel SerialCommunicationMainModel, PrinterModel PrinterModel, PrintModel PrintModel, ErrorListViewModel ErrorListViewModel) { _realTimeStatusDataModel = RealTimeStatusDataModel; _serialCommunicationMainModel = SerialCommunicationMainModel; _printerModel = PrinterModel; _printModel = PrintModel; _errorListViewModel = ErrorListViewModel; ParametersModel parametersModel = new ParametersModel(_printerModel, null); _writeSetAxisModel = new WriteSetAxisModel(parametersModel); _setWritePrintheadModel = new SetWritePrintheadModel(parametersModel); }
public ModiPrintXMLDeserializerModel(GCodeManagerViewModel GCodeManagerViewModel, PrinterViewModel PrinterViewModel, GPIOPinListsViewModel GPIOPinListsViewModel, PrintViewModel PrintViewModel, ErrorListViewModel ErrorListViewModel) : base(ErrorListViewModel) { //ModiPrint parts. _gCodeManagerViewModel = GCodeManagerViewModel; _printerViewModel = PrinterViewModel; _gPIOPinListsViewModel = GPIOPinListsViewModel; _printViewModel = PrintViewModel; //XML Serializers. _gCodeManagerXMLDeserializerModel = new GCodeManagerXMLDeserializerModel(_errorListViewModel); _printerXMLDeserializerModel = new PrinterXMLDeserializerModel(_gPIOPinListsViewModel, _printerViewModel, _errorListViewModel); _printXMLDeserializerModel = new PrintXMLDeserializerModel(_printerViewModel, _errorListViewModel); }
internal static void RemoveFixedErrorsForChangedFile(FilePath filePath, ErrorListViewModel errorListViewModel) { for (int i = errorListViewModel.Errors.Count - 1; i > -1; i--) { var error = errorListViewModel.Errors[i]; if (error.ReactsToFileChange(filePath) && error.GetIfIsFixed()) { lock (GlueState.ErrorListSyncLock) { errorListViewModel.Errors.RemoveAt(i); } } } }
public override void StartUp() { control = new ErrorWindow(); tab = AddToTab(PluginManager.BottomTab, control, "Errors"); errorListViewModel = GlueState.Self.ErrorList; errorListViewModel.Errors.CollectionChanged += HandleErrorsCollectionChanged; errorListViewModel.RefreshClicked += HandleRefreshClicked; control.DataContext = errorListViewModel; this.ReactToLoadedGlux += HandleLoadedGlux; this.ReactToFileChangeHandler += HandleFileChanged; this.ReactToFileRemoved += HandleFileRemoved; this.ReactToUnloadedGlux += HandleUnloadedGlux; this.ReactToFileReadError += HandleFileReadError; }
public static void RefreshAllErrors(ErrorListViewModel errorListViewModel) { TaskManager.Self.AddSync(() => { lock (GlueState.ErrorListSyncLock) { errorListViewModel.Errors.Clear(); } var missingFiles = ErrorCreateRemoveLogic.GetMissingFileErrorViewModels(); foreach (var missingFile in missingFiles) { lock (GlueState.ErrorListSyncLock) { errorListViewModel.Errors.Add(missingFile); } } } , "Refresh all errors"); }
public override void StartUp() { EditorObjects.IoC.Container.Get <List <IErrorReporter> >() .Add(new ErrorCreateRemoveLogic()); control = new ErrorWindow(); tab = AddToTab(PluginManager.BottomTab, control, "Errors"); errorListViewModel = GlueState.Self.ErrorList; errorListViewModel.Errors.CollectionChanged += HandleErrorsCollectionChanged; errorListViewModel.RefreshClicked += HandleRefreshClicked; control.DataContext = errorListViewModel; this.ReactToLoadedGlux += HandleLoadedGlux; this.ReactToFileChangeHandler += HandleFileChanged; this.ReactToFileRemoved += HandleFileRemoved; this.ReactToUnloadedGlux += HandleUnloadedGlux; this.ReactToFileReadError += HandleFileReadError; }
private static void AddFileParseErrors(FilePath fileName, ErrorListViewModel errors) { var generalResponse = GlueCommands.Self.FileCommands.GetLastParseResponse(fileName); if (generalResponse.Succeeded == false) { var existingFileParseErrors = errors.Errors .Where(item => item is FileParseErrorViewModel) .Select(item => item as FileParseErrorViewModel) .Where(item => item.FilePath == fileName && item.GeneralResponse.Message == generalResponse.Message); if (existingFileParseErrors.Count() == 0) { // add it: FileParseErrorViewModel newError = new FileParseErrorViewModel(fileName, generalResponse); lock (GlueState.ErrorListSyncLock) { errors.Errors.Add(newError); } } } }
public ParametersModel(PrinterModel PrinterModel, ErrorListViewModel ErrorListViewModel) { _printerModel = PrinterModel; _xCoord = new CoordinateModel(CoordinateType.X, true, this, 0, 0, 0); _yCoord = new CoordinateModel(CoordinateType.Y, true, this, 0, 0, 0); _zCoord = new CoordinateModel(CoordinateType.Z, true, this, 0, 0, 0); _eRepRapCoord = new CoordinateModel(CoordinateType.S, false, this, 0, 0, 0); // _dropletModel is not set yet. A new material must be set before this class is instantiated. //This program needs to track the E coordinates for each of its printheads. //Some printheads, such as the valve-based ones, do not need to track E. //It's easier to just create an E coordinate for every printhead though. //The index of the E coordinate list equals the index of the Printer's Printheads list. foreach (PrintheadModel printheadModel in _printerModel.PrintheadModelList) { _eModiPrintCoordList.Add(new CoordinateModel(CoordinateType.E, true, this, 0, 0, 0)); } _errorReporterViewModel = new ErrorReporterViewModel(ErrorListViewModel); }
public void log(string error_, int logLevel_, Exception ex = null) { ErrorListViewModel err = new ErrorListViewModel() { errorDescription = error_, logLevel = (LogLevelEnum)logLevel_, timestamp = DateTime.Now, appID = appID_ }; if (ex != null) { err.exceptionMessage = ex.Message; } try { CreateItem(err); } catch (Exception exception) { Log.Error("Exception caught in DLLLibrary exception block. Exception :" + exception.Message); } }
public ContinuousPrintStyleXMLDeserializerModel(ErrorListViewModel ErrorListViewModel) : base(ErrorListViewModel) { }
internal static void AddNewErrorsForFileReadError(FilePath filePath, ErrorListViewModel errorListViewModel) { AddFileParseErrors(filePath, errorListViewModel); }
internal static void RemoveFixedErrorsForRemovedRfs(ReferencedFileSave removedFile, ErrorListViewModel errorListViewModel) { FilePath filePath = GlueCommands.Self.GetAbsoluteFileName(removedFile); for (int i = errorListViewModel.Errors.Count - 1; i > -1; i--) { var error = errorListViewModel.Errors[i]; if (error.ReactsToFileChange(filePath) && error.GetIfIsFixed()) { lock (GlueState.ErrorListSyncLock) { errorListViewModel.Errors.RemoveAt(i); } } } }
public PrintXMLDeserializerModel(PrinterViewModel PrinterViewModel, ErrorListViewModel ErrorListViewModel) : base(ErrorListViewModel) { _materialXMLDeserializerModel = new MaterialXMLDeserializerModel(PrinterViewModel, ErrorListViewModel); }