public async Task <SolutionServiceResult> AddSolutionSet(string guid, TSolution solution, CancellationToken cancellationToken)
        {
            if (solution == null)
            {
                throw new ArgumentNullException(nameof(solution));
            }
            cancellationToken.ThrowIfCancellationRequested();
            await SolutionSet.ClearSolutionMetadaAsync(cancellationToken);

            if (await SolutionSet.FetchSizeAsync(cancellationToken) > Configuration.MaxSet)
            {
                return(SolutionServiceResult.Full);
            }
            await SolutionSet.AddSolutionMetadataAsync(guid, solution, cancellationToken);

            return(SolutionServiceResult.Success);
        }