protected HeadResourceReducerBase(IWebClientWrapper webClientWrapper, IStore store, IMinifier minifier, IUriBuilder uriBuilder) { WebClientWrapper = webClientWrapper; this.uriBuilder = uriBuilder; this.minifier = minifier; this.store = store; }
public string Request(IUriBuilder uriBuilder, HttpMethod method, Dictionary<string, object> parameters, byte[] body) { Func<int, string, string> buildExceptionMessage; var request = BuildRequest(uriBuilder, method, parameters, body, out buildExceptionMessage); return GetContent(request, buildExceptionMessage); }
public DbDiskCache(IFileWrapper fileWrapper, IRRConfiguration configuration, IUriBuilder uriBuilder) : base(fileWrapper, configuration, uriBuilder, null) { RRTracer.Trace("Creating db disk cache"); const int interval = 1000 * 60 * 5; timer = new Timer(PurgeOldFiles, null, 0, interval); }
public ReducedContentHandler(IRRConfiguration config, IHostingEnvironmentWrapper hostingEnvironment, IUriBuilder uriBuilder, IStore store) { this.config = config; this.hostingEnvironment = hostingEnvironment; this.uriBuilder = uriBuilder; this.store = store; }
private static WebRequest BuildRequest(IUriBuilder uriBuilder, HttpMethod method, Dictionary <string, object> parameters, byte[] body, string accessToken, out Func <int, string, string> buildExceptionMessage) { var uri = uriBuilder.AddQueryParameters(parameters).Build(); var request = WebRequest.Create(uri); request.Method = method.GetParameterName(); request.ContentType = "application/json"; body = body ?? new byte[0]; if (method == HttpMethod.Post && body.Length > 0) { request.ContentLength = body.Length; using (var requestStream = request.GetRequestStream()) { requestStream.Write(body, 0, body.Length); requestStream.Flush(); } } else { request.ContentLength = 0; } request.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip, deflate"); request.Headers.Add("Authorization", "OAuth " + accessToken); buildExceptionMessage = (statusCode, content) => string.Format("WebRequest exception. Parameters: method = {1}, uri = {0}. Response: {2} - {3}.", uri.AbsoluteUri, method, statusCode, content); return(request); }
public string Request(IUriBuilder uriBuilder, HttpMethod method, Dictionary <string, object> parameters, byte[] body, string accessToken) { Func <int, string, string> buildExceptionMessage; var request = BuildRequest(uriBuilder, method, parameters, body, accessToken, out buildExceptionMessage); return(GetContent(request, buildExceptionMessage)); }
public GoogleReaderClientLogin(string username, string password, IHttpService httpService, IUriBuilder urlBuilder) { Username = username; Password = password; _httpService = httpService; _urlBuilder = urlBuilder; }
public DbDiskCache(IFileWrapper fileWrapper, IRRConfiguration configuration, IUriBuilder uriBuilder) : base(fileWrapper, configuration, uriBuilder, null) { RRTracer.Trace("Creating db disk cache"); const int interval = 1000*60*5; timer = new Timer(PurgeOldFiles, null, 0, interval); _cacheLock = new ReaderWriterLockSlim(); }
public SpriteManager(IWebClientWrapper webClientWrapper, IRRConfiguration config, IUriBuilder uriBuilder, IStore store) { this.webClientWrapper = webClientWrapper; this.uriBuilder = uriBuilder; this.store = store; this.config = config; SpriteContainer = new SpriteContainer(webClientWrapper); }
public DashboardHandler(IRRConfiguration config, IIpFilter ipFilter, IReducingQueue queue, IReductionRepository repo, IUriBuilder uriBuilder) { this.config = config; this.ipFilter = ipFilter; this.queue = queue; this.repo = repo; this.uriBuilder = uriBuilder; }
public ResponseTransformer(IReductionRepository reductionRepository, IReducingQueue reducingQueue, HttpContextBase context, IRRConfiguration config, IUriBuilder uriBuilder) { this.reductionRepository = reductionRepository; this.reducingQueue = reducingQueue; this.context = context; this.config = config; this.uriBuilder = uriBuilder; }
public SqlServerStore(IUriBuilder uriBuilder, IFileRepository repository, IStore fileStore, IReductionRepository reductionRepository) { RRTracer.Trace("Sql Server Store Created."); this.uriBuilder = uriBuilder; this.repository = repository; this.fileStore = fileStore; this.reductionRepository = reductionRepository; }
public Stream RequestStream(IUriBuilder uriBuilder, HttpMethod method, Dictionary<string, object> parameters, byte[] body) { Func<int, string, string> buildExceptionMessage; var request = BuildRequest(uriBuilder, method, parameters, body, out buildExceptionMessage); var response = GetResponse(request, (statusCode, content) => string.Format("RequestStream exception. Parameters: method = {1}, uri = {0}. Response: {2} - {3}.", uriBuilder.Build(), method, statusCode, content)); return response.GetResponseStream(); }
public SqlServerStore(IUriBuilder uriBuilder, IFileRepository repository, LocalDiskStore fileStore, IReductionRepository reductionRepository) { RRTracer.Trace("Sql Server Store Created."); this.uriBuilder = uriBuilder; this.repository = repository; FileStore = fileStore; this.reductionRepository = reductionRepository; }
public HateoasLinksBuilder(IUriBuilder uriBuilder) { Transformations = new Dictionary <string, Func <TResource, TEntity, HateoasLink> >(); Lambdas = new Dictionary <string, Func <TResource, HateoasLink> >(); Links = new Dictionary <string, HateoasLink>(); UriBuilder = uriBuilder; }
public LocalDiskStore(IFileWrapper fileWrapper, IRRConfiguration configuration, IUriBuilder uriBuilder) { this.fileWrapper = fileWrapper; this.configuration = configuration; configuration.PhysicalPathChange += SetupWatcher; this.uriBuilder = uriBuilder; SetupWatcher(); }
public FlushHandler(IRRConfiguration configuration, IHostingEnvironmentWrapper hostingEnvironment, IIpFilter ipFilter, IReducingQueue queue, IUriBuilder uriBuilder, IStore store) { this.configuration = configuration; this.hostingEnvironment = hostingEnvironment; this.ipFilter = ipFilter; this.queue = queue; this.uriBuilder = uriBuilder; this.store = store; }
public Reducer(IWebClientWrapper webClientWrapper, IStore store, IMinifier minifier, ISpriteManager spriteManager, ICssImageTransformer cssImageTransformer, IUriBuilder uriBuilder) { this.webClientWrapper = webClientWrapper; this.cssImageTransformer = cssImageTransformer; this.uriBuilder = uriBuilder; this.spriteManager = spriteManager; this.minifier = minifier; this.store = store; }
public Stream RequestStream(IUriBuilder uriBuilder, HttpMethod method, Dictionary <string, object> parameters, byte[] body, string accessToken) { Func <int, string, string> buildExceptionMessage; var request = BuildRequest(uriBuilder, method, parameters, body, accessToken, out buildExceptionMessage); var response = GetResponse(request, (statusCode, content) => string.Format("RequestStream exception. Parameters: method = {1}, uri = {0}. Response: {2} - {3}.", uriBuilder.Build(), method, statusCode, content)); return(response.GetResponseStream()); }
public RestClient(HttpClient httpClient, IUriBuilder uriBuilder, string apiToken) { _httpClient = httpClient; _uriBuilder = uriBuilder; _apiToken = apiToken; SetupHttpClient(); }
public SpriteManager(IWebClientWrapper webClientWrapper, IRRConfiguration config, IUriBuilder uriBuilder, IStore store, IPngOptimizer pngOptimizer) { this.webClientWrapper = webClientWrapper; this.uriBuilder = uriBuilder; this.store = store; this.pngOptimizer = pngOptimizer; this.config = config; SpriteContainer = new SpriteContainer(webClientWrapper, config); }
public LocalDiskStore(IFileWrapper fileWrapper, IRRConfiguration configuration, IUriBuilder uriBuilder, IReductionRepository reductionRepository) { this.fileWrapper = fileWrapper; this.configuration = configuration; configuration.PhysicalPathChange += SetupWatcher; this.uriBuilder = uriBuilder; this.reductionRepository = reductionRepository; if(configuration.IsFullTrust) SetupWatcher(); }
public HttpRequestBuilder( IUriBuilder uriBuilder, IClock clock, ISignatureBuilder signatureBuilder, IAllHttpHeadersBuilder allHttpHeadersBuilder) { _uriBuilder = uriBuilder; _clock = clock; _signatureBuilder = signatureBuilder; _allHttpHeadersBuilder = allHttpHeadersBuilder; }
public LocalDiskStore(IFileWrapper fileWrapper, IRRConfiguration configuration, IUriBuilder uriBuilder, IReductionRepository reductionRepository) { FileWrapper = fileWrapper; this.configuration = configuration; configuration.PhysicalPathChange += SetupWatcher; this.uriBuilder = uriBuilder; ReductionRepository = reductionRepository; if (configuration.IsFullTrust) { SetupWatcher(); } }
public RestRequestAdapter(IUriBuilder uriBuilder, IHttpClientRequest httpClientRequest) { if (uriBuilder == null) { throw new ArgumentNullException("uriBuilder"); } if (httpClientRequest == null) { throw new ArgumentNullException("httpClientRequest"); } _uriBuilder = uriBuilder; _httpClientRequest = httpClientRequest; }
public void SetUp() { _request = new Request { Arguments = new List <KeyValuePair <string, string> >(), UriPath = "uri/path", StartsAtIndex = 0 }; _mockedConfiguration = new Mock <IConfigurationWrapper>(); _mockedConfiguration .Setup(it => it.ValueFor(It.IsAny <string>())) .Returns("base-uri"); _mockedUriQueryBuilder = new Mock <IUriQueryBuilder>(); _mockedUriQueryBuilder .Setup(it => it.Build(It.IsAny <IEnumerable <KeyValuePair <string, string> > >())) .Returns("query-built"); _builder = new UriBuilder(_mockedConfiguration.Object, _mockedUriQueryBuilder.Object); }
public void SetUp() { _request = new Request { Arguments = new List<KeyValuePair<string, string>>(), UriPath = "uri/path", StartsAtIndex = 0 }; _mockedConfiguration = new Mock<IConfigurationWrapper>(); _mockedConfiguration .Setup(it => it.ValueFor(It.IsAny<string>())) .Returns("base-uri"); _mockedUriQueryBuilder = new Mock<IUriQueryBuilder>(); _mockedUriQueryBuilder .Setup(it => it.Build(It.IsAny<IEnumerable<KeyValuePair<string, string>>>())) .Returns("query-built"); _builder = new UriBuilder(_mockedConfiguration.Object, _mockedUriQueryBuilder.Object); }
private static WebRequest BuildRequest(IUriBuilder uriBuilder, HttpMethod method, Dictionary <string, object> parameters, byte[] body, out Func <int, string, string> buildExceptionMessage) { var uri = method != HttpMethod.Put ? uriBuilder.AddQueryParameters(parameters).Build() : uriBuilder.Build(); var request = WebRequest.Create(uri); request.Method = method.GetParameterName(); request.ContentType = "application/json"; body = body ?? new byte[0]; if (method == HttpMethod.Put) { var serializer = new SoundCloud.API.Client.Internal.Infrastructure.Serialization.JsonSerializer(); var serialized = serializer.Serialize(parameters); body = Encoding.UTF8.GetBytes(serialized); } if ((method == HttpMethod.Post || method == HttpMethod.Put) && body.Length > 0) { request.ContentLength = body.Length; using (var requestStream = request.GetRequestStream()) { requestStream.Write(body, 0, body.Length); requestStream.Flush(); } } else { request.ContentLength = 0; } request.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip, deflate"); buildExceptionMessage = (statusCode, content) => string.Format("WebRequest exception. Parameters: method = {1}, uri = {0}. Response: {2} - {3}.", uri.AbsoluteUri, method, statusCode, content); return(request); }
public Navigator(NavigationManager navigationManager, IQueryParser queryParser, IUriBuilder uriBuilder) { _navigationManager = navigationManager; _queryParser = queryParser; _uriBuilder = uriBuilder; }
public UriBuilderDirector(IUriBuilder uriBuilder) { _uriBuilder = uriBuilder; }
public SqlServerStore(IUriBuilder uriBuilder, IFileRepository repository, IStore fileStore) { this.uriBuilder = uriBuilder; this.repository = repository; this.fileStore = fileStore; }
public JavaScriptReducer(IWebClientWrapper webClientWrapper, IStore store, IMinifier minifier, IUriBuilder uriBuilder, IRRConfiguration config, IResponseDecoder responseDecoder) : base(webClientWrapper, store, minifier, uriBuilder) { this.config = config; this.responseDecoder = responseDecoder; }
public DbDiskCache(IFileWrapper fileWrapper, IRRConfiguration configuration, IUriBuilder uriBuilder) : base(fileWrapper, configuration, uriBuilder) { const int interval = 1000*60*5; timer = new Timer(PurgeOldFiles, null, 0, interval); }
public RestRequestAdapter GetXmlRestRequest(IUriBuilder uriBuilder) { var xmlRequest = new RestRequest(new XmlSerializer()); return new RestRequestAdapter(uriBuilder, xmlRequest); }
public FakeLocalDiskStore(IFileWrapper fileWrapper, IRRConfiguration configuration, IUriBuilder uriBuilder, IReductionRepository reductionRepository) : base(fileWrapper, configuration, uriBuilder, reductionRepository) { }
public HandlerFactory(IRRConfiguration config, IUriBuilder uriBuilder) { this.config = config; this.uriBuilder = uriBuilder; AddHandlerMap(DefaultMap); }
public RestRequestAdapter(IUriBuilder uriBuilder) : this(uriBuilder, new HttpClientRequest()) { }
public string Upload(IUriBuilder uriBuilder, Dictionary<string, object> parameters, params File[] files) { var uri = uriBuilder.Build(); var mimeParts = new List<MimePart>(); try { var request = WebRequest.Create(uri); foreach (var key in parameters.Keys) { var part = new StringMimePart(); part.Headers["Content-Disposition"] = "form-data; name=\"" + key + "\""; part.StringData = parameters[key].ToString(); mimeParts.Add(part); } var nameIndex = 0; foreach (var file in files) { var part = new StreamMimePart(); if (string.IsNullOrEmpty(file.FieldName)) file.FieldName = "file" + nameIndex++; part.Headers["Content-Disposition"] = "form-data; name=\"" + file.FieldName + "\"; filename=\"" + file.Path + "\""; part.Headers["Content-Type"] = File.ContentType; part.SetStream(file.Data); mimeParts.Add(part); } var boundary = "----------" + DateTime.Now.Ticks.ToString("x"); request.ContentType = "multipart/form-data; boundary=" + boundary; request.Method = "POST"; var footer = Encoding.UTF8.GetBytes("--" + boundary + "--\r\n"); var contentLength = mimeParts.Sum(part => part.GenerateHeaderFooterData(boundary)); request.ContentLength = contentLength + footer.Length; var buffer = new byte[8192]; var afterFile = Encoding.UTF8.GetBytes("\r\n"); using (var s = request.GetRequestStream()) { foreach (var part in mimeParts) { s.Write(part.Header, 0, part.Header.Length); int read; while ((read = part.Data.Read(buffer, 0, buffer.Length)) > 0) { s.Write(buffer, 0, read); } part.Data.Dispose(); s.Write(afterFile, 0, afterFile.Length); } s.Write(footer, 0, footer.Length); } return GetContent(request, (statusCode, content) => string.Format("Upload failed. Parameters: uri = {0}. Files: {1}. Response: {2} - {3}", uri.AbsoluteUri, string.Join(";", files.Select(x => x.Path)), statusCode, content)); } finally { foreach (var mimePart in mimeParts.Where(part => part.Data != null)) { mimePart.Data.Dispose(); } } }
public string GetFullUri(IUriBuilder uriBuilder) { return(this.SiteUrl + "/" + uriBuilder.GetUri()); }
public ReaderService(IUriBuilder builder, IHttpService httpService) : base(builder, httpService) { }
private static WebRequest BuildRequest(IUriBuilder uriBuilder, HttpMethod method, Dictionary<string, object> parameters, byte[] body, string acessToken, out Func<int, string, string> buildExceptionMessage) { var uri = uriBuilder.AddQueryParameters(parameters).Build(); var request = WebRequest.Create(uri); request.Method = method.GetParameterName(); request.ContentType = "application/json"; body = body ?? new byte[0]; if (method == HttpMethod.Post && body.Length > 0) { request.ContentLength = body.Length; using (var requestStream = request.GetRequestStream()) { requestStream.Write(body, 0, body.Length); requestStream.Flush(); } } else { request.ContentLength = 0; } request.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip, deflate"); request.Headers.Add("Authorization", "OAuth " + acessToken); buildExceptionMessage = (statusCode, content) => string.Format("WebRequest exception. Parameters: method = {1}, uri = {0}. Response: {2} - {3}.", uri.AbsoluteUri, method, statusCode, content); return request; }
public SpriteManagerToTest(IWebClientWrapper webClientWrapper, IRRConfiguration config, IUriBuilder uriBuilder, IStore store, IPngOptimizer pngOptimizer) : base(webClientWrapper, config, uriBuilder, store, pngOptimizer) { MockSpriteContainer = new Mock <ISpriteContainer>(); MockSpriteContainer.Setup(x => x.GetEnumerator()).Returns(new List <SpritedImage>().GetEnumerator()); MockSpriteContainer.Setup(x => x.Width).Returns(1); MockSpriteContainer.Setup(x => x.Height).Returns(1); MockSpriteContainer.Setup(x => x.AddImage(It.IsAny <BackgroundImageClass>())). Returns((BackgroundImageClass c) => new SpritedImage(1, c, null)); base.SpriteContainer = MockSpriteContainer.Object; SpritedCssKey = Guid.NewGuid(); }
public CssReducer(IWebClientWrapper webClientWrapper, IStore store, IMinifier minifier, ISpriteManager spriteManager, ICssImageTransformer cssImageTransformer, IUriBuilder uriBuilder, IRRConfiguration configuration) : base(webClientWrapper, store, minifier, uriBuilder) { this.cssImageTransformer = cssImageTransformer; this.configuration = configuration; this.spriteManager = spriteManager; }
private static WebRequest BuildRequest(IUriBuilder uriBuilder, HttpMethod method, Dictionary<string, object> parameters, byte[] body, out Func<int, string, string> buildExceptionMessage) { var uri = method != HttpMethod.Put ? uriBuilder.AddQueryParameters(parameters).Build() : uriBuilder.Build(); var request = WebRequest.Create(uri); request.Method = method.GetParameterName(); request.ContentType = "application/json"; body = body ?? new byte[0]; if (method == HttpMethod.Put) { var serializer = new SoundCloud.API.Client.Internal.Infrastructure.Serialization.JsonSerializer(); var serialized = serializer.Serialize(parameters); body = Encoding.UTF8.GetBytes(serialized); } if ((method == HttpMethod.Post || method == HttpMethod.Put) && body.Length > 0) { request.ContentLength = body.Length; using (var requestStream = request.GetRequestStream()) { requestStream.Write(body, 0, body.Length); requestStream.Flush(); } } else { request.ContentLength = 0; } request.Headers.Add(HttpRequestHeader.AcceptEncoding, "gzip, deflate"); buildExceptionMessage = (statusCode, content) => string.Format("WebRequest exception. Parameters: method = {1}, uri = {0}. Response: {2} - {3}.", uri.AbsoluteUri, method, statusCode, content); return request; }
public FakeDbDiskCache(IFileWrapper fileWrapper, IRRConfiguration configuration, IUriBuilder uriBuilder) : base(fileWrapper, configuration, uriBuilder) { timer.Dispose(); }
public RestRequestAdapter GetJsonRestRequest(IUriBuilder uriBuilder) { var jsonRequest = new RestRequest(new JsonSerializer()); return new RestRequestAdapter(uriBuilder, jsonRequest); }
public string Upload(IUriBuilder uriBuilder, Dictionary <string, object> parameters, params File[] files) { var uri = uriBuilder.Build(); var mimeParts = new List <MimePart>(); try { var request = WebRequest.Create(uri); foreach (var key in parameters.Keys) { var part = new StringMimePart(); part.Headers["Content-Disposition"] = "form-data; name=\"" + key + "\""; part.StringData = parameters[key].ToString(); mimeParts.Add(part); } var nameIndex = 0; foreach (var file in files) { var part = new StreamMimePart(); if (string.IsNullOrEmpty(file.FieldName)) { file.FieldName = "file" + nameIndex++; } part.Headers["Content-Disposition"] = "form-data; name=\"" + file.FieldName + "\"; filename=\"" + file.Path + "\""; part.Headers["Content-Type"] = File.ContentType; part.SetStream(file.Data); mimeParts.Add(part); } var boundary = "----------" + DateTime.Now.Ticks.ToString("x"); request.ContentType = "multipart/form-data; boundary=" + boundary; request.Method = "POST"; var footer = Encoding.UTF8.GetBytes("--" + boundary + "--\r\n"); var contentLength = mimeParts.Sum(part => part.GenerateHeaderFooterData(boundary)); request.ContentLength = contentLength + footer.Length; var buffer = new byte[8192]; var afterFile = Encoding.UTF8.GetBytes("\r\n"); using (var s = request.GetRequestStream()) { foreach (var part in mimeParts) { s.Write(part.Header, 0, part.Header.Length); int read; while ((read = part.Data.Read(buffer, 0, buffer.Length)) > 0) { s.Write(buffer, 0, read); } part.Data.Dispose(); s.Write(afterFile, 0, afterFile.Length); } s.Write(footer, 0, footer.Length); } return(GetContent(request, (statusCode, content) => string.Format("Upload failed. Parameters: uri = {0}. Files: {1}. Response: {2} - {3}", uri.AbsoluteUri, string.Join(";", files.Select(x => x.Path)), statusCode, content))); } finally { foreach (var mimePart in mimeParts.Where(part => part.Data != null)) { mimePart.Data.Dispose(); } } }
public string GetRelativeUri(IUriBuilder uriBuilder) { return(uriBuilder.GetUri()); }