Example #1
0
        public void WriteMetadata(XmlWriter writer, MetadataBase metadata)
        {
            if (writer == null)
            {
                throw new ArgumentNullException(nameof(writer));
            }
            if (metadata == null)
            {
                throw new ArgumentNullException(nameof(metadata));
            }

            WriteMetadataCore(writer, metadata);
        }
Example #2
0
        public void WriteMetadata(Stream stream, MetadataBase metadata)
        {
            if (stream == null)
            {
                throw new ArgumentNullException(nameof(stream));
            }
            if (metadata == null)
            {
                throw new ArgumentNullException(nameof(metadata));
            }

            using (var writer = XmlDictionaryWriter.CreateTextWriter(stream, Encoding.UTF8, false))
            {
                WriteMetadata(writer, metadata);
            }
        }
Example #3
0
        protected virtual void WriteMetadataCore(XmlWriter writer, MetadataBase metadata)
        {
            if (writer == null)
            {
                throw new ArgumentNullException(nameof(writer));
            }
            if (metadata == null)
            {
                throw new ArgumentNullException(nameof(metadata));
            }

            if (metadata is EntitiesDescriptor entities)
            {
                WriteEntitiesDescriptor(writer, entities);
            }
            else if (metadata is EntityDescriptor entity)
            {
                WriteEntityDescriptor(writer, entity);
            }
            else
            {
                throw new MetadataSerializationException("Unsupported metadata entity");
            }
        }