//------------------------------------------------------------------------------ // // This code was generated by a tool. // Runtime Version:4.0.30319.42000 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // //------------------------------------------------------------------------------ #if !SCRIPTSHARP using System; using System.Collections.Generic; using System.Diagnostics.CodeAnalysis; using System.Linq; using System.Text; using System.Threading.Tasks; namespace <%= client %>.<%= package %>.BusinessLogic { [ExcludeFromCodeCoverage] [AttributeUsage(AttributeTargets.Class, Inherited = false, AllowMultiple = true)] public class CrmPluginRegistrationAttribute : Attribute { public CrmPluginRegistrationAttribute( string message, string entityLogicalName, StageEnum stage, ExecutionModeEnum executionMode, string filteringAttributes, string stepName, int executionOrder, IsolationModeEnum isolationModel ) { Message = message; EntityLogicalName = entityLogicalName; FilteringAttributes = filteringAttributes; Name = stepName; ExecutionOrder = executionOrder; Stage = stage; ExecutionMode = executionMode; IsolationMode = isolationModel; Offline = false; Server = true; } /// /// /// /// Message Name /// /// /// /// Comma separated list of attributes that will trigger this step. Leave null for all attributes. /// /// /// public CrmPluginRegistrationAttribute( MessageNameEnum message, string entityLogicalName, StageEnum stage, ExecutionModeEnum executionMode, string filteringAttributes, string stepName, int executionOrder, IsolationModeEnum isolationModel ) : this(message.ToString(), entityLogicalName, stage, executionMode, filteringAttributes, stepName, executionOrder, isolationModel) { } /// /// Create workflow activity registration /// /// Name of the Workflow Activity /// Friendly name /// Description /// Group Name public CrmPluginRegistrationAttribute( string name, string friendlyName, string description, string groupName, IsolationModeEnum isolationModel ) { Name = name; FriendlyName = friendlyName; Description = description; GroupName = groupName; IsolationMode = isolationModel; } #region Named Properties public string Id { get; set; } public string FriendlyName { get; set; } public string GroupName { get; set; } public string Image1Name { get; set; } public string Image1Attributes { get; set; } public string Image2Name { get; set; } public string Image2Attributes { get; set; } public string Description { get; set; } public bool? DeleteAsyncOperaton { get; set; } public string UnSecureConfiguration { get; set; } public string SecureConfiguration { get; set; } public bool Offline { get; set; } public bool Server { get; set; } public ImageTypeEnum Image1Type { get; set; } public ImageTypeEnum Image2Type { get; set; } public PluginStepOperationEnum? Action { get; set; } #endregion #region Constructor Mandatory Properties public IsolationModeEnum IsolationMode { get; private set; } public string Message { get; private set; } public string EntityLogicalName { get; private set; } public string FilteringAttributes { get; private set; } public string Name { get; private set; } public int ExecutionOrder { get; private set; } public StageEnum? Stage { get; private set; } public ExecutionModeEnum ExecutionMode { get; private set; } #endregion } public enum ExecutionModeEnum { Asynchronous, Synchronous } public enum ImageTypeEnum { PreImage = 0, PostImage = 1, Both = 2 } public enum IsolationModeEnum { None = 0, Sandbox = 1 } public enum MessageNameEnum { AddItem, AddListMembers, AddMember, AddMembers, AddPrincipalToQueue, AddPrivileges, AddProductToKit, AddRecurrence, AddToQueue, AddUserToRecordTeam, ApplyRecordCreationAndUpdateRule, Assign, Associate, BackgroundSend, Book, CalculatePrice, Cancel, CheckIncoming, CheckPromote, Clone, CloneMobileOfflineProfile, CloneProduct, Close, CopyDynamicListToStatic, CopySystemForm, Create, CreateException, CreateInstance, CreateKnowledgeArticleTranslation, CreateKnowledgeArticleVersion, Delete, DeleteOpenInstances, DeliverIncoming, DeliverPromote, Disassociate, Execute, ExecuteById, Export, GenerateSocialProfile, GetDefaultPriceLevel, GrantAccess, Import, LockInvoicePricing, LockSalesOrderPricing, Lose, Merge, ModifyAccess, PickFromQueue, Publish, PublishAll, PublishTheme, QualifyLead, Recalculate, ReleaseToQueue, RemoveFromQueue, RemoveItem, RemoveMember, RemoveMembers, RemovePrivilege, RemoveProductFromKit, RemoveRelated, RemoveUserFromRecordTeam, ReplacePrivileges, Reschedule, Retrieve, RetrieveExchangeRate, RetrieveFilteredForms, RetrieveMultiple, RetrievePersonalWall, RetrievePrincipalAccess, RetrieveRecordWall, RetrieveSharedPrincipalsAndAccess, RetrieveUnpublished, RetrieveUnpublishedMultiple, RetrieveUserQueues, RevokeAccess, RouteTo, Send, SendFromTemplate, SetLocLabels, SetRelated, SetState, TriggerServiceEndpointCheck, UnlockInvoicePricing, UnlockSalesOrderPricing, Update, ValidateRecurrenceRule, Win } public enum PluginStepOperationEnum { Delete = 0, Deactivate = 1, } public enum StageEnum { PreValidation = 10, PreOperation = 20, PostOperation = 40 } #endif }