de.tuberlin.cs.flp.jspwiki.plugin
Class WikiArchive

java.lang.Object
  extended byde.tuberlin.cs.flp.jspwiki.plugin.Category
      extended byde.tuberlin.cs.flp.jspwiki.plugin.WikiArchive

public class WikiArchive
extends Category

[{WikiArchive
(all parameters from the 'Category'-plugin, plus:)
[import=type1,type2,...]
[export=type1,type2,...]
[io=type1,type2,...] (sets both import and export, usual usage)
[categoryMarker='text with link to category-page'] (page-footer for import/exportm marking the page as a member of its category)
[usePageLinks] (use outgoing links from page, instead of category member. Useful e.g. for exporting from legacy-pseudo-categories and later create a new category)
[zipAttachments] (enable zip file import/export which may include attachments) }]

See also configuration parameters: ...enableDelete ...enableZipAttachments


Field Summary
static java.lang.String ATTRIBUTE_EXPORT_CONTENTDISPOSITION
          Constant ATTRIBUTE_EXPORT_CONTENTDISPOSITION.
static java.lang.String ATTRIBUTE_EXPORT_CONTENTTYPE
          Constant ATTRIBUTE_EXPORT_CONTENTTYPE.
static java.lang.String ATTRIBUTE_EXPORT_RESULT
          Constant ATTRIBUTE_EXPORT_RESULT.
static int BOTH
          Constant BOTH.
static java.lang.String CHARACTER_ENCODING
          Character encoding used by uploaded files and used for generating download data.
static java.lang.String DEFAULT_TEMP_DIR
          Temporary directory used if not otherwise configured via parameter "jspwiki.plugin_name.uploadTempDir" in WEB-INF/jspwiki.properties.
static int EXPORT
          Constant EXPORT.
static int IMPORT
          Constant IMPORT.
static int MODE_BOTH
          Constant MODE_BOTH.
static int MODE_INSERT
          Constant MODE_INSERT.
static int MODE_NONE
          Constant MODE_NONE.
static int MODE_SINGLE
          Constant MODE_SINGLE.
static int MODE_UPDATE
          Constant MODE_UPDATE.
static java.lang.String PARAM_CATEGORY_MARKER
           
static java.lang.String PARAM_EXPORT
           
static java.lang.String PARAM_IMPORT
           
static java.lang.String PARAM_IO
           
static java.lang.String PARAM_MENU_POSITION
           
static java.lang.String PARAM_USE_OUTGOING_LINKS
           
static java.lang.String PARAM_ZIP_ATTACHMENTS
           
 
Fields inherited from class de.tuberlin.cs.flp.jspwiki.plugin.Category
DEFAULT_GALLERY_COLUMNS, DEFAULT_PAGE, DEFAULT_PAGESIZE, DEFAULT_THUMBNAIL_SIZE, FORMAT_GALLERY, FORMAT_LIST, HEADLINES_ALPHABETIC, HEADLINES_NONE, HTTP_PARAM_PAGE, PARAM_ATTACHMENTS, PARAM_FORMAT, PARAM_GALLERY_COLUMNS, PARAM_HEADLINES, PARAM_PAGE, PARAM_PAGESIZE, PARAM_SORT, PARAM_THUMBNAIL_SIZE, PARAM_THUMBNAILS, SORT_ALPHABETIC, SORT_NONE, VALUE_FORMAT_GALLERY, VALUE_HEADLINES_ALPHABETIC, VALUE_SORT_ALPHABETIC
 
Constructor Summary
WikiArchive()
           
 
Method Summary
static java.lang.String createZip(WikiEngine engine, java.lang.String dataString, java.lang.String filename, java.util.Collection pages)
           
protected  void deletePages(WikiEngine engine, java.util.Collection pageNames)
          Removes a collection of pages from the Wiki.
protected  java.lang.String deriveFullTitle(java.lang.String name, WikiPage wikipage, WikiEngine engine)
           
protected static java.lang.String error(java.lang.String s)
          Formats a string as HTML-error message.
 java.lang.String execute(WikiContext context, java.util.Map params)
          Executes the plugin.
 java.lang.String getProperty(WikiEngine engine, java.lang.String propname)
          Returns a property entry from the JSPWiki configuration file.
 java.lang.String getProperty(WikiEngine engine, java.lang.String propname, java.lang.String defaultValue)
          Returns a property entry from the JSPWiki configuration file.
 java.lang.String getPropertyName(java.lang.String propname)
          Returns the property name for the specified sub-property.
protected static java.lang.String hiddenfield(java.lang.String name, java.lang.String value)
          Outputs an HTML-form-element for a hidden-field.
static void pageEnd(HttpServletRequest request, HttpServletResponse response, JspWriter out)
          Handles file downloads to the client.
static java.lang.String resolveZip(WikiEngine engine, java.lang.String dataString, java.util.Map attachmentsToBeFilled)
           
protected static java.lang.String selectbox(java.lang.String name, java.util.Collection keys, java.util.Map labelsByKey, java.lang.String value)
          Outputs an HTML-form-element for a select-box.
protected static void updateAttachment(WikiEngine engine, java.lang.String path, byte[] data)
           
protected static void updateAttachments(WikiEngine engine, java.util.Map attachments)
           
protected static java.lang.String warning(java.lang.String s)
          Formats a string as HTML-warning message.
 
Methods inherited from class de.tuberlin.cs.flp.jspwiki.plugin.Category
categoryPageLink, heading
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PARAM_IMPORT

public static final java.lang.String PARAM_IMPORT
See Also:
Constant Field Values

PARAM_EXPORT

public static final java.lang.String PARAM_EXPORT
See Also:
Constant Field Values

PARAM_IO

public static final java.lang.String PARAM_IO
See Also:
Constant Field Values

PARAM_CATEGORY_MARKER

public static final java.lang.String PARAM_CATEGORY_MARKER
See Also:
Constant Field Values

PARAM_USE_OUTGOING_LINKS

public static final java.lang.String PARAM_USE_OUTGOING_LINKS
See Also:
Constant Field Values

PARAM_ZIP_ATTACHMENTS

public static final java.lang.String PARAM_ZIP_ATTACHMENTS
See Also:
Constant Field Values

PARAM_MENU_POSITION

public static final java.lang.String PARAM_MENU_POSITION
See Also:
Constant Field Values

MODE_NONE

public static final int MODE_NONE
Constant MODE_NONE.

See Also:
Constant Field Values

MODE_UPDATE

public static final int MODE_UPDATE
Constant MODE_UPDATE.

See Also:
Constant Field Values

MODE_INSERT

public static final int MODE_INSERT
Constant MODE_INSERT.

See Also:
Constant Field Values

MODE_BOTH

public static final int MODE_BOTH
Constant MODE_BOTH.

See Also:
Constant Field Values

MODE_SINGLE

public static final int MODE_SINGLE
Constant MODE_SINGLE.

See Also:
Constant Field Values

EXPORT

public static final int EXPORT
Constant EXPORT.

See Also:
Constant Field Values

IMPORT

public static final int IMPORT
Constant IMPORT.

See Also:
Constant Field Values

BOTH

public static final int BOTH
Constant BOTH.

See Also:
Constant Field Values

ATTRIBUTE_EXPORT_RESULT

public static final java.lang.String ATTRIBUTE_EXPORT_RESULT
Constant ATTRIBUTE_EXPORT_RESULT.

See Also:
Constant Field Values

ATTRIBUTE_EXPORT_CONTENTTYPE

public static final java.lang.String ATTRIBUTE_EXPORT_CONTENTTYPE
Constant ATTRIBUTE_EXPORT_CONTENTTYPE.

See Also:
Constant Field Values

ATTRIBUTE_EXPORT_CONTENTDISPOSITION

public static final java.lang.String ATTRIBUTE_EXPORT_CONTENTDISPOSITION
Constant ATTRIBUTE_EXPORT_CONTENTDISPOSITION.

See Also:
Constant Field Values

CHARACTER_ENCODING

public static final java.lang.String CHARACTER_ENCODING
Character encoding used by uploaded files and used for generating download data.

See Also:
Constant Field Values

DEFAULT_TEMP_DIR

public static final java.lang.String DEFAULT_TEMP_DIR
Temporary directory used if not otherwise configured via parameter "jspwiki.plugin_name.uploadTempDir" in WEB-INF/jspwiki.properties.

See Also:
Constant Field Values
Constructor Detail

WikiArchive

public WikiArchive()
Method Detail

execute

public java.lang.String execute(WikiContext context,
                                java.util.Map params)
                         throws PluginException
Executes the plugin.

Overrides:
execute in class Category
Parameters:
context - The WikiContext.
params - Parameters specified at plugin inclusion.
Returns:
HTML to be inserted into page
Throws:
PluginException - if an error occurs

deriveFullTitle

protected java.lang.String deriveFullTitle(java.lang.String name,
                                           WikiPage wikipage,
                                           WikiEngine engine)
Overrides:
deriveFullTitle in class Category
Parameters:
name -
wikipage -
engine -
Returns:

getPropertyName

public java.lang.String getPropertyName(java.lang.String propname)
Returns the property name for the specified sub-property. This means that "jspwiki.archivename." will be preprended to the propname.

Parameters:
propname - The sub-property name.
Returns:
The full property name for reading from jspwiki.properties.
See Also:
#name

getProperty

public java.lang.String getProperty(WikiEngine engine,
                                    java.lang.String propname)
Returns a property entry from the JSPWiki configuration file.

Parameters:
engine - The WikiEngine.
propname - The propertyname, without leading "jspwiki..".
Returns:
The property value, or null if it does not exists.

getProperty

public java.lang.String getProperty(WikiEngine engine,
                                    java.lang.String propname,
                                    java.lang.String defaultValue)
Returns a property entry from the JSPWiki configuration file.

Parameters:
engine - The WikiEngine.
propname - The propertyname, without leading "jspwiki..".
defaultValue -
Returns:
The property value, or null if it does not exists.

deletePages

protected void deletePages(WikiEngine engine,
                           java.util.Collection pageNames)
                    throws ProviderException
Removes a collection of pages from the Wiki. Files get deleted in the filesystem. This should have no disturbing effect on the running Wiki, but to be sure use this operation only when the Wiki can be manually restarted afterwards.

Parameters:
engine - The WikiEngine.
pageNames - The names of pages to be deleted.
Throws:
ProviderException

pageEnd

public static void pageEnd(HttpServletRequest request,
                           HttpServletResponse response,
                           JspWriter out)
                    throws java.io.IOException
Handles file downloads to the client. To be invoked by a Servlet/JSP after any other part of the page has been generated. If a download is to be performed, any previously generated page content will be removed. (See end of ViewTemplate.jsp.)

Parameters:
request - The http-request.
response - The http-response.
out - The page output writer.
Throws:
java.io.IOException - if an i/o error occurs

warning

protected static java.lang.String warning(java.lang.String s)
Formats a string as HTML-warning message.

Parameters:
s - The string to be formatted.
Returns:
The formatted HTML string.

error

protected static java.lang.String error(java.lang.String s)
Formats a string as HTML-error message.

Parameters:
s - The string to be formatted.
Returns:
The formatted HTML string.

selectbox

protected static java.lang.String selectbox(java.lang.String name,
                                            java.util.Collection keys,
                                            java.util.Map labelsByKey,
                                            java.lang.String value)
Outputs an HTML-form-element for a select-box.

Parameters:
name - The name of the select-box element.
keys - The value keys that are selectable by the select-box.
labelsByKey - A map assigning displayable labels bto each value key. The are the option texts presented to the user.
value - The current value to be pre-selected.
Returns:

hiddenfield

protected static java.lang.String hiddenfield(java.lang.String name,
                                              java.lang.String value)
Outputs an HTML-form-element for a hidden-field.

Parameters:
name - The name of the field.
value - The value of the field.
Returns:

createZip

public static java.lang.String createZip(WikiEngine engine,
                                         java.lang.String dataString,
                                         java.lang.String filename,
                                         java.util.Collection pages)
                                  throws java.io.IOException,
                                         ProviderException
Parameters:
engine -
dataString -
filename -
pages -
Returns:
Throws:
java.io.IOException
ProviderException

resolveZip

public static java.lang.String resolveZip(WikiEngine engine,
                                          java.lang.String dataString,
                                          java.util.Map attachmentsToBeFilled)
                                   throws java.io.IOException
Parameters:
engine -
dataString -
attachmentsToBeFilled -
Returns:
Throws:
java.io.IOException

updateAttachments

protected static void updateAttachments(WikiEngine engine,
                                        java.util.Map attachments)
                                 throws java.io.IOException,
                                        ProviderException
Parameters:
engine -
attachments -
Throws:
java.io.IOException
ProviderException

updateAttachment

protected static void updateAttachment(WikiEngine engine,
                                       java.lang.String path,
                                       byte[] data)
                                throws java.io.IOException,
                                       ProviderException
Parameters:
engine -
path -
data -
Throws:
java.io.IOException
ProviderException