Class StorageMacroV2Unmarshaller
- java.lang.Object
-
- com.atlassian.confluence.content.render.xhtml.storage.macro.StorageMacroV2Unmarshaller
-
- All Implemented Interfaces:
Unmarshaller<MacroDefinition>
public class StorageMacroV2Unmarshaller extends Object implements Unmarshaller<MacroDefinition>
Parses XHTML containing ac:structured-macro elements and their parameters. Handles the fact that some parameters (e.g. confluence-content) need additional parsing into unstructured types (e.g. wiki format links) for backwards compatibility with the old intermediate format.
-
-
Constructor Summary
Constructors Constructor Description StorageMacroV2Unmarshaller(XmlEventReaderFactory xmlEventReaderFactory, MacroMetadataManager macroMetadataManager, Unmarshaller<ResourceIdentifier> resourceIdentifierUnmarshaller, Unmarshaller<Link> linkUnmarshaller, StorageMacroBodyParser storageMacroBodyParser, MacroManager macroManager)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
handles(StartElement startElementEvent, ConversionContext conversionContext)
Determines whether or not this unmarshaller should be applied to a fragment with the specified start element.MacroDefinition
unmarshal(XMLEventReader reader, FragmentTransformer mainFragmentTransformer, ConversionContext conversionContext)
Unmarshalls a StAX event stream to an object.
-
-
-
Constructor Detail
-
StorageMacroV2Unmarshaller
public StorageMacroV2Unmarshaller(XmlEventReaderFactory xmlEventReaderFactory, MacroMetadataManager macroMetadataManager, Unmarshaller<ResourceIdentifier> resourceIdentifierUnmarshaller, Unmarshaller<Link> linkUnmarshaller, StorageMacroBodyParser storageMacroBodyParser, MacroManager macroManager)
-
-
Method Detail
-
handles
public boolean handles(StartElement startElementEvent, ConversionContext conversionContext)
Description copied from interface:Unmarshaller
Determines whether or not this unmarshaller should be applied to a fragment with the specified start element.- Specified by:
handles
in interfaceUnmarshaller<MacroDefinition>
- Parameters:
startElementEvent
- start elementconversionContext
- the conversion context- Returns:
- true if this unmarshaller can be applied, false otherwise
-
unmarshal
public MacroDefinition unmarshal(XMLEventReader reader, FragmentTransformer mainFragmentTransformer, ConversionContext conversionContext) throws XhtmlException
Description copied from interface:Unmarshaller
Unmarshalls a StAX event stream to an object.- Specified by:
unmarshal
in interfaceUnmarshaller<MacroDefinition>
- Parameters:
reader
- a reader over the fragment to unmarshallmainFragmentTransformer
- TODOconversionContext
- the conversion context- Returns:
- the unmarshalled object
- Throws:
XhtmlException
- if some other problem occurs
-
-