public async Task <Result <Unit, Contracts.Error> > NewAsync(string galleryName)
        {
            var result = await Name.FromString(galleryName)
                         .AndThenAsync(name => _storage.Persist(name, Configuration.ProcessingConfiguration.Default)
                                       .AndThenAsync(_ => _securityStorage.Persist(name, Security.SecurityConfiguration.Default)));

            return(result.MapFailure(ErrorExtensions.ToContract));
        }
        public async Task <Result <Unit, Contracts.Error> > SetAsync(string galleryName, Contracts.SecurityConfiguration configuration)
        {
            var result = await Name.FromString(galleryName)
                         .AndThenAsync(gallery => ToConfiguration(configuration)
                                       .AndThenAsync(config => _storage.Persist(gallery, config)));

            return(result.MapFailure(ErrorExtensions.ToContract));
        }