private IDictionary <string, object> GenerateAttributes(object instance, IResourceMapping mapping)
        {
            var attributeNames = mapping.GetAttributeNames().ToList();

            if (!attributeNames.Any())
            {
                return(null);
            }

            var attributes = new Dictionary <string, object>();

            foreach (var attributeName in attributeNames)
            {
                var value = mapping.GetAttributeValue(instance, attributeName);
                attributes.Add(attributeName, value);
            }

            return(attributes);
        }