Пример #1
0
        /// <summary>Adds the specified <see cref="ExcelPoolItemCreator"/> object.
        /// </summary>
        /// <param name="value">The value.</param>
        /// <exception cref="ArgumentException">Thrown, if a <see cref="ExcelPoolItemCreator"/> with the same (identifier) string or <see cref="System.Guid"/> representation
        /// has already been added.</exception>
        private static void Add(ExcelPoolItemCreator value)
        {
            Guid identifier = value.ObjectType.Identifier;

            if (sm_ObjectCreatorsByGuid.ContainsKey(identifier) == false)
            {
                if (sm_ObjectCreatorsByName.ContainsKey(value.Name) == false)
                {
                    sm_ObjectCreatorsByGuid.Add(identifier, value);
                    sm_ObjectCreatorsByName.Add(value);
                    return;
                }
            }
            throw new ArgumentException("Invalid 'ExcelPoolItemCreator' with name '" + value.Name.String + "' added. GUID or string representation is not unique.");
        }