public static string DetermineConfigurationType(IConfigurationAction action) { var knowsItself = action as IKnowMyConfigurationType; if (knowsItself != null) return knowsItself.DetermineConfigurationType(); if (action.GetType().HasAttribute<ConfigurationTypeAttribute>()) { return action.GetType().GetAttribute<ConfigurationTypeAttribute>().Type; } return null; }
public static ConfigurationType? DetermineConfigurationType(IConfigurationAction action) { if (action is ReorderBehaviorsPolicy) return ConfigurationType.Reordering; if (action is NavigationRegistry) return ConfigurationType.Navigation; if (action is ServiceRegistry) return ConfigurationType.Services; if (action.GetType().HasAttribute<ConfigurationTypeAttribute>()) { return action.GetType().GetAttribute<ConfigurationTypeAttribute>().ConfigurationType; } return null; }
public static string DetermineConfigurationType(IConfigurationAction action) { var knowsItself = action as IKnowMyConfigurationType; if (knowsItself != null) { return(knowsItself.DetermineConfigurationType()); } if (action.GetType().HasAttribute <ConfigurationTypeAttribute>()) { return(action.GetType().GetAttribute <ConfigurationTypeAttribute>().Type); } return(null); }
public void Fill(IConfigurationAction action) { Type actionType = action.GetType(); if (TypeIsUnique(actionType) && _actions.Any(x => x.GetType() == actionType)) { return; } _actions.Fill(action); }
public void AddConfiguration(IConfigurationAction action, ConfigurationType?defaultType = null) { ConfigurationType?type = DetermineConfigurationType(action) ?? defaultType; if (type == null) { throw new ArgumentOutOfRangeException( "No ConfigurationType specified and unable to determine what the configuration type for " + action.GetType()); } _configurations[type.Value].FillAction(action); }
public static ConfigurationType?DetermineConfigurationType(IConfigurationAction action) { if (action is ReorderBehaviorsPolicy) { return(ConfigurationType.Reordering); } if (action is NavigationRegistry) { return(ConfigurationType.Navigation); } if (action is ServiceRegistry) { return(ConfigurationType.Services); } if (action.GetType().HasAttribute <ConfigurationTypeAttribute>()) { return(action.GetType().GetAttribute <ConfigurationTypeAttribute>().ConfigurationType); } return(null); }
public void Add(IConfigurationAction action, string configurationType = null) { string type = DetermineConfigurationType(action) ?? configurationType; if (type == null) { throw new ArgumentOutOfRangeException( "No Type specified and unable to determine what the configuration type for " + action.GetType()); } _configurations[type].Fill(_currentProvenance, action); }
public void Fill(ProvenanceChain provenanceStack, IConfigurationAction action) { if (provenanceStack == null || !provenanceStack.Chain.Any()) { throw new ArgumentException("No provenance supplied!"); } Type actionType = action.GetType(); if (TypeIsUnique(actionType) && _logs.Any(x => x.Action.GetType() == actionType)) { return; } _logs.Fill(new ActionLog(action, provenanceStack)); }
public void AddConfiguration(IConfigurationAction action, ConfigurationType? defaultType = null) { ConfigurationType? type = DetermineConfigurationType(action) ?? defaultType; if (type == null) { throw new ArgumentOutOfRangeException( "No ConfigurationType specified and unable to determine what the configuration type for " + action.GetType()); } _configurations[type.Value].FillAction(action); }
public void Add(IConfigurationAction action, string configurationType = null) { string type = DetermineConfigurationType(action) ?? configurationType; if (type == null) { throw new ArgumentOutOfRangeException( "No Type specified and unable to determine what the configuration type for " + action.GetType()); } _configurations[type].Fill(action); }