protected override void Establish_context() { _sut = new EventPlugin(MockRepository.GenerateMock<IPostRepository>(), MockRepository.GenerateMock<IMapper<NameValueCollection, Settings>>(), MockRepository.GenerateMock<IValidator<Settings>>()); _post = MockRepository.GenerateStub<DataBuddyBase>(); }
private void ExecuteDataObjectEvent(object key, DataBuddyBase dbb) { DataObjectEventHandler doe = Events[key] as DataObjectEventHandler; if (doe != null) { doe(dbb, EventArgs.Empty); } }
protected override void Establish_context() { base.Establish_context(); _sut = Container.Create<TalkPlugin>(); _post = MockRepository.GenerateStub<DataBuddyBase>(); Mocks.ReplayAll(); }
internal void Post_Validate(DataBuddyBase dataObject, EventArgs e) { if (!EnableEventHandlers) { return; } Post post = dataObject as Post; if (post == null) { return; } if (!_postRepository.GetCategoryNameOf(post).Equals(CategoryName, StringComparison.OrdinalIgnoreCase)) { return; } var validation = IoC.Resolve<ITalkValidator>(this).Validate(post).Interpret(); if (validation.Failed) { validation.ThrowAsException(); } }
/// <summary> /// Executes the BeforeDestroy Vent /// </summary> internal void ExecuteBeforeDestroyEvent(DataBuddyBase dbb) { ExecuteDataObjectEvent(BeforeDestroyObject, dbb); }
/// <summary> /// Executes the BeforeRemove Vent /// </summary> internal void ExecuteBeforeRemoveEvent(DataBuddyBase dbb) { ExecuteDataObjectEvent(BeforeRemoveObject, dbb); }
/// <summary> /// Executes the AfterCommit Vent /// </summary> internal void ExecuteAfterCommitEvent(DataBuddyBase dbb) { ExecuteDataObjectEvent(AfterCommitObject, dbb); }
/// <summary> /// Executes the BeforeInsert Vent /// </summary> internal void ExecuteBeforeInsertEvent(DataBuddyBase dbb) { ExecuteDataObjectEvent(BeforeInsertObject, dbb); }
/// <summary> /// Executes the AfterInsert Vent /// </summary> internal void ExecuteAfterInsertEvent(DataBuddyBase dbb) { ExecuteDataObjectEvent(AfterInsertObject, dbb); }
/// <summary> /// Executes the AfterDestroy Vent /// </summary> internal void ExecuteAfterDestroyEvent(DataBuddyBase dbb) { ExecuteDataObjectEvent(AfterDestroyObject, dbb); }
/// <summary> /// Called after an item has been committed. /// </summary> /// <param name="dataObject">The data object.</param> /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param> protected virtual void OnAfterCommit(DataBuddyBase dataObject, EventArgs e) { // We only care about posts Post post = dataObject as Post; if (post == null) return; // Determine if we should tweet this post if (!ShouldTweet(post)) return; try { // We've made it this far...the post is being published for the first time...alert the twitterverse! string updateText = FormatTweet(post); if (updateText.Length > 140) { Log.Warn(this.Name, "Unable to format '{0}' for twitter.", post.Title); return; } TwitterClient.UpdateStatus(this.Username, this.Password, updateText); } catch (WebException ex) { Log.Error("Twitter Notify", ex.Message); } }
void ga_AfterUpdate(DataBuddyBase dataObject, EventArgs e) { Post post = dataObject as Post; if (post != null) { // Check that post // 1. Is Published // 2. The current verison is set to be published // 3. Was not published within the last 10 seconds (some plugins update the post immediately after it is created, // which can cause double trackbacks/pings) if (post.IsPublished && post.PostStatus == PostStatus.Publish && post.Published.CompareTo(DateTime.UtcNow.AddSeconds(-10.0)) <= 0) { // Blog Pings if (EnablePings) XmlRpcPings.SendPings(post, PingUrls); // Check for links to send Trackbacks & Pingbacks if (EnableTrackbacks) LinkParser.CheckPost(post); } } }
void ga_AfterInsert(DataBuddyBase dataObject, EventArgs e) { Post post = dataObject as Post; if (post != null) { // Check that post // 1. Is Published // 2. The current verison is set to be published // 3. Is not a future dated post if (post.IsPublished && post.PostStatus == PostStatus.Publish && post.Published.CompareTo(DateTime.UtcNow.AddMinutes(1.0)) <= 0) { // Blog Pings if (EnablePings) XmlRpcPings.SendPings(post, PingUrls); // Check for links to send Trackbacks & Pingbacks if (EnableTrackbacks) LinkParser.CheckPost(post); } } }
/// <summary> /// Executes the AfterUpdate Vent /// </summary> internal void ExecuteAfterUpdateEvent(DataBuddyBase dbb) { ExecuteDataObjectEvent(AfterUpdateObject, dbb); }
/// <summary> /// Executes the BeforeUpdate Vent /// </summary> internal void ExecuteBeforeUpdateEvent(DataBuddyBase dbb) { ExecuteDataObjectEvent(BeforeUpdateOjbect, dbb); }
/// <summary> /// Executes the AfterRemove Vent /// </summary> internal void ExecuteAfterRemoveEvent(DataBuddyBase dbb) { ExecuteDataObjectEvent(AfterRemoveObject, dbb); }
/// <summary> /// Executes the BeforeValidate Vent /// </summary> internal void ExecuteBeforeValidateEvent(DataBuddyBase dbb) { ExecuteDataObjectEvent(BeforeValidateObject, dbb); }
internal void Post_SetDefaultValues(DataBuddyBase dataObject, EventArgs e) { if (!EnableEventHandlers) { return; } Post post = dataObject as Post; if (post == null) { return; } if (!_postRepository.GetCategoryNameOf(post).Equals(CategoryName, StringComparison.OrdinalIgnoreCase)) { return; } // Set default location if no location is given. if (!post[LocationUnknownField].IsSelected() && post[LocationField].IsNullOrEmpty()) { post[LocationField] = DefaultLocation; post.ForcePropertyUpdate(); } // Set default number maximum number of registrations. if (post[MaximumNumberOfRegistrationsField].IsNullOrEmpty()) { post[MaximumNumberOfRegistrationsField] = DefaultMaximumNumberOfRegistrations; post.ForcePropertyUpdate(); } // Set default registration recipient. if (post[RegistrationRecipientField].IsNullOrEmpty()) { post[RegistrationRecipientField] = DefaultRegistrationRecipient; post.ForcePropertyUpdate(); } }