Class HtmlParserSession
HtmlParser.
Notes:
- This class is not thread safe and is typically discarded after one use.
See Also:
-
Nested Class Summary
Nested Classes -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedConstructor. -
Method Summary
Modifier and TypeMethodDescriptionstatic HtmlParserSession.Buildercreate(HtmlParser ctx) Creates a new builder for this object.protected <T> TdoParse(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 StringIdentical toparseText(XmlReader)except assumes the current event is the opening tag.protected HtmlBeanPropertyMetaReturns the language-specific metadata on the specified bean property.protected HtmlClassMetagetHtmlClassMeta(ClassMeta<?> cm) Returns the language-specific metadata on the specified class.protected booleanReturnstrue if the current element is a whitespace element.protected StringParses CHARACTERS data.protected StringParses the current whitespace element.Methods inherited from class org.apache.juneau.xml.XmlParserSession
create, decodeString, getEventAllocator, getReporter, getResolver, getXmlBeanMeta, getXmlBeanPropertyMeta, getXmlClassMeta, getXmlReader, isPreserveRootElement, isValidating, parseAnythingMethods inherited from class org.apache.juneau.parser.ReaderParserSession
create, createPipe, getFileCharset, getStreamCharset, isReaderParser, propertiesMethods 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, unswapMethods inherited from class org.apache.juneau.BeanSession
addWarning, convertToMemberType, convertToMemberType, convertToType, convertToType, convertToType, create, getAnnotationProvider, getArgsClassMeta, getBeanClassVisibility, getBeanConstructorVisibility, getBeanDictionary, getBeanFieldVisibility, getBeanMeta, getBeanMethodVisibility, getBeanRegistry, getBeanTypePropertyName, getBeanTypePropertyName, getClassMeta, getClassMeta, getClassMetaForObject, getClassMetaForObject, getLocale, getMediaType, getNamePropertyName, getNotBeanClasses, getNotBeanPackagesNames, 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, toBeanMapMethods 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.
Cannot benull .- Returns:
- A new builder.
-
doParse
protected <T> T doParse(ParserPipe pipe, ClassMeta<T> type) throws IOException, ParseException, ExecutableException Description copied from class:ParserSessionWorkhorse 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:
doParsein 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.
-
doParseIntoCollection
protected <E> Collection<E> doParseIntoCollection(ParserPipe pipe, Collection<E> c, Type elementType) throws Exception Description copied from class:ParserSessionImplementation method.Default implementation throws an
UnsupportedOperationException.- Overrides:
doParseIntoCollectionin 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.
-
doParseIntoMap
protected <K,V> Map<K,V> doParseIntoMap(ParserPipe pipe, Map<K, V> m, Type keyType, Type valueType) throws ExceptionDescription copied from class:ParserSessionImplementation method.Default implementation throws an
UnsupportedOperationException.- Overrides:
doParseIntoMapin 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.
-
getElementText
Identical toparseText(XmlReader)except assumes the current event is the opening tag.Precondition: Pointing to opening tag. Postcondition: Pointing to closing tag.
- Overrides:
getElementTextin 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.
-
getHtmlBeanPropertyMeta
Returns the language-specific metadata on the specified bean property.- Parameters:
bpm- The bean property to return the metadata on.- Returns:
- The metadata.
-
getHtmlClassMeta
Returns the language-specific metadata on the specified class.- Parameters:
cm- The class to return the metadata on.- Returns:
- The metadata.
-
isWhitespaceElement
Description copied from class:XmlParserSessionReturnstrue 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:
isWhitespaceElementin classXmlParserSession- Parameters:
r- The XML stream reader to read the current event from.- Returns:
true if the current element is a whitespace element.
-
parseText
Parses CHARACTERS data.Precondition: Pointing to event immediately following opening tag. Postcondition: Pointing to closing tag.
- Overrides:
parseTextin 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.
-
parseWhitespaceElement
protected String parseWhitespaceElement(XmlReader r) throws IOException, ParseException, XMLStreamException Description copied from class:XmlParserSessionParses 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:
parseWhitespaceElementin 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.
-