import de.smartics.projectdoc.atlassian.confluence.api.domain.ProjectdocDocumentProperty;
import com.atlassian.confluence.pages.Page;
import java.util.Date;
import java.util.Map;
/**
* Returns the page if the document refers actually to a page. If it is not a
* page, <code>null</code> is returned.
*
* @return a reference to the page or <code>null</code>.
*/
@Nullable
Page getPage();
/**
* Returns the unique identifier of the Confluence document.
*
* @return the unique identifier of the Confluence document.
*/
long getDocumentId();
/**
* Returns the key of the space the document is part of.
*
* @return the key of the space the document is part of.
*/
String getSpaceKey();
/**
* Returns the title of the document in Confluence.
*
* @return the title of the document in Confluence.
*/
String getTitle();
/**
* Returns the display title of the document in Confluence.
*
* @return the display title of the document in Confluence.
*/
String getDisplayTitle();
/**
* Returns the path to the document within Confluence.
*
* @return the path to the document within Confluence.
*/
String getUrlPath();
/**
* Returns the last modification date of the document in Confluence.
*
* @return the last modification date of the document in Confluence.
*/
Date getLastModificationDate();
/**
* Returns only the properties that have been specified in the document. That
* is the properties that are not artificial.
*
* @return the non-artificial properties. May be empty, but is never
* <code>null</code>.
*/
Map<String, DocumentProperty> getNonArtificialProperties();
/**
* Returns all artificial properties.
*
* @return all artificial properties. May be empty, but is never
* <code>null</code>.
*/
Map<String, DocumentProperty> getArtificialProperties();
/**
* Returns all properties.
*
* @return all properties. May be empty, but is never <code>null</code>.
*/
Map<String, DocumentProperty> getProperties();
/**
* Returns the rendered property.
*
* @param the name of the property to return. <code>null</code> will be
* returned, if the property is unknown to the document.
*/
@Nullable
DocumentProperty getProperty(String propertyName);
/**
* Returns the rendered property identified by the property key. The property
* key is the I18n resource key.
*
* @param propertyKey the key to the name of the property to return.
* <code>null</code> will be returned, if the property is unknown to
* the document.
*/
@Nullable
DocumentProperty getPropertyByKey(String propertyKey);
|