Package org.apache.wiki
Class WikiPage
java.lang.Object
org.apache.wiki.WikiPage
- All Implemented Interfaces:
Cloneable,Comparable<org.apache.wiki.api.core.Page>,org.apache.wiki.api.core.Page
- Direct Known Subclasses:
Attachment
Simple wrapper class for the Wiki page attributes. The Wiki page content is moved around in Strings, though.
-
Field Summary
Fields inherited from interface org.apache.wiki.api.core.Page
ALIAS, AUTHOR, CHANGENOTE, DESCRIPTION, REDIRECT, VIEWCOUNT -
Constructor Summary
ConstructorsConstructorDescriptionCreate a new WikiPage using a given engine and name.WikiPage(WikiEngine engine, String name) Deprecated.kept for compatibility with page/attachment providers not using public API. -
Method Summary
Modifier and TypeMethodDescriptionclone()Creates a deep clone of a WikiPage.intcompareTo(org.apache.wiki.api.core.Page page) Compares a page with another by name using the defined PageNameComparator.booleanA page is equal to another page if its name and version are equal.getAcl()Returns the Acl for this page.<T> TgetAttribute(String key) A WikiPage may have a number of attributes, which might or might not be available.Returns the full attributes Map, in case external code needs to iterate through the attributes.Returns author name, or null, if no author has been defined.Returns the date when this page was last modified.getName()Returns the name of the page.longgetSize()Returns the size of the page.intReturns the version that this WikiPage instance represents.getWiki()Returns the wiki name for this pageinthashCode()booleanReturnstrueif the page has valid metadata; that is, it has been parsed.voidThis method will remove all metadata from the page.<T> TremoveAttribute(String key) Removes an attribute from the page, if it exists.voidsetAcl(org.apache.wiki.api.core.Acl acl) Sets the Acl for this page.voidDeprecated.voidsetAttribute(String key, Object attribute) Sets an metadata attribute.voidSets the author of the page.voidSets the metadata flag to true.voidsetLastModified(Date date) Sets the last modification date.voidsetSize(long size) Sets the size.voidsetVersion(int version) Sets the page version.toString()Returns a debug-suitable version of the page.
-
Constructor Details
-
WikiPage
Create a new WikiPage using a given engine and name.- Parameters:
engine- The Engine that owns this page.name- The name of the page.
-
WikiPage
Deprecated.kept for compatibility with page/attachment providers not using public API. UseWikiPage(Engine, String)instead.Create a new WikiPage using a given engine and name.- Parameters:
engine- The Engine that owns this page.name- The name of the page.
-
-
Method Details
-
getName
Returns the name of the page.- Specified by:
getNamein interfaceorg.apache.wiki.api.core.Page- Returns:
- The page name.
-
getAttribute
A WikiPage may have a number of attributes, which might or might not be available. Typically attributes are things that do not need to be stored with the wiki page to the page repository, but are generated on-the-fly. A provider is not required to save them, but they can do that if they really want.- Specified by:
getAttributein interfaceorg.apache.wiki.api.core.Page- Parameters:
key- The key using which the attribute is fetched- Returns:
- The attribute. If the attribute has not been set, returns null.
-
setAttribute
Sets an metadata attribute.- Specified by:
setAttributein interfaceorg.apache.wiki.api.core.Page- Parameters:
key- The key for the attribute used to fetch the attribute later on.attribute- The attribute value- See Also:
-
getAttributes
Returns the full attributes Map, in case external code needs to iterate through the attributes.- Specified by:
getAttributesin interfaceorg.apache.wiki.api.core.Page- Returns:
- The attribute Map. Please note that this is a direct reference, not a copy.
-
removeAttribute
Removes an attribute from the page, if it exists.- Specified by:
removeAttributein interfaceorg.apache.wiki.api.core.Page- Parameters:
key- The key for the attribute- Returns:
- If the attribute existed, returns the object.
- Since:
- 2.1.111
-
getLastModified
Returns the date when this page was last modified.- Specified by:
getLastModifiedin interfaceorg.apache.wiki.api.core.Page- Returns:
- The last modification date
-
setLastModified
Sets the last modification date. In general, this is only changed by the provider.- Specified by:
setLastModifiedin interfaceorg.apache.wiki.api.core.Page- Parameters:
date- The date
-
setVersion
Sets the page version. In general, this is only changed by the provider.- Specified by:
setVersionin interfaceorg.apache.wiki.api.core.Page- Parameters:
version- The version number
-
getVersion
Returns the version that this WikiPage instance represents.- Specified by:
getVersionin interfaceorg.apache.wiki.api.core.Page- Returns:
- the version number of this page.
-
getSize
Returns the size of the page.- Specified by:
getSizein interfaceorg.apache.wiki.api.core.Page- Returns:
- the size of the page.
- Since:
- 2.1.109
-
setSize
Sets the size. Typically called by the provider only.- Specified by:
setSizein interfaceorg.apache.wiki.api.core.Page- Parameters:
size- The size of the page.- Since:
- 2.1.109
-
getAcl
Returns the Acl for this page. May returnnull, in case there is no Acl defined, or it has not yet been set bysetAcl(Acl).- Specified by:
getAclin interfaceorg.apache.wiki.api.core.Page- Returns:
- The access control list. May return null, if there is no acl.
-
setAcl
Deprecated.Sets the Acl for this page. Note that method does not persist the Acl itself to back-end storage or in page markup; it merely sets the internal field that stores the Acl. To persist the Acl, callers should invokeAclManager.setPermissions(Page, org.apache.wiki.api.core.Acl).- Parameters:
acl- The Acl to set- See Also:
-
setAcl
Sets the Acl for this page. Note that method does not persist the Acl itself to back-end storage or in page markup; it merely sets the internal field that stores the Acl. To persist the Acl, callers should invokeAclManager.setPermissions(Page, org.apache.wiki.api.core.Acl).- Specified by:
setAclin interfaceorg.apache.wiki.api.core.Page- Parameters:
acl- The Acl to set
-
setAuthor
Sets the author of the page. Typically called only by the provider.- Specified by:
setAuthorin interfaceorg.apache.wiki.api.core.Page- Parameters:
author- The author name.
-
getAuthor
Returns author name, or null, if no author has been defined.- Specified by:
getAuthorin interfaceorg.apache.wiki.api.core.Page- Returns:
- Author name, or possibly null.
-
getWiki
Returns the wiki name for this page- Specified by:
getWikiin interfaceorg.apache.wiki.api.core.Page- Returns:
- The name of the wiki.
-
invalidateMetadata
This method will remove all metadata from the page.- Specified by:
invalidateMetadatain interfaceorg.apache.wiki.api.core.Page
-
hasMetadata
Returnstrueif the page has valid metadata; that is, it has been parsed. Note that this method is a kludge to support our pre-3.0 metadata system, and as such will go away with the new API.- Specified by:
hasMetadatain interfaceorg.apache.wiki.api.core.Page- Returns:
- true, if the page has metadata.
-
setHasMetadata
Sets the metadata flag to true. Never call.- Specified by:
setHasMetadatain interfaceorg.apache.wiki.api.core.Page
-
toString
Returns a debug-suitable version of the page. -
clone
Creates a deep clone of a WikiPage. Strings are not cloned, since they're immutable. Attributes are not cloned, only the internal HashMap (so if you modify the contents of a value of an attribute, these will reflect back to everyone). -
compareTo
Compares a page with another by name using the defined PageNameComparator. If the same name, compares their versions.- Specified by:
compareToin interfaceComparable<org.apache.wiki.api.core.Page>- Parameters:
page- The page to compare against- Returns:
- -1, 0 or 1
-
equals
A page is equal to another page if its name and version are equal. -
hashCode
-