📄 document.java
字号:
/**
* ===================================================================
*
* Copyright (c) 2003 Ludovic Dubost, All rights reserved.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details, published at
* http://www.gnu.org/copyleft/gpl.html or in gpl.txt in the
* root folder of this distribution.
*
* User: ludovic
* Date: 26 f�vr. 2004
* Time: 16:59:02
*/
package com.xpn.xwiki.api;
import com.xpn.xwiki.XWikiContext;
import com.xpn.xwiki.XWikiException;
import com.xpn.xwiki.web.ObjectAddForm;
import com.xpn.xwiki.util.TOCGenerator;
import com.xpn.xwiki.util.Util;
import com.xpn.xwiki.stats.api.DocStats;
import com.xpn.xwiki.stats.impl.DocumentStats;
import com.xpn.xwiki.doc.XWikiAttachment;
import com.xpn.xwiki.doc.XWikiDocument;
import com.xpn.xwiki.doc.MetaDataDiff;
import com.xpn.xwiki.doc.XWikiLock;
import com.xpn.xwiki.objects.BaseObject;
import com.xpn.xwiki.objects.classes.BaseClass;
import org.apache.commons.jrcs.diff.DifferentiationFailedException;
import org.apache.commons.jrcs.diff.Delta;
import org.apache.commons.jrcs.rcs.Archive;
import org.apache.commons.jrcs.rcs.Version;
import javax.servlet.http.HttpServletRequest;
import java.util.*;
public class Document extends Api {
private XWikiDocument doc;
public Document(XWikiDocument doc, XWikiContext context) {
super(context);
this.doc = doc;
}
public XWikiDocument getDocument() {
if (checkProgrammingRights())
return doc;
else
return null;
}
protected XWikiDocument getDoc() {
return doc;
}
public long getId() {
return doc.getId();
}
public String getName() {
return doc.getName();
}
public String getWeb() {
return doc.getWeb();
}
public String getFullName() {
return doc.getFullName();
}
public Version getRCSVersion() {
return doc.getRCSVersion();
}
public String getVersion() {
return doc.getVersion();
}
public String getFormat() {
return doc.getFormat();
}
public String getAuthor() {
return doc.getAuthor();
}
public Date getDate() {
return doc.getDate();
}
public Date getCreationDate() {
return doc.getCreationDate();
}
public String getParent() {
return doc.getParent();
}
public String getCreator() {
return doc.getCreator();
}
public String getContent() {
return doc.getContent();
}
public String getLanguage() {
return doc.getLanguage();
}
public String getRealLanguage() throws XWikiException {
return doc.getRealLanguage(context);
}
public String getDefaultLanguage() {
return doc.getDefaultLanguage();
}
public List getTranslationList() throws XWikiException {
return doc.getTranslationList(context);
}
public String getTranslatedContent() throws XWikiException {
return doc.getTranslatedContent(context);
}
public String getTranslatedContent(String language) throws XWikiException {
return doc.getTranslatedContent(language, context);
}
public Document getTranslatedDocument(String language) throws XWikiException {
return new Document(doc.getTranslatedDocument(language, context), context);
}
public Document getTranslatedDocument() throws XWikiException {
return new Document(doc.getTranslatedDocument(context), context);
}
public String getRenderedContent() throws XWikiException {
return doc.getRenderedContent(context);
}
public String getRenderedContent(String text) {
return doc.getRenderedContent(text, context);
}
public String getEscapedContent() throws XWikiException {
return doc.getEscapedContent(context);
}
public Archive getRCSArchive() {
return doc.getRCSArchive();
}
public String getArchive() throws XWikiException {
return doc.getArchive();
}
public boolean isNew() {
return doc.isNew();
}
public String getAttachmentURL(String filename, String action) {
return doc.getAttachmentURL(filename, action, context);
}
public String getURL(String action) {
return doc.getURL(action, context);
}
public String getURL(String action, String querystring) {
return doc.getURL(action, querystring, context);
}
public String getExternalURL(String action) {
return doc.getExternalURL(action, context);
}
public String getExternalURL(String action, String querystring) {
return doc.getExternalURL(action, querystring, context);
}
public String getParentURL() throws XWikiException {
return doc.getParentURL(context);
}
public Class getxWikiClass() {
BaseClass bclass = doc.getxWikiClass();
if (bclass==null)
return null;
else
return new Class(bclass, context);
}
public Class[] getxWikiClasses() {
List list = doc.getxWikiClasses(context);
if (list==null)
return null;
Class[] result = new Class[list.size()];
for (int i=0;i<list.size();i++)
result[i] = new Class((BaseClass) list.get(i), context);
return result;
}
public void createNewObject(String classname) throws XWikiException {
if (checkProgrammingRights())
doc.createNewObject(classname, context);
}
public boolean isFromCache() {
return doc.isFromCache();
}
public int getObjectNumbers(String classname) {
return doc.getObjectNumbers(classname);
}
public Map getxWikiObjects() {
Map map = doc.getxWikiObjects();
Map resultmap = new HashMap();
for (Iterator it = map.keySet().iterator();it.hasNext();) {
String name = (String) it.next();
Vector objects = (Vector)map.get(name);
if (objects!=null)
resultmap.put(name, getObjects(objects));
}
return resultmap;
}
protected Vector getObjects(Vector objects) {
Vector result = new Vector();
if (objects==null)
return result;
for (int i=0;i<objects.size();i++) {
BaseObject bobj = (BaseObject) objects.get(i);
if (bobj!=null) {
result.add(new Object(bobj, context));
}
}
return result;
}
public Vector getObjects(String classname) {
Vector objects = doc.getObjects(classname);
return getObjects(objects);
}
public Object getFirstObject(String fieldname) {
try {
BaseObject obj = doc.getFirstObject(fieldname);
if (obj==null)
return null;
else
return new Object(obj, context);
} catch (Exception e) {
return null;
}
}
public Object getObject(String classname, String key, String value, boolean failover) {
try {
BaseObject obj = doc.getObject(classname, key, value, failover);
if (obj==null)
return null;
else
return new Object(obj, context);
} catch (Exception e) {
return null;
}
}
public Object getObject(String classname, String key, String value) {
try {
BaseObject obj = doc.getObject(classname, key, value);
if (obj==null)
return null;
else
return new Object(obj, context);
} catch (Exception e) {
return null;
}
}
public Object getObject(String classname) {
try {
BaseObject obj = doc.getObject(classname);
if (obj==null)
return null;
else
return new Object(obj, context);
} catch (Exception e) {
return null;
}
}
public Object getObject(String classname, int nb) {
try {
BaseObject obj = doc.getObject(classname, nb);
if (obj==null)
return null;
else
return new Object(obj, context);
} catch (Exception e) {
return null;
}
}
public String getXMLContent() throws XWikiException {
String xml = doc.getXMLContent(context);
return context.getUtil().substitute("s/<password>.*?<\\/password>/<password>********<\\/password>/goi", xml);
}
public String toXML() {
if (checkProgrammingRights())
return doc.toXML(context);
else
return "";
}
public org.dom4j.Document toXMLDocument() {
if (checkProgrammingRights())
return doc.toXMLDocument(context);
else return null;
}
public Version[] getRevisions() throws XWikiException {
return doc.getRevisions(context);
}
public String[] getRecentRevisions() throws XWikiException {
return doc.getRecentRevisions(5, context);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -