/** * Create a new {@code ProtobufHttpMessageWriter} with a default {@link ProtobufEncoder}. */ public ProtobufHttpMessageWriter() { super(new ProtobufEncoder()); }
/** * Create a new {@code ProtobufHttpMessageWriter} with a default {@link ProtobufEncoder}. */ public ProtobufHttpMessageWriter() { super(new ProtobufEncoder()); }
public ProtobufEncoderTests() { super(new ProtobufEncoder()); }
/** * Return writers that support specific types. * @param forMultipart whether to returns writers for general use ("false"), * or for multipart requests only ("true"). Generally the two sets are the * same except for the multipart writer itself. */ @SuppressWarnings("unchecked") final List<HttpMessageWriter<?>> getTypedWriters(boolean forMultipart) { if (!this.registerDefaults) { return Collections.emptyList(); } List<HttpMessageWriter<?>> writers = new ArrayList<>(); writers.add(new EncoderHttpMessageWriter<>(new ByteArrayEncoder())); writers.add(new EncoderHttpMessageWriter<>(new ByteBufferEncoder())); writers.add(new EncoderHttpMessageWriter<>(new DataBufferEncoder())); writers.add(new ResourceHttpMessageWriter()); writers.add(new EncoderHttpMessageWriter<>(CharSequenceEncoder.textPlainOnly())); // No client or server specific multipart writers currently.. if (!forMultipart) { extendTypedWriters(writers); } if (protobufPresent) { Encoder<?> encoder = this.protobufEncoder != null ? this.protobufEncoder : new ProtobufEncoder(); writers.add(new ProtobufHttpMessageWriter((Encoder) encoder)); } return writers; }
/** * Return writers that support specific types. * @param forMultipart whether to returns writers for general use ("false"), * or for multipart requests only ("true"). Generally the two sets are the * same except for the multipart writer itself. */ @SuppressWarnings("unchecked") final List<HttpMessageWriter<?>> getTypedWriters(boolean forMultipart) { if (!this.registerDefaults) { return Collections.emptyList(); } List<HttpMessageWriter<?>> writers = new ArrayList<>(); writers.add(new EncoderHttpMessageWriter<>(new ByteArrayEncoder())); writers.add(new EncoderHttpMessageWriter<>(new ByteBufferEncoder())); writers.add(new EncoderHttpMessageWriter<>(new DataBufferEncoder())); writers.add(new ResourceHttpMessageWriter()); writers.add(new EncoderHttpMessageWriter<>(CharSequenceEncoder.textPlainOnly())); // No client or server specific multipart writers currently.. if (!forMultipart) { extendTypedWriters(writers); } if (protobufPresent) { Encoder<?> encoder = this.protobufEncoder != null ? this.protobufEncoder : new ProtobufEncoder(); writers.add(new ProtobufHttpMessageWriter((Encoder) encoder)); } return writers; }
@Test public void encoderDecoderOverrides() { Jackson2JsonDecoder jacksonDecoder = new Jackson2JsonDecoder(); Jackson2JsonEncoder jacksonEncoder = new Jackson2JsonEncoder(); ProtobufDecoder protobufDecoder = new ProtobufDecoder(ExtensionRegistry.newInstance()); ProtobufEncoder protobufEncoder = new ProtobufEncoder(); Jaxb2XmlEncoder jaxb2Encoder = new Jaxb2XmlEncoder(); Jaxb2XmlDecoder jaxb2Decoder = new Jaxb2XmlDecoder(); this.configurer.defaultCodecs().jackson2JsonDecoder(jacksonDecoder); this.configurer.defaultCodecs().jackson2JsonEncoder(jacksonEncoder); this.configurer.defaultCodecs().protobufDecoder(protobufDecoder); this.configurer.defaultCodecs().protobufEncoder(protobufEncoder); this.configurer.defaultCodecs().jaxb2Decoder(jaxb2Decoder); this.configurer.defaultCodecs().jaxb2Encoder(jaxb2Encoder); assertDecoderInstance(jacksonDecoder); assertDecoderInstance(protobufDecoder); assertDecoderInstance(jaxb2Decoder); assertEncoderInstance(jacksonEncoder); assertEncoderInstance(protobufEncoder); assertEncoderInstance(jaxb2Encoder); }
/** * Create a new {@code ProtobufHttpMessageWriter} with a default {@link ProtobufEncoder}. */ public ProtobufHttpMessageWriter() { super(new ProtobufEncoder()); }
/** * Create a new {@code ProtobufHttpMessageWriter} with a default {@link ProtobufEncoder}. */ public ProtobufHttpMessageWriter() { super(new ProtobufEncoder()); }
@Override protected void register(GenericApplicationContext context, CodecConfigurer configurer) { configurer.customCodecs().encoder(new ProtobufEncoder()); configurer.customCodecs().decoder(new ProtobufDecoder()); } }
/** * Return writers that support specific types. * @param forMultipart whether to returns writers for general use ("false"), * or for multipart requests only ("true"). Generally the two sets are the * same except for the multipart writer itself. */ @SuppressWarnings("unchecked") final List<HttpMessageWriter<?>> getTypedWriters(boolean forMultipart) { if (!this.registerDefaults) { return Collections.emptyList(); } List<HttpMessageWriter<?>> writers = new ArrayList<>(); writers.add(new EncoderHttpMessageWriter<>(new ByteArrayEncoder())); writers.add(new EncoderHttpMessageWriter<>(new ByteBufferEncoder())); writers.add(new EncoderHttpMessageWriter<>(new DataBufferEncoder())); writers.add(new ResourceHttpMessageWriter()); writers.add(new EncoderHttpMessageWriter<>(CharSequenceEncoder.textPlainOnly())); // No client or server specific multipart writers currently.. if (!forMultipart) { extendTypedWriters(writers); } if (protobufPresent) { Encoder<?> encoder = this.protobufEncoder != null ? this.protobufEncoder : new ProtobufEncoder(); writers.add(new ProtobufHttpMessageWriter((Encoder) encoder)); } return writers; }