Package org.apache.wiki.diff
Class ExternalDiffProvider
- java.lang.Object
-
- org.apache.wiki.diff.ExternalDiffProvider
-
- All Implemented Interfaces:
WikiProvider
,DiffProvider
public class ExternalDiffProvider extends java.lang.Object implements DiffProvider
This DiffProvider allows external command line tools to be used to generate the diff.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.wiki.diff.DiffProvider
DiffProvider.NullDiffProvider
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
PROP_DIFFCOMMAND
Determines the command to be used for 'diff'.-
Fields inherited from interface org.apache.wiki.api.providers.WikiProvider
LATEST_VERSION
-
-
Constructor Summary
Constructors Constructor Description ExternalDiffProvider()
Creates a new ExternalDiffProvider.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
getProviderInfo()
Return a valid HTML string for information.void
initialize(Engine engine, java.util.Properties properties)
Initializes the page provider.java.lang.String
makeDiffHtml(Context ctx, java.lang.String p1, java.lang.String p2)
Makes the diff by calling "diff" program.
-
-
-
Field Detail
-
PROP_DIFFCOMMAND
public static final java.lang.String PROP_DIFFCOMMAND
Determines the command to be used for 'diff'. This program must be able to output diffs in the unified format. For example 'diff -u %s1 %s2'.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ExternalDiffProvider
public ExternalDiffProvider()
Creates a new ExternalDiffProvider.
-
-
Method Detail
-
getProviderInfo
public java.lang.String getProviderInfo()
Description copied from interface:WikiProvider
Return a valid HTML string for information. May be anything.- Specified by:
getProviderInfo
in interfaceWikiProvider
- Returns:
- A string describing the provider.
- See Also:
WikiProvider.getProviderInfo()
-
initialize
public void initialize(Engine engine, java.util.Properties properties) throws NoRequiredPropertyException, java.io.IOException
Initializes the page provider.- Specified by:
initialize
in interfaceWikiProvider
- Parameters:
engine
- Engine to own this providerproperties
- A set of properties used to initialize this provider- Throws:
NoRequiredPropertyException
- If the provider needs a property which is not found in the property setjava.io.IOException
- If there is an IO problem- See Also:
WikiProvider.initialize(org.apache.wiki.api.core.Engine, java.util.Properties)
-
makeDiffHtml
public java.lang.String makeDiffHtml(Context ctx, java.lang.String p1, java.lang.String p2)
Makes the diff by calling "diff" program. The return string is to be XHTML compliant ready to display html. No further processing of this text will be done by the wiki engine.- Specified by:
makeDiffHtml
in interfaceDiffProvider
- Parameters:
ctx
- The Wiki Contextp1
- the old textp2
- the new text- Returns:
- An XHTML diff.
-
-