SenseNet.ContentRepository.SavingAction.Approve C# (CSharp) Method

Approve() public method

public Approve ( ) : void
return void
        public void Approve()
        {
            AssertValidAction(StateAction.Approve);

            if (HasApproving)
            {
                //-- Approving ON
                switch (VersioningMode)
                {
                    case VersioningMode.None:
                        DeleteVersionsAndApprove();
                        break;
                    case VersioningMode.Major:
                        var workingIds = GetLastWorkingVersions().Select(x => x.VersionId);

                        DeletableVersionIds.AddRange(workingIds);
                        DeletableVersionIds.Remove(CurrentVersionId);

                        var lastApproved = GetLastApprovedVersion();

                        ExpectedVersion = lastApproved == null ?
                            ComputeNewVersion().ChangeStatus(VersionStatus.Approved) :
                            GetNextPublicVersion(lastApproved.VersionNumber, VersionStatus.Approved);

                        ExpectedVersionId = CurrentVersionId;
                        break;
                    case VersioningMode.Full:
                        ExpectedVersion = GetNextPublicVersion(VersionStatus.Approved);
                        ExpectedVersionId = this.CurrentVersionId;
                        break;
                }
            }
        }
        public void Reject()