public override void Validate(DynamicsPluginConfiguration configuration, DynamicsPluginServices services) { if (!string.IsNullOrEmpty(_imageName)) { if (!services.Context.PostEntityImages.ContainsKey(_imageName)) { Fail($"The plugin '{configuration.PluginType.Name}' must contain a post-entity image named '{_imageName}' to be invoked."); } } }
public override void Validate(DynamicsPluginConfiguration configuration, DynamicsPluginServices services) { if (!string.IsNullOrEmpty(_entityName)) { if (((_pluginEntityType & PluginEntityType.Primary) == PluginEntityType.Primary) && string.Compare(services.Context.PrimaryEntityName, _entityName, true) != 0) { Fail($"The plugin '{configuration.PluginType.Name}' must be registered on the entity '{_entityName}' as the primary entity."); } if (((_pluginEntityType & PluginEntityType.Secondary) == PluginEntityType.Secondary) && string.Compare(services.Context.SecondaryEntityName, _entityName, true) != 0) { Fail($"The plugin '{configuration.PluginType.Name}' must be registered on the entity '{_entityName}' as the secondary entity."); } } }
public override void Validate(DynamicsPluginConfiguration configuration, DynamicsPluginServices services) { if (((_configurationType & PluginConfigurationType.Unsecure) == PluginConfigurationType.Unsecure) && string.IsNullOrEmpty(configuration.UnsecureConfiguration)) { Fail($"The plugin '{configuration.PluginType.Name}' must be registered with an unsecure configuration. You must re-register the plugin with this configuration before you can execute it."); } if (((_configurationType & PluginConfigurationType.Secure) == PluginConfigurationType.Secure) && string.IsNullOrEmpty(configuration.SecureConfiguration)) { Fail($"The plugin '{configuration.PluginType.Name}' must be registered with a secure configuration. You must re-register the plugin with this configuration before you can execute it."); } if (_configurationType == PluginConfigurationType.Both && (string.IsNullOrEmpty(configuration.UnsecureConfiguration) || string.IsNullOrEmpty(configuration.SecureConfiguration))) { Fail($"The plugin '{configuration.PluginType.Name}' must be registered with both an unsecure and a secure configuration. You must re-register the plugin with this configuration before you can execute it."); } }
public override void Validate(DynamicsPluginConfiguration configuration, DynamicsPluginServices services) { if ((services.Context.InputParameters == null || !services.Context.InputParameters.Contains("Target")) && _targetType != PluginContextTargetType.None) { Fail($"The plugin '{configuration.PluginType.Name}' must contain an input parameter named 'Target' to be invoked."); } if (services.Context.InputParameters != null && services.Context.InputParameters.Contains("Target")) { if (_targetType == PluginContextTargetType.None) { Fail($"The plugin '{configuration.PluginType.Name}' contains an input parameter named 'Target' but it should not."); } var targetIsEntity = services.Context.InputParameters["Target"] is Entity; var targetIsEntityReference = services.Context.InputParameters["Target"] is EntityReference; if (!targetIsEntity && _targetType == PluginContextTargetType.Entity) { Fail($"The plugin '{configuration.PluginType.Name}' contains an input parameter named 'Target' but it's type is not 'Entity'."); } if (!targetIsEntityReference && _targetType == PluginContextTargetType.EntityReference) { Fail($"The plugin '{configuration.PluginType.Name}' contains an input parameter named 'Target' but it's type is not 'EntityReference'."); } if (!(targetIsEntity || targetIsEntityReference) && _targetType == (PluginContextTargetType.Entity | PluginContextTargetType.EntityReference)) { Fail($"The plugin '{configuration.PluginType.Name}' contains an input parameter named 'Target' but it's type is not 'Entity' or 'EntityReference'."); } } }
public abstract void Validate(DynamicsPluginConfiguration configuration, DynamicsPluginServices services);