/// <summary> /// Create new API instance /// </summary> /// <returns> /// API instance /// </returns> /// <exception cref="ArgumentNullException">User auth data must be specified</exception> public IInstaApi Build() { if (_user == null) { throw new ArgumentNullException("User auth data must be specified"); } if (_httpClient == null) { _httpClient = new HttpClient(_httpHandler) { BaseAddress = new Uri(InstaApiConstants.INSTAGRAM_URL) } } ; if (_requestMessage == null) { if (_device == null) { _device = AndroidDeviceGenerator.GetRandomAndroidDevice(); } _requestMessage = new ApiRequestMessage { PhoneId = _device.PhoneGuid.ToString(), Guid = _device.DeviceGuid, Password = _user?.Password, Username = _user?.UserName, DeviceId = ApiRequestMessage.GenerateDeviceId(), AdId = _device.AdId.ToString() }; } if (string.IsNullOrEmpty(_requestMessage.Password)) { _requestMessage.Password = _user?.Password; } if (string.IsNullOrEmpty(_requestMessage.Username)) { _requestMessage.Username = _user?.UserName; } if (_device == null && !string.IsNullOrEmpty(_requestMessage.DeviceId)) { _device = AndroidDeviceGenerator.GetById(_requestMessage.DeviceId); } if (_device == null) { AndroidDeviceGenerator.GetRandomAndroidDevice(); } if (_httpRequestProcessor == null) { _httpRequestProcessor = new HttpRequestProcessor(_delay, _httpClient, _httpHandler, _requestMessage, _logger); } var instaApi = new InstaApi(_user, _logger, _device, _httpRequestProcessor); return(instaApi); }
public UserProcessor(UserSessionData user, IHttpRequestProcessor httpRequestProcessor, IInstaLogger logger) { _user = user; _httpRequestProcessor = httpRequestProcessor; _logger = logger; }
public GrepRequestEndpoint( IPostHttpMethod postHttpMethod, IHttpRequestProcessor <IHttpEndpoint <GrepRequest, string> > httpRequestProcessor, IRequireAuthenticationFilter requireAuthenticationFilter, IGrepRequestUnbinder unbinder, IGrepRequestValidator validator, IGrepRequestPerformer performer, IGrepRequestFailureHandler stringFailureHandler, IStringResponseWritter stringResponseWritter) { HttpRequestDescriptor = new GenericRequestDescriptor { HttpMethod = postHttpMethod, RouteDescription = "grep/{for}" }; HttpRequestProcessor = httpRequestProcessor; BeforePerformActions = new List <IPrePerformAction> { requireAuthenticationFilter }; ResponseWritter = stringResponseWritter; HttpRequestUnbinder = unbinder; Performer = performer; RequestValidator = validator; RequestFailureHandler = stringFailureHandler; }
public GhtkApi() { var httpClientHandler = new HttpClientHandler(); var httpClient = new HttpClient(httpClientHandler); _httpRequestProcessor = new HttpRequestProcessor(httpClient, httpClientHandler); }
public InstaApi(UserSessionData user, IInstaLogger logger, AndroidDevice deviceInfo, IHttpRequestProcessor httpRequestProcessor) { _user = user; _logger = logger; _deviceInfo = deviceInfo; _httpRequestProcessor = httpRequestProcessor; }
public CommentProcessor(AndroidDevice deviceInfo, UserSessionData user, IHttpRequestProcessor httpRequestProcessor, IInstaLogger logger) { _deviceInfo = deviceInfo; _user = user; _httpRequestProcessor = httpRequestProcessor; _logger = logger; }
public MediaProcessor(AndroidDevice deviceInfo, UserSessionData user, IHttpRequestProcessor httpRequestProcessor, IInstaLogger logger, UserAuthValidate userAuthValidate) { _deviceInfo = deviceInfo; _user = user; _httpRequestProcessor = httpRequestProcessor; _logger = logger; _userAuthValidate = userAuthValidate; }
public InstaScraper(UserSessionData user, IInstaLogger logger, IHttpRequestProcessor httpRequestProcessor) { _user = user; _logger = logger; _httpRequestProcessor = httpRequestProcessor; InvalidateProcessors(); }
private void processRequest(ReceiveHeaderCompleteEventArgs e) { logger.Debug("{0} process request", _connectionToken.Substring(0, 6)); if (_lastProcessor != null) { _lastProcessor.Close(); } HttpRequestHeader requestHeader = (HttpRequestHeader)e.LastReceiveHeader; logger.Debug("{0} receive new request: {1}, url: {2}", _connectionToken.Substring(0, 6), requestHeader.Method, requestHeader.Url); //check if keep connection alive _clientKeepAlive = (requestHeader.Connection == null || String.Compare(requestHeader.Connection, "keep-alive", true) == 0); _lastResponseHeader = new HttpResponseHeader(); _lastResponseHeader.Date = DateTime.Now.ToUniversalTime(); _lastResponseHeader.Server = HttpServiceControler.SERVER_NAME; HandlerContext context = new HandlerContext( requestHeader, _lastResponseHeader, _bindEndPoint, _bindEndPointName, _clientIp, _connectionToken); _lastProcessor = _processorFactory.CreateProcessor(context); _lastProcessor.ProcessRequest(context); //request contains body if (requestHeader.ContentLength > 0) { if (_lastProcessor.RequestBodyAcceptable) { //continue to receive reqeust body _workStatus = SessionWorkStatus.ReceivingRequestBody; e.TotalPlanReceivingLength = requestHeader.ContentLength; } else { //NOTE:: //can not accept request body, because //some http method (GET,HEAD,DELETE) should not contain request body //or POST,PUT access deny. logger.Warn("{0} processor {1} can not accept request body", _connectionToken.Substring(0, 6), _lastProcessor.GetType().Name); Close(); } } else { sendResponse(); } }
public UserProcessor(AndroidDevice deviceInfo, UserSessionData user, IHttpRequestProcessor httpRequestProcessor, IInstaLogger logger, UserAuthValidate userAuthValidate, InstaApi instaApi) { _deviceInfo = deviceInfo; _user = user; _httpRequestProcessor = httpRequestProcessor; _logger = logger; _userAuthValidate = userAuthValidate; _instaApi = instaApi; }
public UserProcessor(UserSessionData user, IHttpRequestProcessor httpRequestProcessor, IPinLogger logger, UserAuthValidate userAuthValidate, PinApi pinapi, HttpHelper httpHelper) { _user = user; _httpRequestProcessor = httpRequestProcessor; _logger = logger; _userAuthValidate = userAuthValidate; _httpHelper = httpHelper; }
//private readonly UserAuthValidate _userAuthValidate; public TransitoProcessor(UserSessionData user, IHttpRequestProcessor httpRequestProcessor /*,IGobiernoLogger logger,*/ /*UserAuthValidate userAuthValidate*/, GobiernoApi gobiernoApi, HttpHelper httpHelper) { _user = user; _httpRequestProcessor = httpRequestProcessor; //_logger = logger; _gobiernoApi = gobiernoApi; _httpHelper = httpHelper; }
public Application( IApplicationArgumentsGetter applicationArgumentsGetter, ILoggingSystemInitializer loggingSystemInitializer, IFileReader<Configuration.Configuration> configurationReader, ITcpServer tcpServer, IHttpRequestProcessor httpRequestProcessor) { _applicationArgumentsGetter = applicationArgumentsGetter; _loggingSystemInitializer = loggingSystemInitializer; _configurationReader = configurationReader; _tcpServer = tcpServer; _httpRequestProcessor = httpRequestProcessor; }
public Application( IApplicationArgumentsGetter applicationArgumentsGetter, ILoggingSystemInitializer loggingSystemInitializer, IFileReader <Configuration.Configuration> configurationReader, ITcpServer tcpServer, IHttpRequestProcessor httpRequestProcessor) { _applicationArgumentsGetter = applicationArgumentsGetter; _loggingSystemInitializer = loggingSystemInitializer; _configurationReader = configurationReader; _tcpServer = tcpServer; _httpRequestProcessor = httpRequestProcessor; }
public IInstaApi Build() { if (_httpClient == null) { _httpClient = new HttpClient(_httpHandler) { BaseAddress = new Uri(InstaApiConstants.INSTAGRAM_URL) } } ; if (_requestMessage == null) { _device = AndroidDeviceGenerator.GetRandomAndroidDevice(); _requestMessage = new ApiRequestMessage { phone_id = _device.PhoneGuid.ToString(), guid = _device.DeviceGuid, password = _user?.Password, username = _user?.UserName, device_id = ApiRequestMessage.GenerateDeviceId() }; } if (string.IsNullOrEmpty(_requestMessage.password)) { _requestMessage.password = _user?.Password; } if (string.IsNullOrEmpty(_requestMessage.username)) { _requestMessage.username = _user?.UserName; } if (_device == null && !string.IsNullOrEmpty(_requestMessage.device_id)) { _device = AndroidDeviceGenerator.GetById(_requestMessage.device_id); } if (_device == null) { AndroidDeviceGenerator.GetRandomAndroidDevice(); } if (_httpRequestProcessor == null) { _httpRequestProcessor = new HttpRequestProcessor(_delay, _httpClient, _httpHandler, _requestMessage, _logger); } var instaApi = new InstaApi(_user, _logger, _device, _httpRequestProcessor); return(instaApi); }
public RegistrationService(AndroidDevice deviceInfo, UserSessionData user, IHttpRequestProcessor httpRequestProcessor, IInstaLogger logger, UserAuthValidate userAuthValidate, InstaApi instaApi, HttpHelper httpHelper) { _deviceInfo = deviceInfo; _user = user; _httpRequestProcessor = httpRequestProcessor; _logger = logger; _userAuthValidate = userAuthValidate; _instaApi = instaApi; _httpHelper = httpHelper; RegistrationWaterfallId = Guid.NewGuid().ToString(); Birthday = GenerateRandomBirthday(); }
public IGobiernoApi Build() { if (_user == null) { _user = UserSessionData.Empty; } if (_httpHandler == null) { _httpHandler = new HttpClientHandler(); } if (_httpClient == null) { _httpClient = new HttpClient(_httpHandler) { BaseAddress = new Uri(GobiernoApiConstants.GOBIERNO_API_URL) } } ; //try //{ // GobiernoApiConstants.TIMEZONE_OFFSET = int.Parse(DateTimeOffset.Now.Offset.TotalSeconds.ToString()); //} //catch { } if (_httpRequestProcessor == null) { _httpRequestProcessor = new HttpRequestProcessor(_httpClient, _httpHandler /*,_logger*/); } if (_apiVersionType == null) { _apiVersionType = GobiernoApiVersionType.v1; } var instaApi = new GobiernoApi(_user, /*_logger, */ _httpRequestProcessor, _apiVersionType.Value); //if (_sessionHandler != null) //{ // _sessionHandler.GobiernoApi = instaApi; // instaApi.SessionHandler = _sessionHandler; //} return(instaApi); }
public static async Task <string> GetDefaultHtmlText(string url, IHttpRequestProcessor httpRequestProcessor) { var uri = new Uri(url); var request = HttpHelper.GetDefaultRequest(HttpMethod.Get, uri); var response = await httpRequestProcessor.GetAsync(uri); var html = await response.Content.ReadAsStringAsync(); if (response.StatusCode != HttpStatusCode.OK) { return(null); } return(html); }
public GobiernoApi(UserSessionData user, /*IGobiernoLogger logger,*/ IHttpRequestProcessor httpRequestProcessor, GobiernoApiVersionType apiVersionType) { //_logger = logger; _httpRequestProcessor = httpRequestProcessor; _apiVersionType = apiVersionType; _apiVersion = GobiernoApiVersionList.GetApiVersionList().GetApiVersion(apiVersionType); _httpHelper = new HttpHelper(/*_apiVersion,*/ httpRequestProcessor, this); _userSession = user; LoadStateDataFromObject(new StateData { UserSession = _user }); }
public ClientValidationsEndpoint( IStringResponseWritter stringResponseWritter, IJavascriptSourcePerformer javascriptSourcePerformer, IHttpRequestProcessor <IHttpEndpoint <string> > httpRequestProcessor, IGetHttpMethod getHttpMethod) { HttpRequestDescriptor = new GenericRequestDescriptor { HttpMethod = getHttpMethod, RouteDescription = "assets/javascript/service-validation.js" }; HttpRequestProcessor = httpRequestProcessor; Performer = javascriptSourcePerformer; ResponseWritter = stringResponseWritter; }
public InstaWebProcessor( AndroidDevice deviceInfo, UserSessionData user, IHttpRequestProcessor httpRequestProcessor, ILogger logger, UserAuthValidate userAuthValidate, InstaApi instaApi, InstaHttpHelper httpHelper) { this.deviceInfo = deviceInfo; this.user = user; this.httpRequestProcessor = httpRequestProcessor; this.logger = logger; this.userAuthValidate = userAuthValidate; this.instaApi = instaApi; this.httpHelper = httpHelper; }
public bool Start(IEnumerable<Bind> binds, IHttpRequestProcessor requestProcessor) { foreach (var bind in binds) { try { _binders.Add(_binderFactory.GetBinder(bind, requestProcessor)); } catch (Exception exception) { _logger.Fatal(exception, "Unable to bind to {0}:{1}", bind.IpAddress, bind.Port); _binders.ForEach(x => x.Unbind()); return false; } } return true; }
public bool Start(IEnumerable <Bind> binds, IHttpRequestProcessor requestProcessor) { foreach (var bind in binds) { try { _binders.Add(_binderFactory.GetBinder(bind, requestProcessor)); } catch (Exception exception) { _logger.Fatal(exception, "Unable to bind to {0}:{1}", bind.IpAddress, bind.Port); _binders.ForEach(x => x.Unbind()); return(false); } } return(true); }
public static void SetCsrfTokenIfAvailable(this UserSessionData data, HttpResponseMessage response, IHttpRequestProcessor _httpRequestProcessor, bool dontCheck = false) { if (response.IsSuccessStatusCode) { var cookies = _httpRequestProcessor.HttpHandler.CookieContainer.GetCookies(_httpRequestProcessor.Client .BaseAddress); var csrfToken = cookies[InstaApiConstants.CSRFTOKEN]?.Value ?? string.Empty; if (dontCheck && !string.IsNullOrEmpty(csrfToken)) { data.CsrfToken = csrfToken; } else if (!string.IsNullOrEmpty(csrfToken) && string.IsNullOrEmpty(data.CsrfToken)) { data.CsrfToken = csrfToken; } } }
public IVagalumeApi Build() { if (_httpClient == null) { _httpClient = new HttpClient(_httpHandler) { BaseAddress = new Uri(VagalumeApiConstants.VAGALUME_URL) } } ; if (_httpRequestProcessor == null) { _httpRequestProcessor = new HttpRequestProcessor(_httpClient, _httpHandler); } var vagalumeApi = new VagalumeApi(_httpRequestProcessor); return(vagalumeApi); }
public IPinApi Build() { _requestMessage = new ApiRequestMessage { password = _user?.Password, username_or_email = _user?.UserName, }; if (_user == null) { _user = UserSessionData.Empty; } if (_httpHandler == null) { _httpHandler = new HttpClientHandler(); } if (_httpClient == null) { _httpClient = new HttpClient(_httpHandler) { BaseAddress = new Uri(PinApiConstants.URL_BASE) } } ; if (_httpRequestProcessor == null) { _httpRequestProcessor = new HttpRequestProcessor(_delay, _httpClient, _httpHandler, _requestMessage, _logger); } var instaApi = new PinApi(_user, _logger, _httpRequestProcessor); return(instaApi); }
/// <summary> /// Create new Scraper instance /// </summary> /// <returns> /// Scraper instance /// </returns> public IInstaScraper Build() { if (_httpClient == null) { _httpClient = new HttpClient(_httpHandler) { BaseAddress = new Uri(Constants.WEB_URL) } } ; if (_httpRequestProcessor == null) { _httpRequestProcessor = new HttpRequestProcessor(_delay, _httpClient, _httpHandler, _logger); } var instaApi = new InstaScraper(_user, _logger, _httpRequestProcessor); return(instaApi); }
/// <summary> /// Create a new request processor /// </summary> /// <param name="requestHeader"></param> /// <returns></returns> public IHttpRequestProcessor CreateProcessor(HandlerContext context) { IHttpRequestProcessor processor = null; for (int idx = 0; idx < _handlers.Count; idx++) { processor = _handlers[idx].CreatProcessor(context); if (processor != null) { break; } } if (processor == null) { //return default processor if no handler can create processor return(_defaultProcessor); } else { return(processor); } }
public VagalumeApi(IHttpRequestProcessor httpRequestProcessor) { _httpRequestProcessor = httpRequestProcessor; InitializeProviders(); }
public WeatherForecastsFunctions(IHttpRequestProcessor mediator) { this.mediator = mediator; }
public async Task InvokeAsync(HttpContext context, IHttpRequestProcessor httpRequestProcessor) { await httpRequestProcessor.ProcessContextAsync(context); }
/// <summary> /// Create new API instance /// </summary> /// <returns> /// API instance /// </returns> /// <exception cref="ArgumentNullException">User auth data must be specified</exception> public IInstaApi Build() { if (_user == null) { _user = UserSessionData.Empty; } if (_httpHandler == null) { _httpHandler = new HttpClientHandler(); } if (_httpClient == null) { _httpClient = new HttpClient(_httpHandler) { BaseAddress = new Uri(InstaApiConstants.INSTAGRAM_URL) } } ; if (_requestMessage == null) { if (_device == null) { _device = AndroidDeviceGenerator.GetRandomAndroidDevice(); } _requestMessage = new ApiRequestMessage { PhoneId = _device.PhoneGuid.ToString(), Guid = _device.DeviceGuid, Password = _user?.Password, Username = _user?.UserName, DeviceId = ApiRequestMessage.GenerateDeviceId(), AdId = _device.AdId.ToString() }; } if (string.IsNullOrEmpty(_requestMessage.Password)) { _requestMessage.Password = _user?.Password; } if (string.IsNullOrEmpty(_requestMessage.Username)) { _requestMessage.Username = _user?.UserName; } try { InstaApiConstants.TIMEZONE_OFFSET = int.Parse(DateTimeOffset.Now.Offset.TotalSeconds.ToString()); } catch { } if (_httpRequestProcessor == null) { _httpRequestProcessor = new HttpRequestProcessor(_delay, _httpClient, _httpHandler, _requestMessage, _logger); } if (_apiVersionType == null) { _apiVersionType = InstaApiVersionType.Version76; } var instaApi = new InstaApi(_user, _logger, _device, _httpRequestProcessor, _apiVersionType.Value); if (_sessionHandler != null) { _sessionHandler.InstaApi = instaApi; instaApi.SessionHandler = _sessionHandler; } return(instaApi); }