public abstract class MarkupParser extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
CLASS_ATTACHMENT
The value for anchor element class attributes when used for attachments.
|
static java.lang.String |
CLASS_EDITPAGE
The value for anchor element class attributes when used for edit page links.
|
static java.lang.String |
CLASS_EXTERNAL
The value for anchor element class attributes when used for external links.
|
static java.lang.String |
CLASS_FOOTNOTE
The value for anchor element class attributes when used for footnote links.
|
static java.lang.String |
CLASS_FOOTNOTE_REF
The value for anchor element class attributes when used for footnote links.
|
static java.lang.String |
CLASS_INTERWIKI
The value for anchor element class attributes when used for interwiki page links.
|
static java.lang.String[] |
CLASS_TYPES |
static java.lang.String |
CLASS_WIKIPAGE
The value for anchor element class attributes when used for wiki page (normal) links.
|
static java.lang.String |
HASHLINK |
protected java.util.ArrayList<StringTransmutator> |
m_attachmentLinkMutatorChain |
protected Context |
m_context |
protected Engine |
m_engine |
protected java.util.ArrayList<StringTransmutator> |
m_externalLinkMutatorChain |
protected java.util.ArrayList<HeadingListener> |
m_headingListenerChain |
protected java.io.PushbackReader |
m_in |
protected java.util.List<org.apache.oro.text.regex.Pattern> |
m_inlineImagePatterns
Keeps image regexp Patterns
|
protected boolean |
m_inlineImages |
protected java.util.ArrayList<StringTransmutator> |
m_linkMutators |
protected LinkParsingOperations |
m_linkParsingOperations |
protected java.util.ArrayList<StringTransmutator> |
m_localLinkMutatorChain
Optionally stores internal wikilinks
|
protected boolean |
m_parseAccessRules |
static java.lang.String |
OUTLINK
Outlink css class.
|
static java.lang.String |
OUTLINK_IMAGE
Name of the outlink image; relative path to the JSPWiki directory.
|
static java.lang.String |
PROP_ALLOWHTML
If set to "true", allows using raw HTML within Wiki text.
|
static java.lang.String |
PROP_CAMELCASELINKS
If true, consider CamelCase hyperlinks as well.
|
static java.lang.String |
PROP_PLAINURIS
If true, all hyperlinks are translated as well, regardless whether they
are surrounded by brackets.
|
static java.lang.String |
PROP_RUNPLUGINS
If set to "true", enables plugins during parsing
|
static java.lang.String |
PROP_USEATTACHMENTIMAGE
If true, all outward attachment info links have a small link image appended.
|
static java.lang.String |
PROP_USEOUTLINKIMAGE
If true, all outward links (external links) have a small link image appended.
|
static java.lang.String |
PROP_USERELNOFOLLOW
If set to "true", all external links are tagged with 'rel="nofollow"'
|
protected static int |
PUSHBACK_BUFFER_SIZE
Allow this many characters to be pushed back in the stream.
|
| Modifier | Constructor and Description |
|---|---|
protected |
MarkupParser(Context context,
java.io.Reader in)
Constructs a MarkupParser.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addAttachmentLinkHook(StringTransmutator mutator)
Adds a hook for processing attachment links.
|
void |
addExternalLinkHook(StringTransmutator mutator)
Adds a hook for processing external links.
|
void |
addHeadingListener(HeadingListener listener)
Adds a HeadingListener to the parser chain.
|
void |
addLinkTransmutator(StringTransmutator mutator)
Adds a hook for processing link texts.
|
void |
addLocalLinkHook(StringTransmutator mutator)
Adds a hook for processing local links.
|
static java.lang.String |
cleanLink(java.lang.String link)
Cleans a Wiki name.
|
void |
disableAccessRules()
Disables access rule parsing.
|
void |
enableImageInlining(boolean toggle)
Use this to turn on or off image inlining.
|
java.util.List<org.apache.oro.text.regex.Pattern> |
getInlineImagePatterns() |
int |
getPosition()
Return the current position in the reader stream.
|
protected void |
initInlineImagePatterns() |
boolean |
isImageInlining() |
boolean |
isParseAccessRules() |
static org.jdom2.Element |
makeError(java.lang.String error)
Writes HTML for error message.
|
protected int |
nextToken()
Returns the next token in the stream.
|
abstract WikiDocument |
parse()
Parses the document.
|
protected void |
pushBack(int c)
Push back any character to the current input.
|
java.io.Reader |
setInputReader(java.io.Reader in)
Replaces the current input character stream with a new one.
|
static java.lang.String |
wikifyLink(java.lang.String link)
Cleans away extra legacy characters.
|
protected static final int PUSHBACK_BUFFER_SIZE
protected java.io.PushbackReader m_in
protected final java.util.ArrayList<StringTransmutator> m_localLinkMutatorChain
protected final java.util.ArrayList<StringTransmutator> m_externalLinkMutatorChain
protected final java.util.ArrayList<StringTransmutator> m_attachmentLinkMutatorChain
protected final java.util.ArrayList<StringTransmutator> m_linkMutators
protected final java.util.ArrayList<HeadingListener> m_headingListenerChain
protected boolean m_inlineImages
protected boolean m_parseAccessRules
protected java.util.List<org.apache.oro.text.regex.Pattern> m_inlineImagePatterns
protected final LinkParsingOperations m_linkParsingOperations
public static final java.lang.String PROP_ALLOWHTML
public static final java.lang.String PROP_RUNPLUGINS
public static final java.lang.String PROP_USEOUTLINKIMAGE
public static final java.lang.String PROP_USERELNOFOLLOW
public static final java.lang.String PROP_CAMELCASELINKS
public static final java.lang.String PROP_PLAINURIS
public static final java.lang.String PROP_USEATTACHMENTIMAGE
public static final java.lang.String HASHLINK
public static final java.lang.String OUTLINK_IMAGE
public static final java.lang.String OUTLINK
public static final java.lang.String CLASS_WIKIPAGE
public static final java.lang.String CLASS_EDITPAGE
public static final java.lang.String CLASS_INTERWIKI
public static final java.lang.String CLASS_FOOTNOTE
public static final java.lang.String CLASS_FOOTNOTE_REF
public static final java.lang.String CLASS_EXTERNAL
public static final java.lang.String CLASS_ATTACHMENT
public static final java.lang.String[] CLASS_TYPES
protected MarkupParser(Context context, java.io.Reader in)
context - The WikiContext.in - The reader from which we are reading the bytes from.public java.io.Reader setInputReader(java.io.Reader in)
in - New source for input. If null, this method does nothing.public void addLinkTransmutator(StringTransmutator mutator)
mutator - The hook to call. Null is safe.public void addLocalLinkHook(StringTransmutator mutator)
mutator - The hook to call. Null is safe.public void addExternalLinkHook(StringTransmutator mutator)
mutator - The hook to call. Null is safe.public void addAttachmentLinkHook(StringTransmutator mutator)
mutator - The hook to call. Null is safe.public void addHeadingListener(HeadingListener listener)
listener - The listener to add.public void disableAccessRules()
public boolean isParseAccessRules()
public void enableImageInlining(boolean toggle)
toggle - If true, images are inlined (as per set in jspwiki.properties)
If false, then images won't be inlined; instead, they will be
treated as standard hyperlinks.public boolean isImageInlining()
protected final void initInlineImagePatterns()
public java.util.List<org.apache.oro.text.regex.Pattern> getInlineImagePatterns()
public abstract WikiDocument parse() throws java.io.IOException
java.io.IOException - If something goes wrong.public int getPosition()
protected final int nextToken() throws java.io.IOException, java.lang.NullPointerException
java.io.IOException - If something bad happensjava.lang.NullPointerException - If you have not yet created an input document.protected void pushBack(int c) throws java.io.IOException
c - Character to push back.java.io.IOException - In case the character cannot be pushed back.public static org.jdom2.Element makeError(java.lang.String error)
error - The error string.public static java.lang.String cleanLink(java.lang.String link)
wikifyLink(String) to get the legacy behaviour.
[ This is a link ] -> This is a link
link - Link to be cleared. Null is safe, and causes this to return null.public static java.lang.String wikifyLink(java.lang.String link)
[ This is a link ] -> ThisIsALink
link - Link to be cleared. Null is safe, and causes this to return null.Copyright (c) 2001-2022 The Apache Software Foundation. All rights reserved.