示例#1
0
        /// <summary>
        /// Loads <paramref name="payload"/> properties from the <paramref name="storage"/>.
        /// </summary>
        /// <param name="storage">The storage to load values from.</param>
        /// <param name="payload">The event payload to load.</param>
        public void Load(IReadOnlyKeyValueCollection storage, object output)
        {
            Event payload = output as Event;

            if (payload != null)
            {
                payload.Key          = storage.Get <IKey>(Name.Key);
                payload.AggregateKey = storage.Get <IKey>(Name.AggregateKey);
                payload.Version      = storage.Get <int>(Name.AggregateVersion);
            }
        }
示例#2
0
        /// <summary>
        /// Loads <paramref name="payload"/> properties from the <paramref name="storage"/>.
        /// </summary>
        /// <param name="storage">The storage to load values from.</param>
        /// <param name="payload">The command payload to load.</param>
        public void Load(IReadOnlyKeyValueCollection storage, object output)
        {
            Command payload = output as Command;

            if (payload != null)
            {
                payload.Key = storage.Get <IKey>(Name.Key);
            }
        }
        // These required mapping from IKey.Type to C# class.

        public bool TryGet(IReadOnlyKeyValueCollection parameters, out IKey key)
        {
            Ensure.NotNull(parameters, "parameters");

            string keyType = parameters.Get <string>("Type");
            Type   type;

            if (!Definitions.keyTypeToClass.TryGetValue(keyType, out type))
            {
                throw new MissingKeyTypeToKeyClassMappingException(keyType);
            }

            return(TryGet(parameters, type, out key));
        }
示例#4
0
        /// <summary>
        /// For each found token, tries to read string value from <paramref name="tokenMapper"/> and replaces that token with returned value.
        /// </summary>
        /// <param name="tokenMapper">Token name to token value replacer.</param>
        /// <returns>Formatted string with replaced tokens.</returns>
        public string Format(IReadOnlyKeyValueCollection tokenMapper)
        {
            StringBuilder result = new StringBuilder();

            foreach (TokenWriterItem item in items)
            {
                if (item.IsToken)
                {
                    result.Append(tokenMapper.Get(item.Token.Fullname, ""));
                }
                else
                {
                    result.Append(item.Text);
                }
            }

            return(result.ToString());
        }
 /// <summary>
 /// Loads <paramref name="payload"/> properties from the <paramref name="storage"/>.
 /// </summary>
 /// <param name="storage">The storage to load values from.</param>
 /// <param name="payload">The event payload to load.</param>
 public void Load(IReadOnlyKeyValueCollection storage, Event payload)
 {
     payload.Key          = storage.Get <IKey>(Name.Key);
     payload.AggregateKey = storage.Get <IKey>(Name.AggregateKey);
     payload.Version      = storage.Get <int>(Name.AggregateVersion);
 }
 private IEnumerable <XElement> SerializeMetadata(IReadOnlyKeyValueCollection metadata)
 {
     return(metadata.Keys.Select(key => new XElement(
                                     XName.Get(XmlNameDefinition.MetadataElementName, XmlNameDefinition.XmlnsUri),
                                     new XAttribute(XmlNameDefinition.MetadataKeyAttributeName, key),
                                     new XAttribute(XmlNameDefinition.MetadataValueAttributeName, metadata.Get <string>(key))
                                     )));
 }
 public static bool GetIsAutoFocus(this IReadOnlyKeyValueCollection metadata, bool defaultValue)
 {
     return(metadata.Get("IsAutoFocus", defaultValue));
 }
 public static bool GetIsAutoFocus(this IReadOnlyKeyValueCollection metadata)
 {
     return(metadata.Get <bool>("IsAutoFocus"));
 }
 public static string GetLabel(this IReadOnlyKeyValueCollection metadata, string defaultValue)
 {
     return(metadata.Get("Label", defaultValue));
 }
 public static string GetLabel(this IReadOnlyKeyValueCollection metadata)
 {
     return(metadata.Get <string>("Label"));
 }
 public static int GetGridRowSpan(this IReadOnlyKeyValueCollection metadata, int defaultValue)
 {
     return(metadata.Get("Grid.RowSpan", defaultValue));
 }
 public static int GetGridRowSpan(this IReadOnlyKeyValueCollection metadata)
 {
     return(metadata.Get <int>("Grid.RowSpan"));
 }
示例#13
0
 /// <summary>
 /// Loads <paramref name="payload"/> properties from the <paramref name="storage"/>.
 /// </summary>
 /// <param name="storage">The storage to load values from.</param>
 /// <param name="payload">The command payload to load.</param>
 public void Load(IReadOnlyKeyValueCollection storage, Command payload)
 {
     payload.Key = storage.Get <IKey>(Name.Key);
 }