private async Task GetOrCommitTreeInput()

in Forge.TreeWalker/src/TreeWalkerSession.cs [1160:1185]


        private async Task<object> GetOrCommitTreeInput(object treeInput)
        {
            // Attempt to get a previously persisted TreeInput object in the rehydration case.
            try
            {
                return await this.Parameters.ForgeState.GetValue<object>(TreeInputSuffix).ConfigureAwait(false);
            }
            catch
            {
                if (treeInput == null)
                {
                    return null;
                }
            }

            // Persist the given TreeInput and return it.
            try
            {
                await this.Parameters.ForgeState.Set<object>(TreeInputSuffix, treeInput).ConfigureAwait(false);
                return treeInput;
            }
            catch
            {
                return null;
            }
        }