| java.lang.Object | |
| ↳ | com.atlassian.confluence.content.render.xhtml.storage.DefaultContentTransformerFactory |
Default implementation of the ContentTransformerFactory, typically used by macro developers to obtain
and optionally modify MacroDefinition objects in page of macro body content.
For following code obtains a reference to the last macro on a page with a given name.
public MacroDefinition getMacroDefinition(ContentEntityObject contentEntityObject, final String macroName)
{
final AtomicReference atomicMacroDefinition = new AtomicReference();
Transformer transformer = contentTransformerFactory.getTransformer(new XhtmlContent.MacroDefinitionUpdater()
{
public MacroDefinition update(MacroDefinition macroDefinition)
{
if (macroName.equals(macroDefinition.getName()))
{
atomicMacroDefinition.set(macroDefinition);
}
return macroDefinition;
}
});
String page = contentEntityObject.getBodyAsString();
Reader reader = new StringReader(page);
PageContext pageContext = contentEntityObject.toPageContext();
ConversionContext conversionContext = new DefaultConversionContext(pageContext);
try
{
transformer.transform(reader, conversionContext);
}
catch (XhtmlException e)
{
e.printStackTrace();
}
return atomicMacroDefinition.get();
}
| Public Constructors | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Public Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Returns a Transformer. The Transformer will read the content (normally in XHTML storage format) to create
MacroDefinition objects which will be passed to the macroDefinitionUpdater and the resulting
MacroDefinition will then be written back to the same content format. | |||||||||||
Returns a Transformer.
| |||||||||||
Returns a Transformer.
| |||||||||||
|
[Expand]
Inherited Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
| |||||||||||
From interface
com.atlassian.confluence.content.render.xhtml.storage.ContentTransformerFactory
| |||||||||||
Returns a Transformer. The Transformer will read the content (normally in XHTML storage format) to create
MacroDefinition objects which will be passed to the macroDefinitionUpdater and the resulting
MacroDefinition will then be written back to the same content format.
| macroDefinitionUpdater |
|---|
Returns a Transformer.
| macroDefinitionReplacer | that will be called each time a macro is found in the content. |
|---|
Returns a Transformer.
| macroDefinitionHandler | that will be called each time a macro is found in the content. |
|---|