Beispiel #1
0
        public override MessageEncoderFactory CreateMessageEncoderFactory()
        {
            CustomTextMessageEncoderFactory factory = new CustomTextMessageEncoderFactory(this.MediaType,
                                                                                          this.Encoding, this.MessageVersion);

            CustomTextMessageEncoder encoder = (CustomTextMessageEncoder)factory.Encoder;

            encoder.SetListener(_listener);
            encoder.AddBreakingBehaviour(_behaviour);
            return(factory);
        }
Beispiel #2
0
        public CustomTextMessageEncoder(CustomTextMessageEncoderFactory factory)
        {
            this.factory = factory;

            this.writerSettings          = new XmlWriterSettings();
            this.writerSettings.Encoding = Encoding.GetEncoding(factory.CharSet);
            this.contentType             = string.Format("{0}; charset={1}",
                                                         this.factory.MediaType, this.writerSettings.Encoding.HeaderName);

            MessageEncoderFactory             baseFactory;
            TextMessageEncodingBindingElement element =
                new TextMessageEncodingBindingElement(factory.MessageVersion, Encoding.GetEncoding(factory.CharSet));

            baseFactory = element.CreateMessageEncoderFactory();

            baseEncoder = baseFactory.Encoder;
        }