Example #1
0
        protected uSyncAction ReportItem(string file)
        {
            try
            {
                var node = syncFileService.LoadXElement(file);

                try
                {
                    var change = serializer.IsCurrent(node);

                    var action = uSyncActionHelper <TObject>
                                 .ReportAction(change, node.GetAlias());

                    action.Message = "";

                    if (action.Change > ChangeType.NoChange)
                    {
                        action.Details = tracker.GetChanges(node);
                        if (action.Details == null || action.Details.Count() == 0)
                        {
                            action.Message = "Change details cannot be calculated";
                        }

                        action.Message = $"{action.Change.ToString()}";
                    }

                    return(action);
                }
                catch (FormatException fex)
                {
                    return(uSyncActionHelper <TObject>
                           .ReportActionFail(Path.GetFileName(file), $"format error {fex.Message}"));
                }
            }
            catch (Exception ex)
            {
                return(uSyncActionHelper <TObject>
                       .ReportActionFail(Path.GetFileName(file), $"Reporing error {ex.Message}"));
            }
        }