Interface XhtmlContent
- 
- All Superinterfaces:
- MacroDefinitionTransformer,- WikiToStorageConverter
 - All Known Implementing Classes:
- DefaultXhtmlContent
 
 public interface XhtmlContent extends MacroDefinitionTransformer, WikiToStorageConverter Provides methods that manipulate XHTML storage format content, convert between view and storage formats or from old style wiki markup to storage format.
- 
- 
Method SummaryAll Methods Instance Methods Abstract Methods Modifier and Type Method Description StringconvertEmbeddedImageToStorage(EmbeddedImage embeddedImage, ConversionContext context)Returns a storage format fragment for the suppliedembeddedImage.StringconvertEmbeddedImageToView(EmbeddedImage embeddedImage, ConversionContext context)Returns a view format fragment for the suppliedembeddedImage.StringconvertInlineTaskListToStorage(InlineTaskList inlineTaskList, ConversionContext context)Returns a storage format fragment for the suppliedinlineTaskList.StringconvertInlineTaskListToView(InlineTaskList inlineTaskList, ConversionContext context)Returns a view format fragment for the suppliedinlineTaskList.StringconvertLinkToStorage(Link link, ConversionContext context)Returns a storage format fragment for the suppliedlink.StringconvertLinkToView(Link link, ConversionContext context)Returns a view format fragment for the suppliedlink.StringconvertMacroDefinitionToStorage(MacroDefinition macroDefinition, ConversionContext context)Returns an storage format fragment for the suppliedmacroDefinition.StringconvertMacroDefinitionToView(MacroDefinition macroDefinition, ConversionContext context)Returns a view format fragment for the suppliedmacroDefinition.List<BatchedRenderResult>convertStorageToView(BatchedRenderRequest... renderRequests)Returns a view format fragments for the suppliedrenderRequests.StringconvertStorageToView(String storageFragment, ConversionContext context)Returns a view format fragment for the suppliedstorageFragment.<T extends ContentEntityObject>
 TconvertWikiBodyToStorage(T ceo)Convert the body of the supplied ContentEntityObject to Confluence Storage Format XHTML (if necessary).StringconvertWikiToStorage(String wikiContent, ConversionContext context, List<RuntimeException> migrationExceptions)Returns the XHTML storage format equivalent of the suppliedwikiContent(wiki markup).StringconvertWikiToView(String wikiContent, ConversionContext context, List<RuntimeException> migrationExceptions)Returns the HTML view format equivalent of the suppliedwikiContent.voidhandleMacroDefinitions(String storageFragment, ConversionContext context, MacroDefinitionHandler handler)Perform an operation onMacroDefinitions in the suppliedstorageFragmentwithout making changes to the storage representation.voidhandleMacroDefinitions(String storageFragment, ConversionContext context, MacroDefinitionHandler handler, MacroDefinitionMarshallingStrategy strategy)Perform an operation onMacroDefinitions in the suppliedstorageFragment, with optional changes to the storage representation defined by theMacroDefinitionMarshallingStrategy.voidhandleXhtmlElements(String storageFragment, ConversionContext context, List<? extends XhtmlVisitor> visitors)Provides a mechanism for finding arbitrary Xhtml elements in the suppliedstorageFormat.StringreplaceMacroDefinitionsWithString(String storageFragment, ConversionContext context, MacroDefinitionReplacer replacer)ReplacesMacroDefinitions in the suppliedstorageFragmentwith a String.StringupdateMacroDefinitions(String storageFragment, ConversionContext context, MacroDefinitionUpdater updater)UpdatesMacroDefinitions in the suppliedstorageFragment.
 
- 
- 
- 
Method Detail- 
convertWikiToStorageString convertWikiToStorage(String wikiContent, ConversionContext context, List<RuntimeException> migrationExceptions) Returns the XHTML storage format equivalent of the suppliedwikiContent(wiki markup).- Specified by:
- convertWikiToStoragein interface- WikiToStorageConverter
- Parameters:
- wikiContent- to be converted.
- context- for the conversion.
- migrationExceptions- that will be populated with any exceptions that take place during the migration. There may be multiple exceptions if there are multiple wiki markup sections.
- Returns:
- the XHTML storage format equivalent.
 
 - 
convertWikiBodyToStorage<T extends ContentEntityObject> T convertWikiBodyToStorage(T ceo) Convert the body of the supplied ContentEntityObject to Confluence Storage Format XHTML (if necessary). Since for now and the near future Confluence may have both wiki formatted and XHTML formatted ContentEntityObjects in the system (wiki formatted historical versions may be present in an upgraded installation) this method provides a convenient way to ensure you only need to handle ContentEntityObjects with the new XHTML format of body. Note that the returned ceo is a clone of the passed in version, even if no conversion was necessary. - Specified by:
- convertWikiBodyToStoragein interface- WikiToStorageConverter
- Parameters:
- ceo- the ContentEntityObject to be converted (if necessary).
- Returns:
- a clone of the provided ContentEntityObject with its wiki formatted body converted.
 
 - 
convertWikiToViewString convertWikiToView(String wikiContent, ConversionContext context, List<RuntimeException> migrationExceptions) throws XMLStreamException, XhtmlException Returns the HTML view format equivalent of the suppliedwikiContent.- Parameters:
- wikiContent- to be converted.
- context- for the conversion.
- migrationExceptions- that will be populated with any exceptions that take place during the migration. There may be multiple exceptions if there are multiple wiki markup sections.
- Returns:
- the HTML view format equivalent.
- Throws:
- XMLStreamException- if there was a problem reading intermediate storage format data that is created during the conversion.
- XhtmlException- if there was a problem creating the view format output.
 
 - 
convertStorageToViewString convertStorageToView(String storageFragment, ConversionContext context) throws XMLStreamException, XhtmlException Returns a view format fragment for the suppliedstorageFragment.- Parameters:
- storageFragment- to be converted (for example the body of a macro).
- context- for the conversion.
- Returns:
- the view format fragment.
- Throws:
- XMLStreamException- if there was a problem reading the storage fragment.
- XhtmlException- if there was a problem creating the view fragment.
 
 - 
convertStorageToViewList<BatchedRenderResult> convertStorageToView(BatchedRenderRequest... renderRequests) Returns a view format fragments for the suppliedrenderRequests.Failed renders will be flagged in the results, rather than throwing an XMLStreamException or XhtmlException. - Parameters:
- renderRequests- batches of storageFragments to be converted with their associated contexts
- Returns:
- a list of batch results.
 
 - 
convertMacroDefinitionToViewString convertMacroDefinitionToView(MacroDefinition macroDefinition, ConversionContext context) throws XhtmlException Returns a view format fragment for the suppliedmacroDefinition.- Parameters:
- macroDefinition- that describes the macro.
- context- for the conversion.
- Returns:
- the view format fragment.
- Throws:
- XhtmlException- if there was a problem creating the fragment.
 
 - 
convertLinkToViewString convertLinkToView(Link link, ConversionContext context) throws XhtmlException Returns a view format fragment for the suppliedlink.- Parameters:
- link- that describes the link.
- context- for the conversion.
- Returns:
- the view format fragment.
- Throws:
- XhtmlException- if there was a problem creating the fragment.
 
 - 
convertEmbeddedImageToViewString convertEmbeddedImageToView(EmbeddedImage embeddedImage, ConversionContext context) throws XhtmlException Returns a view format fragment for the suppliedembeddedImage.- Parameters:
- embeddedImage- that describes the embedded image.
- context- for the conversion.
- Returns:
- the view format fragment.
- Throws:
- XhtmlException- if there was a problem creating the fragment.
 
 - 
convertInlineTaskListToViewString convertInlineTaskListToView(InlineTaskList inlineTaskList, ConversionContext context) throws XhtmlException Returns a view format fragment for the suppliedinlineTaskList.- Parameters:
- inlineTaskList- that describes the inline task list.
- context- for the conversion.
- Returns:
- the view format fragment.
- Throws:
- XhtmlException- if there was a problem creating the fragment.
 
 - 
convertMacroDefinitionToStorageString convertMacroDefinitionToStorage(MacroDefinition macroDefinition, ConversionContext context) throws XhtmlException Returns an storage format fragment for the suppliedmacroDefinition.- Parameters:
- macroDefinition- that describes the macro.
- context- for the conversion.
- Returns:
- the storage format fragment.
- Throws:
- XhtmlException- if there was a problem creating the fragment.
 
 - 
convertLinkToStorageString convertLinkToStorage(Link link, ConversionContext context) throws XhtmlException Returns a storage format fragment for the suppliedlink.- Parameters:
- link- that describes the link.
- context- for the conversion.
- Returns:
- the storage format fragment.
- Throws:
- XhtmlException- if there was a problem creating the fragment.
 
 - 
convertEmbeddedImageToStorageString convertEmbeddedImageToStorage(EmbeddedImage embeddedImage, ConversionContext context) throws XhtmlException Returns a storage format fragment for the suppliedembeddedImage.- Parameters:
- embeddedImage- that describes the embedded image.
- context- for the conversion.
- Returns:
- the storage format fragment.
- Throws:
- XhtmlException- if there was a problem creating the fragment.
 
 - 
convertInlineTaskListToStorageString convertInlineTaskListToStorage(InlineTaskList inlineTaskList, ConversionContext context) throws XhtmlException Returns a storage format fragment for the suppliedinlineTaskList.- Parameters:
- inlineTaskList- that describes the inline task list.
- context- for the conversion.
- Returns:
- the storage format fragment.
- Throws:
- XhtmlException- if there was a problem creating the fragment.
 
 - 
updateMacroDefinitionsString updateMacroDefinitions(String storageFragment, ConversionContext context, MacroDefinitionUpdater updater) throws XhtmlException UpdatesMacroDefinitions in the suppliedstorageFragment.// Changes the name of all "mice" macros to "cheese". page.setBodyAsString(xhtmlContent.updateMacroDefinitions(page.getBodyAsString(), context, new XhtmlContent.MacroDefinitionUpdater() { public MacroDefinition update(MacroDefinition macroDefinition) { if ("mice".equals(macroDefinition.getName())) macroDefinition.setName("cheese"); return macroDefinition; } }));- Specified by:
- updateMacroDefinitionsin interface- MacroDefinitionTransformer
- Parameters:
- storageFragment- or more typically the storage representation of a complete- ContentEntityObjectwhich might contain macro definitions.
- context- for the conversion.
- updater- which is called to update each MacroDefinition found.
- Returns:
- the storage representation of the modified fragment.
- Throws:
- XhtmlException- if there was a problem reading the storage fragment, creating the MacroDefinition or creating the modified fragment.
 
 - 
replaceMacroDefinitionsWithStringString replaceMacroDefinitionsWithString(String storageFragment, ConversionContext context, MacroDefinitionReplacer replacer) throws XhtmlException ReplacesMacroDefinitions in the suppliedstorageFragmentwith a String. Use {link #updateMacroDefinitions} rather than this method if you wish to replace or update one definition with another.// Replaces "cheese" macros with some XHTML. page.setBodyAsString(xhtmlContent.replaceMacroDefinitionsWithString(page.getBodyAsString(), context, new MacroDefinitionReplacer() { public String replace(MacroDefinition macroDefinition) throws XhtmlException { if ("cheese".equals(macroDefinition.getName())) return "I hate cheese! "; return xhtmlContent.convertMacroDefinitionToStorage(macroDefinition, context); } }));- Specified by:
- replaceMacroDefinitionsWithStringin interface- MacroDefinitionTransformer
- Parameters:
- storageFragment- or more typically the storage representation of a complete- ContentEntityObjectwhich might contain macro definitions.
- context- for the conversion.
- replacer- which is called to replace each MacroDefinition found with a replacement in storage format (typically XHTML).
- Returns:
- the storage representation of the modified fragment.
- Throws:
- XhtmlException- if there was a problem reading the storage fragment, creating the MacroDefinition or creating the modified fragment.
 
 - 
handleMacroDefinitionsvoid handleMacroDefinitions(String storageFragment, ConversionContext context, MacroDefinitionHandler handler) throws XhtmlException Perform an operation onMacroDefinitions in the suppliedstorageFragmentwithout making changes to the storage representation.// Finds the last macro on a page final AtomicReference atomicMacroDefinition = new AtomicReference (); xhtmlContent.handleMacroDefinitions(page.getBodyAsString(), context, new MacroDefinitionHandler() { public void handle(MacroDefinition macroDefinition) { atomicMacroDefinition.set(macroDefinition); } }); MacroDefinition lastMacro = atomicMacroDefinition.get(); - Specified by:
- handleMacroDefinitionsin interface- MacroDefinitionTransformer
- Parameters:
- storageFragment- or more typically the storage representation of a complete- ContentEntityObjectwhich might contain macro definitions.
- context- for the conversion.
- handler- which is called each MacroDefinition found.
- Throws:
- XhtmlException- if there was a problem reading the storage fragment or creating the MacroDefinition.
 
 - 
handleMacroDefinitionsvoid handleMacroDefinitions(String storageFragment, ConversionContext context, MacroDefinitionHandler handler, MacroDefinitionMarshallingStrategy strategy) throws XhtmlException Perform an operation onMacroDefinitions in the suppliedstorageFragment, with optional changes to the storage representation defined by theMacroDefinitionMarshallingStrategy.// Finds the last macro on a page, maintaining any nested macros within the MacroDefinition body final AtomicReference atomicMacroDefinition = new AtomicReference (); xhtmlContent.handleMacroDefinitions(page.getBodyAsString(), context, new MacroDefinitionHandler() { public void handle(MacroDefinition macroDefinition) { atomicMacroDefinition.set(macroDefinition); } }, MacroDefinitionMarshallingStrategy.MARSHALL_MACRO); MacroDefinition lastMacro = atomicMacroDefinition.get(); - Specified by:
- handleMacroDefinitionsin interface- MacroDefinitionTransformer
- Parameters:
- storageFragment- or more typically the storage representation of a complete- ContentEntityObjectwhich might contain macro definitions.
- context- for the conversion.
- handler- which is called each MacroDefinition found.
- strategy- the strategy used to transform the body of the handled macros
- Throws:
- XhtmlException- if there was a problem reading the storage fragment or creating the MacroDefinition.
 
 - 
handleXhtmlElementsvoid handleXhtmlElements(String storageFragment, ConversionContext context, List<? extends XhtmlVisitor> visitors) throws XhtmlException Provides a mechanism for finding arbitrary Xhtml elements in the suppliedstorageFormat.- Parameters:
- storageFragment- or more typically the storage representation of a complete- ContentEntityObject
- context- for the conversion
- visitors- a list of visitors
- Throws:
- XhtmlException
 
 
- 
 
-