Skip to content

Commit

Permalink
Added: automatic registration option for the Create message plugin step
Browse files Browse the repository at this point in the history
  • Loading branch information
yagasoft committed Dec 4, 2018
1 parent fa3ed99 commit c29ba0e
Show file tree
Hide file tree
Showing 14 changed files with 5,238 additions and 23 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#region Imports

using System;
using System.Linq;
using LinkDev.AutoNumbering.Plugins.Helpers;
using LinkDev.Libraries.Common;
using Microsoft.Xrm.Sdk;

#endregion

namespace LinkDev.AutoNumbering.Plugins.Config.Register
{
public class PostCreateRegisterStep : IPlugin
{
public void Execute(IServiceProvider serviceProvider)
{
new PostCreateRegisterStepLogic().Execute(this, serviceProvider);
}
}

[Log]
internal class PostCreateRegisterStepLogic : PluginLogic<PostCreateRegisterStep>
{
public PostCreateRegisterStepLogic() : base("Create", PluginStage.PostOperation, AutoNumbering.EntityLogicalName)
{
}

[NoLog]
protected override void ExecuteLogic()
{
var preImage = context.PreEntityImages.FirstOrDefault().Value?.ToEntity<AutoNumbering>();
var postImage = context.PostEntityImages.FirstOrDefault().Value?.ToEntity<AutoNumbering>();
new RegistrationHelper(service, log).RegisterStageConfigSteps(preImage, postImage);
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#region Imports

using System;
using System.Linq;
using LinkDev.AutoNumbering.Plugins.Helpers;
using LinkDev.Libraries.Common;
using Microsoft.Xrm.Sdk;

#endregion

namespace LinkDev.AutoNumbering.Plugins.Config.Register
{
public class PostUpdateRegisterStep : IPlugin
{
public void Execute(IServiceProvider serviceProvider)
{
new PostUpdateRegisterStepLogic().Execute(this, serviceProvider);
}
}

[Log]
internal class PostUpdateRegisterStepLogic : PluginLogic<PostUpdateRegisterStep>
{
public PostUpdateRegisterStepLogic() : base("Update", PluginStage.PostOperation, AutoNumbering.EntityLogicalName)
{
}

[NoLog]
protected override void ExecuteLogic()
{
var preImage = context.PreEntityImages.FirstOrDefault().Value?.ToEntity<AutoNumbering>();
var postImage = context.PostEntityImages.FirstOrDefault().Value?.ToEntity<AutoNumbering>();
new RegistrationHelper(service, log).RegisterStageConfigSteps(preImage, postImage);
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#region Imports

using System;
using System.Linq;
using LinkDev.AutoNumbering.Plugins.Helpers;
using LinkDev.Libraries.Common;
using Microsoft.Xrm.Sdk;

#endregion

namespace LinkDev.AutoNumbering.Plugins.Config.Register
{
public class PreDeleteRegisterStep : IPlugin
{
public void Execute(IServiceProvider serviceProvider)
{
new PreDeleteRegisterStepLogic().Execute(this, serviceProvider);
}
}

[Log]
internal class PreDeleteRegisterStepLogic : PluginLogic<PreDeleteRegisterStep>
{
public PreDeleteRegisterStepLogic() : base("Delete", PluginStage.PreOperation, AutoNumbering.EntityLogicalName)
{
}

[NoLog]
protected override void ExecuteLogic()
{
var preImage = context.PreEntityImages.FirstOrDefault().Value?.ToEntity<AutoNumbering>();
var postImage = context.PostEntityImages.FirstOrDefault().Value?.ToEntity<AutoNumbering>();
new RegistrationHelper(service, log).RegisterStageConfigSteps(preImage, postImage);
}
}
}
Loading

0 comments on commit c29ba0e

Please sign in to comment.