### Question:
MAPCodec extends AbstractSoapInterceptor { public Set<QName> getUnderstoodHeaders() { return VersionTransformer.HEADERS; } MAPCodec(); static synchronized MAPCodec getInstance(Bus bus); Map<String, Exchange> getUncorrelatedExchanges(); Set<QName> getUnderstoodHeaders(); void handleMessage(SoapMessage message); void handleFault(SoapMessage message); AddressingProperties unmarshalMAPs(SoapMessage message); T decodeAsNative(String encodedAs,
                                Class<T> clz,
                                Element headerElement,
                                Unmarshaller unmarshaller); static final MAPCodec INSTANCE; }### Answer:
@Test public void testGetHeaders() throws Exception { Set<QName> headers = codec.getUnderstoodHeaders(); assertTrue("expected From header", headers.contains(Names.WSA_FROM_QNAME)); assertTrue("expected To header", headers.contains(Names.WSA_TO_QNAME)); assertTrue("expected ReplyTo header", headers.contains(Names.WSA_REPLYTO_QNAME)); assertTrue("expected FaultTo header", headers.contains(Names.WSA_FAULTTO_QNAME)); assertTrue("expected Action header", headers.contains(Names.WSA_ACTION_QNAME)); assertTrue("expected MessageID header", headers.contains(Names.WSA_MESSAGEID_QNAME)); }