public override IRemoteMessageHub WithConfiguration(IHubConfiguration config) { SignalRHubConfiguration hubConfig = (SignalRHubConfiguration)config; _remoteUri = hubConfig.RemoteEndpoint; _remoteHubName = hubConfig.HubName; return(base.WithConfiguration(config)); }
private SubscriptionServiceResult CallSubscriber(IHubConfiguration configuration, SubscriptionModel model) { SubscriptionServiceResult result = new SubscriptionServiceResult() { Type = SubscriptionResponseResultType.Success }; var request = CreateRequest(configuration, model); try { var response = (HttpWebResponse)request.GetResponse(); _loggingService.Info("Response received: " + response.StatusCode); if (response.StatusCode != HttpStatusCode.NoContent) { result.Type = SubscriptionResponseResultType.Error; result.ErrorDescription = "The pubsubhub returned " + response.StatusDescription; } else { using (Stream receiveStream = response.GetResponseStream()) { using (StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8)) { string hubResponse = readStream.ReadToEnd(); _loggingService.Info("Response text received: " + hubResponse); } } } } catch (WebException we) { if (((HttpWebResponse)we.Response).StatusCode == HttpStatusCode.Unauthorized) { result.Type = SubscriptionResponseResultType.NotAuthorised; result.ErrorDescription = "The credentials provided were not accepted by the subscription hub"; } else if ((int)((HttpWebResponse)we.Response).StatusCode == 422) { result.Type = SubscriptionResponseResultType.NotFound; result.ErrorDescription = model.Mode + " error. The hub did not believe the subscription to exist or the sync callback failed."; } else { string msg = model.Mode + " error. " + we.ToString(); _loggingService.Error(msg); result.Type = SubscriptionResponseResultType.Error; result.ErrorDescription = msg; } } return(result); }
private SubscriptionServiceResult CallSubscriber(IHubConfiguration configuration, SubscriptionModel model) { SubscriptionServiceResult result = new SubscriptionServiceResult() { Type = SubscriptionResponseResultType.Success }; var request = CreateRequest(configuration, model); try { var response = (HttpWebResponse)request.GetResponse(); _loggingService.Info("Response received: " + response.StatusCode); if (response.StatusCode != HttpStatusCode.NoContent) { result.Type = SubscriptionResponseResultType.Error; result.ErrorDescription = "The pubsubhub returned " + response.StatusDescription; } else { using (Stream receiveStream = response.GetResponseStream()) { using (StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8)) { string hubResponse = readStream.ReadToEnd(); _loggingService.Info("Response text received: " + hubResponse); } } } } catch (WebException we) { if (((HttpWebResponse)we.Response).StatusCode == HttpStatusCode.Unauthorized) { result.Type = SubscriptionResponseResultType.NotAuthorised; result.ErrorDescription = "The credentials provided were not accepted by the subscription hub"; } else if ((int)((HttpWebResponse)we.Response).StatusCode == 422) { result.Type = SubscriptionResponseResultType.NotFound; result.ErrorDescription = model.Mode + " error. The hub did not believe the subscription to exist or the sync callback failed."; } else { string msg = model.Mode + " error. " + we.ToString(); _loggingService.Error(msg); result.Type = SubscriptionResponseResultType.Error; result.ErrorDescription = msg; } } return result; }
public override IRemoteMessageHub WithConfiguration(IHubConfiguration config) { base.WithConfiguration(config); MsmqHubConfiguration msmqConfig = (MsmqHubConfiguration)config; _localQueueName = msmqConfig.LocalQueueName; _remoteQueuePath = msmqConfig.RemoteQueuePath; return(this); }
public override IRemoteMessageHub WithConfiguration(IHubConfiguration config) { base.WithConfiguration(config); WcfMessageHubConfiguration wcfConfig = (WcfMessageHubConfiguration)config; _remoteUri = wcfConfig.RemoteEndpoint; _channelBinding = wcfConfig.Binding; return(this); }
/// <summary> /// Maps a static URI to a web socket consumer /// </summary> /// <typeparam name="T">Type of WebSocketHubConnection</typeparam> /// <param name="app">Owin App</param> /// <param name="route">Static URI to map to the hub</param> /// <param name="serviceLocator">Service locator to use for getting instances of T</param> public static void MapWebSocketRoute <T>(this IAppBuilder app, string route, IHubConfiguration hubConfig, object serviceLocator = null) where T : Hubs { if (hubConfig == null) { hubConfig = new HubConfiguration { EnableDetailedErrors = false, EnableJavaScriptProxies = false }; } Hubs.HubConfig = hubConfig; app.Map(route, config => config.Use <Middleware <T> >(serviceLocator)); }
/// <summary> /// BroadCast listener class /// </summary> /// <param name="hubConfiguration">IHubConfiguration value</param> public BroadCastListener(IHubConfiguration hubConfiguration) { if (hubConfiguration == null) { throw new ArgumentNullException("Hub configuration object is null !"); } if (string.IsNullOrWhiteSpace(hubConfiguration.HubURL) || !Uri.IsWellFormedUriString(hubConfiguration.HubURL, UriKind.Absolute)) { throw new ArgumentNullException("BroadCast service URL is empty or not well formed value !"); } if (string.IsNullOrWhiteSpace(hubConfiguration.HubName)) { throw new ArgumentNullException("BroadCast service HubName is empty !"); } this.IsConnected = false; this._hubConfiguration = hubConfiguration; }
private HttpWebRequest CreateRequest(IHubConfiguration configuration, SubscriptionModel model) { UriBuilder builder = new UriBuilder(configuration.HubRoot); string query = "hub.mode=" + model.Mode + "&"; query += "hub.verify=" + model.Verify + "&"; query += "hub.callback=" + model.Callback + "/" + model.Id + "&"; query += "hub.topic=" + model.Topic; builder.Query = query; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(builder.Uri); byte[] authBytes = Encoding.UTF8.GetBytes((configuration.HubUsername + ":" + configuration.HubPassword).ToCharArray()); request.Headers["Authorization"] = "Basic " + Convert.ToBase64String(authBytes); request.Method = "POST"; request.PreAuthenticate = true; _loggingService.Info("Making request to hub for subscription: " + request.RequestUri.ToString()); return(request); }
public Server(ISiteUrlRepository siteRepository, IHubConfiguration hubConfiguration) { _siteRepository = siteRepository; _hubConfiguration = hubConfiguration; }
private HttpWebRequest CreateRequest(IHubConfiguration configuration, SubscriptionModel model) { UriBuilder builder = new UriBuilder(configuration.HubRoot); string query = "hub.mode=" + model.Mode + "&"; query += "hub.verify=" + model.Verify + "&"; query += "hub.callback=" + model.Callback + "/" + model.Id + "&"; query += "hub.topic=" + model.Topic; builder.Query = query; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(builder.Uri); byte[] authBytes = Encoding.UTF8.GetBytes((configuration.HubUsername + ":" + configuration.HubPassword).ToCharArray()); request.Headers["Authorization"] = "Basic " + Convert.ToBase64String(authBytes); request.Method = "POST"; request.PreAuthenticate = true; _loggingService.Info("Making request to hub for subscription: " + request.RequestUri.ToString()); return request; }
public SubscriptionServiceResult UnSubscribe(IHubConfiguration configuration, SubscriptionModel model) { return CallSubscriber(configuration, model); }
/// <summary> /// Configures this hub instance with the configuration provided /// </summary> /// <param name="config">The configuration object</param> /// <returns>The current instance</returns> public virtual IRemoteMessageHub WithConfiguration(IHubConfiguration config) { UseEncryption = config.UseEncryption; _innerHub = (LocalMessageHub)_innerHub.WithSerializationType(config.DefaultSerializationType); return(this); }
public SubscriptionServiceResult UnSubscribe(IHubConfiguration configuration, SubscriptionModel model) { return(CallSubscriber(configuration, model)); }