public void TestSubscriberForUpdate() { SubscribeManager.Register <EntityPersistentSubject>(new EntitySubscriber()); using (var db = new DbContext()) { var order = db.Orders.FirstOrDefault(); order.ShipName = "1"; db.Orders.Update(order); } }
public void TestSubscriberForUpdateLinq() { SubscribeManager.Register <EntityPersistentSubject>(new EntitySubscriber()); using (var db = new DbContext()) { db.Orders.Update(new Orders { ShipName = "1" }, s => s.ShipName == "1"); } }
public ActionResult AddSubscribe(string ccid) { var cci = Convert.ToInt32(ccid); Comic_chapterManager cm = new Comic_chapterManager(); var c = cm.FindByid(cci); var ui = Convert.ToInt32(Session["User_id"].ToString()); SubscribeManager sm = new SubscribeManager(); sm.AddSubscribe(cci, ui); return(RedirectToAction("Detail", "Comic", new { cid = c.Comic_id })); }
private void Unsubscribe(string[] channels, string[] channelGroups) { if ((channels == null || channels.Length == 0) && (channelGroups == null || channelGroups.Length == 0)) { throw new ArgumentException("Either Channel Or Channel Group or Both should be provided."); } string channel = (channels != null) ? string.Join(",", channels.OrderBy(x => x).ToArray()) : ""; string channelGroup = (channelGroups != null) ? string.Join(",", channelGroups.OrderBy(x => x).ToArray()) : ""; LoggingMethod.WriteToLog(string.Format("DateTime {0}, requested unsubscribe for channel(s)={1}", DateTime.Now.ToString(), channel), config.LogVerbosity); Task.Factory.StartNew(() => { SubscribeManager manager = new SubscribeManager(config, jsonLibrary, unit); manager.MultiChannelUnSubscribeInit <T>(PNOperationType.PNUnsubscribeOperation, channel, channelGroup); }, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default); }
private void Subscribe(string[] channels, string[] channelGroups) { if ((channels == null || channels.Length == 0) && (channelGroups == null || channelGroups.Length == 0)) { throw new ArgumentException("Either Channel Or Channel Group or Both should be provided."); } string channel = (channels != null) ? string.Join(",", channels.OrderBy(x => x).ToArray()) : ""; string channelGroup = (channelGroups != null) ? string.Join(",", channelGroups.OrderBy(x => x).ToArray()) : ""; PNPlatform.Print(config, pubnubLog); LoggingMethod.WriteToLog(pubnubLog, string.Format("DateTime {0}, requested subscribe for channel(s)={1} and channel group(s)={2}", DateTime.Now.ToString(CultureInfo.InvariantCulture), channel, channelGroup), config.LogVerbosity); string[] arrayChannel = new string[] { }; string[] arrayChannelGroup = new string[] { }; if (!string.IsNullOrEmpty(channel) && channel.Trim().Length > 0) { arrayChannel = channel.Trim().Split(','); } if (!string.IsNullOrEmpty(channelGroup) && channelGroup.Trim().Length > 0) { arrayChannelGroup = channelGroup.Trim().Split(','); } Dictionary <string, string> initialSubscribeUrlParams = new Dictionary <string, string>(); if (this.subscribeTimetoken >= 0) { initialSubscribeUrlParams.Add("tt", this.subscribeTimetoken.ToString()); } if (!string.IsNullOrEmpty(config.FilterExpression) && config.FilterExpression.Trim().Length > 0) { initialSubscribeUrlParams.Add("filter-expr", new UriUtil().EncodeUriComponent(config.FilterExpression, PNOperationType.PNSubscribeOperation, false, false, false)); } Task.Factory.StartNew(() => { manager = new SubscribeManager(config, jsonLibrary, unit, pubnubLog, pubnubTelemetryMgr); manager.CurrentPubnubInstance(PubnubInstance); manager.MultiChannelSubscribeInit <T>(PNOperationType.PNSubscribeOperation, channels, channelGroups, initialSubscribeUrlParams); }, CancellationToken.None, TaskCreationOptions.None, TaskScheduler.Default); }
private void Subscribe(string[] channels, string[] channelGroups, Dictionary <string, object> externalQueryParam) { if ((channels == null || channels.Length == 0) && (channelGroups == null || channelGroups.Length == 0)) { throw new ArgumentException("Either Channel Or Channel Group or Both should be provided."); } string channel = (channels != null) ? string.Join(",", channels.OrderBy(x => x).ToArray()) : ""; string channelGroup = (channelGroups != null) ? string.Join(",", channelGroups.OrderBy(x => x).ToArray()) : ""; PNPlatform.Print(config, pubnubLog); LoggingMethod.WriteToLog(pubnubLog, string.Format("DateTime {0}, requested subscribe for channel(s)={1} and channel group(s)={2}", DateTime.Now.ToString(CultureInfo.InvariantCulture), channel, channelGroup), config.LogVerbosity); Dictionary <string, string> initialSubscribeUrlParams = new Dictionary <string, string>(); if (this.subscribeTimetoken >= 0) { initialSubscribeUrlParams.Add("tt", this.subscribeTimetoken.ToString()); } if (!string.IsNullOrEmpty(config.FilterExpression) && config.FilterExpression.Trim().Length > 0) { initialSubscribeUrlParams.Add("filter-expr", UriUtil.EncodeUriComponent(false, config.FilterExpression, PNOperationType.PNSubscribeOperation, false, false, false)); } #if NETFX_CORE || WINDOWS_UWP || UAP || NETSTANDARD Task.Factory.StartNew(() => { manager = new SubscribeManager(config, jsonLibrary, unit, pubnubLog, pubnubTelemetryMgr, PubnubInstance); manager.CurrentPubnubInstance(PubnubInstance); manager.MultiChannelSubscribeInit <T>(PNOperationType.PNSubscribeOperation, channels, channelGroups, initialSubscribeUrlParams, externalQueryParam); }, CancellationToken.None, TaskCreationOptions.PreferFairness, TaskScheduler.Default).ConfigureAwait(false); #else new Thread(() => { manager = new SubscribeManager(config, jsonLibrary, unit, pubnubLog, pubnubTelemetryMgr, PubnubInstance); manager.CurrentPubnubInstance(PubnubInstance); manager.MultiChannelSubscribeInit <T>(PNOperationType.PNSubscribeOperation, channels, channelGroups, initialSubscribeUrlParams, externalQueryParam); }) { IsBackground = true }.Start(); #endif }
public AgilorResponseData poll(dynamic obj) { AgilorResponseData response = new AgilorResponseData(); if (!checkACIObject()) { response.responseMessage = "Get All Device Names And Status ERROR: ACI IS NULL, Server Need Be Restart!"; response.responseCode = (int)AgilorResponseData.RESPONSE_CODE.RESPONSE_AGILOR_ACI_IS_NULL; return(response); } try { string subscriberGuid = obj.guid.ToObject <string>(); if (DateTime.Now.Subtract(SubscribeManager.subscribers[subscriberGuid].lastPollTime).Duration().TotalSeconds > SubscribeManager.subscribers[subscriberGuid].timeout) { // 订阅过期 response.responseMessage = "Sorry, Your Subscribe Is Timeout!"; response.responseCode = (int)AgilorResponseData.RESPONSE_CODE.RESPONSE_SUBSCRIBE_TIMEOUT_ERROR; return(response); } bool isRefresh = obj.isRefresh.ToObject <bool>(); //response.responseBody = SubscribeManager.getSubscribeTargetsValue(subscriberGuid, isRefresh); var result = SubscribeManager.getSubscribeTargetsValue(subscriberGuid, isRefresh); response.responseBody = new Dictionary <string, object> { { "SubscribeTargetValues", result }, { "Timeout", SubscribeManager.subscribers[subscriberGuid].timeout } }; response.responseMessage = "Get Subscribe Targets Value Success! Targets Count:" + result.Count.ToString(); response.responseCode = (int)AgilorResponseData.RESPONSE_CODE.RESPONSE_NORMAL; } catch (Exception ex) { response.responseMessage = ex.ToString(); response.responseCode = (int)AgilorResponseData.RESPONSE_CODE.RESPONSE_UNKNOWN_ERROR; } return(response); }
public IActionResult hasSubscribed([FromForm] SubscribeDTO s) { SubscribeManager subscribeManager = new SubscribeManager(); var flag = subscribeManager.hasSubscribed(s); if (flag == true) { return(Ok(new JsonCreate() { message = Utils.ConstMessage.GET_SUCCESS, data = true })); } else { return(Ok(new JsonCreate() { message = Utils.ConstMessage.GET_SUCCESS, data = false })); } }
public IActionResult getSubscribe(String id) { SubscribeManager subscribeManager = new SubscribeManager(); var flag = subscribeManager.getSubscribeDTOs(id); if (flag != null && flag.Count != 0) { return(Ok(new JsonCreate() { message = Utils.ConstMessage.GET_SUCCESS, data = flag })); } else { return(Ok(new JsonCreate() { message = Utils.ConstMessage.NOT_FOUND, data = flag })); } }
public IActionResult insertSubsribe([FromForm] SubscribeDTO subscribeDTO) { SubscribeManager subscribeManager = new SubscribeManager(); bool flag = subscribeManager.insertSubsribe(subscribeDTO); if (flag == true) { return(Ok(new JsonCreate() { message = Utils.ConstMessage.INSERT_SUCCESS, data = true })); } else { return(Ok(new JsonCreate() { message = Utils.ConstMessage.CONFILICT, data = false })); } }
public IActionResult deleteSubscribe([FromForm] SubscribeDTO s) { SubscribeManager subscribeManager = new SubscribeManager(); var flag = subscribeManager.deleteSubscribe(s); if (flag == true) { return(Ok(new JsonCreate() { message = Utils.ConstMessage.UPDATE_SUCCESS, data = true })); } else { return(Ok(new JsonCreate() { message = Utils.ConstMessage.UPDATE_FAIL, data = false })); } }
public void TestSubscriberForBatch() { SubscribeManager.Register <EntityPersistentSubject>(new EntitySubscriber()); using (var db = new DbContext()) { var list = new List <Depts>(); for (var i = 0; i < 3; i++) { var d = Depts.New(); d.DeptID = i + 50; d.DeptName = "a" + i; list.Add(d); } list[1].DeptCode = "test"; db.Depts.Batch(list, (u, s) => u.Update(s)); } }
private void UnsubscribeAll() { #if NETFX_CORE || WINDOWS_UWP || UAP || NETSTANDARD Task.Factory.StartNew(() => { SubscribeManager manager = new SubscribeManager(config, jsonLibrary, unit, pubnubLog, pubnubTelemetryMgr, PubnubInstance); manager.CurrentPubnubInstance(PubnubInstance); manager.MultiChannelUnSubscribeAll <T>(PNOperationType.PNUnsubscribeOperation, this.queryParam); }, CancellationToken.None, TaskCreationOptions.PreferFairness, TaskScheduler.Default).ConfigureAwait(false); #else new Thread(() => { SubscribeManager manager = new SubscribeManager(config, jsonLibrary, unit, pubnubLog, pubnubTelemetryMgr, PubnubInstance); manager.CurrentPubnubInstance(PubnubInstance); manager.MultiChannelUnSubscribeAll <T>(PNOperationType.PNUnsubscribeOperation, this.queryParam); }) { IsBackground = true }.Start(); #endif }
public static void RaiseEvent(IEnumerable <IEntity> entities, EntityPersistentOperater operType, EntityPersistentEventType eventType) { SubscribeManager.Publish <EntityPersistentSubject>(IsQueue(eventType), new EntitiesArgs(entities, operType, eventType)); }
public SubscribeController() { _manager = new SubscribeManager(Repository, UnitOfWork); _sendQuestionManager = new SendQuestionManager(new NHibernateRepository <UserQuestion>(UnitOfWork), UnitOfWork); _questionManager = new QuestionManager(new NHibernateRepository <Question>(UnitOfWork), UnitOfWork); }
public void Initialize() { _mockRepository = new Mock <IRepository <Question> >(); _mockUnitOfWork = new Mock <IUnitOfWork>(); _manager = new QuestionManager(_mockRepository.Object, _mockUnitOfWork.Object); var unitOfWorkAlternative = new Mock <IUnitOfWork>(); _mockAlternative = new Mock <IRepository <Alternative> >(); _alternativeManager = new AlternativeManager(_mockAlternative.Object, unitOfWorkAlternative.Object); var unitOfWorkSendQuestion = new Mock <IUnitOfWork>(); _mockUserQuestion = new Mock <IRepository <UserQuestion> >(); _sendQuestionManager = new SendQuestionManager(_mockUserQuestion.Object, unitOfWorkSendQuestion.Object); _mockSubscribe = new Mock <IRepository <Subscription> >(); var unitOfWorkSubscribe = new Mock <IUnitOfWork>(); _subscribeManager = new SubscribeManager(_mockSubscribe.Object, _mockUnitOfWork.Object); _teacher = new User() { Id = 1, IsTeacher = true, Name = "Professor" }; _course = new Course() { Description = "Testes", Name = "Matematica", Id = 1, Created = new DateTime(2016, 01, 01), Teacher = _teacher }; _question = new Question { Id = 1, Course = _course, Description = "Quanto é 1 + 1" }; _alternatives = new List <Alternative>(); for (int i = 0; i < 10; i++) { _alternatives.Add(new Alternative() { Question = _question, Description = " teste numero " + 1, IsCorrect = false, Order = i }); } _alternatives.Add(new Alternative() { Question = _question, Description = " teste numero " + _alternatives.Count, IsCorrect = true, Order = _alternatives.Count }); }
public ChannelController(ChannelManager channel, UserManager <User> userManager, SubscribeManager sub) { _userManager = userManager; _channel = channel; _subscription = sub; }
public void AddSubscribe <T>(ISubscriber subscriber) where T : ISubject { SubscribeManager.Register <T>(subscriber); }
public static void RaiseEvent(object[] arguments, EntityPersistentEventType eventType) { SubscribeManager.Publish <EntityPersistentSubject>(arguments, eventType); }
public void AddSubscribeManager(SubscribeManager sm) { subscribeManagers.Add(sm); }
// サブスクライバをセットする関数 public void SetSubscriber(SubscribeManager sm) { Subscribers.Add(sm); }
public static void RaiseEvent(IEntity entity, EntityPersistentEventType eventType) { SubscribeManager.Publish <EntityPersistentSubject>(entity, eventType); }
public static void RaiseEvent <TEntity>(EntityPersistentEventType eventType) { SubscribeManager.Publish <EntityPersistentSubject>(IsQueue(eventType), new EntityEventTypeArgs(typeof(TEntity), eventType)); }
public GrpcServerService(DiscordSocketClient client, SubscribeManager subscribeManager) { _client = client; _subscribeManager = subscribeManager; }
public static void RaiseEvent(IEntity entity, EntityPersistentEventType eventType) { SubscribeManager.Publish <EntityPersistentSubject>(IsQueue(eventType), new EntityEventArgs(entity, eventType)); }
public SubModule(SubscribeManager subscribeManager) { _subscribeManager = subscribeManager; }