Package org.apache.solr.client.solrj.impl

## Class XMLResponseParser

- java.lang.Object
- - org.apache.solr.client.solrj.ResponseParser
  - - org.apache.solr.client.solrj.impl.XMLResponseParser

    public class XMLResponseParser
    extends ResponseParser

Since:
  solr 1.3

### Nested Class Summary

Nested Classes
`protected static class` `XMLResponseParser.KnownType`

### Field Summary

Fields
`static String` `XML_CONTENT_TYPE`

### Constructor Summary

Constructors
`XMLResponseParser()`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`protected String` `consumeRawContent​(XMLStreamReader parser)` This is a stub method for handling/validating "raw" xml field values in the context of tests.
`protected static String` `convertRawContent​(String raw, Function<XMLStreamReader,​String> consumeRawContent)` Convenience method that converts raw String input (should be valid xml when wrapped in a root element) and converts it to a format compatible with how `XMLResponseParser` parses from raw xml fields.
`String` `getContentType()` A well-behaved ResponseParser will return its content-type.
`String` `getWriterType()`
`NamedList<Object>` `processResponse​(InputStream in, String encoding)`
`NamedList<Object>` `processResponse​(Reader in)`
`protected List<Object>` `readArray​(XMLStreamReader parser)`
`protected SolrDocument` `readDocument​(XMLStreamReader parser)`
`protected SolrDocumentList` `readDocuments​(XMLStreamReader parser)`
`protected NamedList<Object>` `readNamedList​(XMLStreamReader parser)`

### Methods inherited from class org.apache.solr.client.solrj.ResponseParser

`getContentTypes, getVersion`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### XML_CONTENT_TYPE

    public static final String XML_CONTENT_TYPE

See Also:
  Constant Field Values

### Constructor Detail

#### XMLResponseParser

    public XMLResponseParser()

### Method Detail

#### getWriterType

    public String getWriterType()

Specified by:
  `getWriterType` in class `ResponseParser`

#### getContentType

    public String getContentType()

Description copied from class: `ResponseParser`
A well-behaved ResponseParser will return its content-type.

Overrides:
  `getContentType` in class `ResponseParser`
Returns:
  the content-type this parser expects to parse

#### processResponse

    public NamedList<Object> processResponse​(Reader in)

Specified by:
  `processResponse` in class `ResponseParser`

#### processResponse

    public NamedList<Object> processResponse​(InputStream in,
                                             String encoding)

Specified by:
  `processResponse` in class `ResponseParser`

#### readNamedList

    protected NamedList<Object> readNamedList​(XMLStreamReader parser)
                                       throws XMLStreamException

Throws:
  `XMLStreamException`

#### readArray

    protected List<Object> readArray​(XMLStreamReader parser)
                              throws XMLStreamException

Throws:
  `XMLStreamException`

#### readDocuments

    protected SolrDocumentList readDocuments​(XMLStreamReader parser)
                                      throws XMLStreamException

Throws:
  `XMLStreamException`

#### readDocument

    protected SolrDocument readDocument​(XMLStreamReader parser)
                                 throws XMLStreamException

Throws:
  `XMLStreamException`

#### consumeRawContent

    protected String consumeRawContent​(XMLStreamReader parser)
                                throws XMLStreamException

This is a stub method for handling/validating "raw" xml field values in the context of tests. Before this stub method was present, "raw" content would have still thrown an exception, albeit a different, more inscrutable exception.

Throws:
  `XMLStreamException`

#### convertRawContent

    protected static String convertRawContent​(String raw,
                                              Function<XMLStreamReader,​String> consumeRawContent)
                                       throws XMLStreamException

Convenience method that converts raw String input (should be valid xml when wrapped in a root element) and converts it to a format compatible with how `XMLResponseParser` parses from raw xml fields. This method is intended for test validation.

The main reason this method exists is to provide a consistent way of configuring and creating and invoking the sub-parser

Throws:
  `XMLStreamException`