Class HtmlParserSession
HtmlParser
.
Notes:
- This class is not thread safe and is typically discarded after one use.
See Also:
-
Nested Class Summary
-
Constructor Summary
ModifierConstructorDescriptionprotected
Constructor. -
Method Summary
Modifier and TypeMethodDescriptionstatic HtmlParserSession.Builder
create
(HtmlParser ctx) Creates a new builder for this object.protected <T> T
doParse
(ParserPipe pipe, ClassMeta<T> type) Workhorse method.protected <E> Collection<E>
doParseIntoCollection
(ParserPipe pipe, Collection<E> c, Type elementType) Implementation method.protected <K,
V> Map<K, V> doParseIntoMap
(ParserPipe pipe, Map<K, V> m, Type keyType, Type valueType) Implementation method.protected final String
Identical toparseText(XmlReader)
except assumes the current event is the opening tag.protected HtmlBeanPropertyMeta
Returns the language-specific metadata on the specified bean property.protected HtmlClassMeta
getHtmlClassMeta
(ClassMeta<?> cm) Returns the language-specific metadata on the specified class.protected final boolean
Returnstrue if the current element is a whitespace element.protected final String
Parses CHARACTERS data.protected final String
Parses the current whitespace element.Methods inherited from class org.apache.juneau.xml.XmlParserSession
create, decodeString, getEventAllocator, getReporter, getResolver, getXmlBeanMeta, getXmlBeanPropertyMeta, getXmlClassMeta, getXmlReader, isPreserveRootElement, isValidating, parseAnything
Methods inherited from class org.apache.juneau.parser.ReaderParserSession
create, createPipe, getFileCharset, getStreamCharset, isReaderParser, properties
Methods inherited from class org.apache.juneau.parser.ParserSession
cast, convertAttrToType, create, getClassMeta, getDebugOutputLines, getInputAsString, getJavaMethod, getLastLocation, getListener, getListener, getListenerClass, getOuter, getPosition, getSchema, getStringBuilder, isAutoCloseStreams, isStrict, isTrimStrings, isUnbuffered, mark, onBeanSetterException, onUnknownProperty, parse, parse, parse, parse, parse, parse, parseArgs, parseIntoCollection, parseIntoMap, returnStringBuilder, setCurrentClass, setCurrentProperty, setName, setParent, setPipe, trim, trim, unmark, unswap
Methods inherited from class org.apache.juneau.BeanSession
_class, addWarning, convertToMemberType, convertToMemberType, convertToType, convertToType, convertToType, create, getArgsClassMeta, getBeanClassVisibility, getBeanConstructorVisibility, getBeanDictionary, getBeanFieldVisibility, getBeanMeta, getBeanMethodVisibility, getBeanRegistry, getBeanTypePropertyName, getBeanTypePropertyName, getClassMeta, getClassMeta, getClassMetaForObject, getClassMetaForObject, getLocale, getMediaType, getNamePropertyName, getNotBeanClasses, getNotBeanPackagesNames, getNotBeanPackagesPrefixes, getPropertyNamer, getSwaps, getTimeZone, getTimeZoneId, isBean, isBean, isBeanMapPutReturnsOldValue, isBeansRequireDefaultConstructor, isBeansRequireSerializable, isBeansRequireSettersForGetters, isBeansRequireSomeProperties, isFindFluentSetters, isIgnoreInvocationExceptionsOnGetters, isIgnoreInvocationExceptionsOnSetters, isIgnoreMissingSetters, isIgnoreUnknownBeanProperties, isIgnoreUnknownNullBeanProperties, isSortProperties, isUseEnumNames, isUseInterfaceProxies, isUseJavaBeanIntrospector, newBean, newBean, newBeanMap, newBeanMap, newGenericMap, object, string, toArray, toBeanMap, toBeanMap, toBeanMap
Methods inherited from class org.apache.juneau.ContextSession
checkForWarnings, getContext, getSessionProperties, getWarnings, isDebug, toString
-
Constructor Details
-
HtmlParserSession
Constructor.- Parameters:
builder
- The builder for this object.
-
-
Method Details
-
create
Creates a new builder for this object.- Parameters:
ctx
- The context creating this session.- Returns:
- A new builder.
-
doParse
protected <T> T doParse(ParserPipe pipe, ClassMeta<T> type) throws IOException, ParseException, ExecutableException Description copied from class:ParserSession
Workhorse method.Subclasses are expected to implement this method or
Parser.doParse(ParserSession,ParserPipe,ClassMeta)
.The default implementation of this method simply calls
Parser.doParse(ParserSession,ParserPipe,ClassMeta)
.- Overrides:
doParse
in classXmlParserSession
- Type Parameters:
T
- The class type of the object to create.- Parameters:
pipe
- Where to get the input from.type
- The class type of the object to create. Ifnull orObject.
, object type is based on what's being parsed. For example, when parsing JSON text, it may return aclass String ,Number ,JsonMap , etc...- Returns:
- The parsed object.
- Throws:
IOException
- Thrown by underlying stream.ParseException
- Malformed input encountered.ExecutableException
- Exception occurred on invoked constructor/method/field.
-
doParseIntoMap
protected <K,V> Map<K,V> doParseIntoMap(ParserPipe pipe, Map<K, V> m, Type keyType, Type valueType) throws ExceptionDescription copied from class:ParserSession
Implementation method.Default implementation throws an
UnsupportedOperationException
.- Overrides:
doParseIntoMap
in classXmlParserSession
- Type Parameters:
K
- The key type.V
- The value type.- Parameters:
pipe
- The parser input.m
- The map being loaded.keyType
- The class type of the keys, ornull to default toString.
.class valueType
- The class type of the values, ornull to default to whatever is being parsed.- Returns:
- The same map that was passed in to allow this method to be chained.
- Throws:
Exception
- If thrown from underlying stream, or if the input contains a syntax error or is malformed.
-
doParseIntoCollection
protected <E> Collection<E> doParseIntoCollection(ParserPipe pipe, Collection<E> c, Type elementType) throws Exception Description copied from class:ParserSession
Implementation method.Default implementation throws an
UnsupportedOperationException
.- Overrides:
doParseIntoCollection
in classXmlParserSession
- Type Parameters:
E
- The element type.- Parameters:
pipe
- The parser input.c
- The collection being loaded.elementType
- The class type of the elements, ornull to default to whatever is being parsed.- Returns:
- The same collection that was passed in to allow this method to be chained.
- Throws:
Exception
- If thrown from underlying stream, or if the input contains a syntax error or is malformed.
-
parseText
protected final String parseText(XmlReader r) throws IOException, ParseException, XMLStreamException Parses CHARACTERS data.Precondition: Pointing to event immediately following opening tag. Postcondition: Pointing to closing tag.
- Overrides:
parseText
in classXmlParserSession
- Parameters:
r
- The stream being read from.- Returns:
- The parsed string.
- Throws:
XMLStreamException
- Thrown by underlying XML stream.IOException
- Thrown by underlying stream.ParseException
- Malformed input encountered.
-
getElementText
protected final String getElementText(XmlReader r) throws IOException, XMLStreamException, ParseException Identical toparseText(XmlReader)
except assumes the current event is the opening tag.Precondition: Pointing to opening tag. Postcondition: Pointing to closing tag.
- Overrides:
getElementText
in classXmlParserSession
- Parameters:
r
- The stream being read from.- Returns:
- The parsed string.
- Throws:
XMLStreamException
- Thrown by underlying XML stream.ParseException
- Malformed input encountered.IOException
- Thrown by underlying stream.
-
isWhitespaceElement
Description copied from class:XmlParserSession
Returnstrue if the current element is a whitespace element.For the XML parser, this always returns
false . However, the HTML parser defines various whitespace elements such as"br" and"sp" .- Overrides:
isWhitespaceElement
in classXmlParserSession
- Parameters:
r
- The XML stream reader to read the current event from.- Returns:
true if the current element is a whitespace element.
-
parseWhitespaceElement
protected final String parseWhitespaceElement(XmlReader r) throws IOException, ParseException, XMLStreamException Description copied from class:XmlParserSession
Parses the current whitespace element.For the XML parser, this always returns
null since there is no concept of a whitespace element. However, the HTML parser defines various whitespace elements such as"br" and"sp" .- Overrides:
parseWhitespaceElement
in classXmlParserSession
- Parameters:
r
- The XML stream reader to read the current event from.- Returns:
- The whitespace character or characters.
- Throws:
IOException
- Thrown by underlying stream.ParseException
- Malformed input encountered.XMLStreamException
- Thrown by underlying reader.
-
getHtmlClassMeta
Returns the language-specific metadata on the specified class.- Parameters:
cm
- The class to return the metadata on.- Returns:
- The metadata.
-
getHtmlBeanPropertyMeta
Returns the language-specific metadata on the specified bean property.- Parameters:
bpm
- The bean property to return the metadata on.- Returns:
- The metadata.
-