public BaseHandlerModule(IRetriever readonlyRepository, IMessageHandlerFactory messageHandlerFactory, IPersistStuff persister)
        {
            _messageHandlerFactory = messageHandlerFactory;
            _persister             = persister;
            this.RequiresHttps(true, null);
            Get["/{environment?dev}/{provider}"] = parameters =>
            {
                try
                {
                    var model = readonlyRepository.Get((string)parameters.environment, (string)parameters.provider);

                    var viewModel = new ViewModel
                    {
                        ConfigureModel = model,
                    };

                    return(View[viewModel]);
                }
                catch (Exception ex)
                {
                    return(ErrorResponse.FromException(ex).WithStatusCode(500));
                }
            };
            Post["/{environment?dev}/{provider}"] = parameters =>
            {
                var configureModel = readonlyRepository.Get(parameters.environment, parameters.provider) as ConfigureModel;

                string contents  = Respond(Request.Body, configureModel, parameters.provider);
                var    byteArray = Encoding.UTF8.GetBytes(contents);
                var    stream    = new MemoryStream(byteArray);
                return(Response.FromStream(stream, "text/xml; charset=utf-8"));
            };
            Post["/{environment?dev}/{provider}/Update"] = parameters =>
            {
                UpdateConfiguration(parameters.provider, parameters.environment);
                return(Response.AsRedirect($"/{(string) parameters.environment}/{(string) parameters.provider}"));
            };
        }
 public IPersistable Save(IPersistStuff persister)
 {
     return(persister.Save(this));
 }
 public ConfigureModelRepository(IPersistStuff persister)
 {
     _persister = persister;
 }
Esempio n. 4
0
 public Cache(IPersistStuff <T> backend)
 {
     this.backend = backend;
     keys         = new string[cacheSize];
     items        = new T[cacheSize];
 }
Esempio n. 5
0
 public VectorTiler(IPersistStuff <VectorQuadTile> testTileStore, TiledVectorLayer layer)
 {
     this.layer = layer;
     tileStore  = testTileStore;
 }