Example #1
0
 public HistoryEntry(string revisionId = default, HistoryEntryStatus status = HistoryEntryStatus.Behind, string authorName = default, string message = default, DateTimeOffset time = default, IReadOnlyList <IChangeEntry> changes = default)
 {
     Status     = status;
     RevisionId = revisionId;
     AuthorName = authorName;
     Message    = message;
     Time       = time;
     Changes    = changes;
 }
        /// <inheritdoc />
        public void RequestGoto(string revisionId, HistoryEntryStatus status)
        {
            switch (status)
            {
            case HistoryEntryStatus.Ahead:
                m_HistoryModel.RequestUpdateTo(revisionId);
                break;

            case HistoryEntryStatus.Current:
                m_HistoryModel.RequestRestoreTo(revisionId);
                break;

            case HistoryEntryStatus.Behind:
                m_HistoryModel.RequestGoBackTo(revisionId);
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(status), status, null);
            }
        }