Beispiel #1
0
        internal Transactionfile RemoveFile(FileModel item)
        {
            JObject         payload     = null;
            Transactionfile transaction = null;

            try
            {
                payload     = item.Load();
                transaction = _loader.Remove(payload, item);
            }
            catch (System.IO.IOException e1)
            {
                Diagnostic.Append(new DiagnositcMessage()
                {
                    Severity = SeverityEnum.Error, File = item.FullPath, Text = e1.Message, Exception = e1
                });
            }
            catch (Exception e2)
            {
                Diagnostic.Append(new DiagnositcMessage()
                {
                    Severity = SeverityEnum.Error, File = item.FullPath, Text = e2.Message, Exception = e2
                });
            }

            if (transaction != null)
            {
                if (ItemFileHasChanged != null)
                {
                    lock (_lockFile)
                        ItemFileHasChanged(this, transaction);
                }
            }

            return(transaction);
        }
Beispiel #2
0
        internal Transactionfile Add(FileModel item, FileTracingEnum trace)
        {
            if (!item.Exist)
            {
                return(null);
            }

            JObject         payload     = null;
            Transactionfile transaction = null;

            try
            {
                payload = item.Load();
                if (payload != null)
                {
                    transaction = _loader.Add(payload, item);
                }
                else
                {
                }
            }
            catch (System.IO.IOException e1)
            {
                if (System.Diagnostics.Debugger.IsAttached)
                {
                    System.Diagnostics.Debugger.Break();
                }

                Diagnostic.Append(new DiagnositcMessage()
                {
                    Severity = SeverityEnum.Error, File = item.FullPath, Text = e1.Message, Exception = e1
                });

                transaction = new Transactionfile()
                {
                    File         = item,
                    FailedToLoad = true,
                };
            }
            catch (Exception e2)
            {
                if (System.Diagnostics.Debugger.IsAttached)
                {
                    System.Diagnostics.Debugger.Break();
                }

                Diagnostic.Append(new DiagnositcMessage()
                {
                    Severity = SeverityEnum.Error, File = item.FullPath, Text = e2.Message, Exception = e2
                });

                transaction = new Transactionfile()
                {
                    File         = item,
                    FailedToLoad = true,
                };
            }

            if (transaction != null && !transaction.FailedToLoad)
            {
                if (ItemFileHasChanged != null)
                {
                    lock (_lockFile)
                    {
                        transaction.Trace = trace;
                        ItemFileHasChanged(this, transaction);
                    }
                }
            }

            return(transaction);
        }