| 
      
      
      From: <jbo...@li...> - 2005-09-28 21:20:02
      
     | 
| Author: szimano
Date: 2005-09-28 17:19:47 -0400 (Wed, 28 Sep 2005)
New Revision: 1235
Removed:
   trunk/forge/portal-extensions/jbosswiki/forge-wiki/.classpath
Modified:
   trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java
   trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/fileaccess/WikiFileAccessFilter.java
   trunk/forge/portal-extensions/jbosswiki/wiki-common/maven.xml
   trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/FileDataSource.java
   trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/MediaDataSource.java
   trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiEngine.java
   trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiPage.java
   trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/AdminConsolePlugin.java
   trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/AttachementInfoPlugin.java
   trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/HTMLTranslatorParts.java
   trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RecentlyChangedPagesPlugin.java
Log:
additional changes to dictionary and some code cleaning
Deleted: trunk/forge/portal-extensions/jbosswiki/forge-wiki/.classpath
===================================================================
--- trunk/forge/portal-extensions/jbosswiki/forge-wiki/.classpath	2005-09-28 21:19:08 UTC (rev 1234)
+++ trunk/forge/portal-extensions/jbosswiki/forge-wiki/.classpath	2005-09-28 21:19:47 UTC (rev 1235)
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<classpath>
-  <classpathentry excluding="" kind="src" path="src/java">
-  </classpathentry>
-  <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/aslibs/jars/javax.servlet.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/wiki-common/jars/wiki-common.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/aslibs/jars/javax.servlet.jsp.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/tmate/jars/javasvn.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/tmate/jars/jsch.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/jboss/jars/activation.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/commons-fileupload/jars/commons-fileupload-1.0.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/informa/jars/informa-0.6.0.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/dom4j/jars/dom4j-1.6.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/jdom/jars/jdom-1.0.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/jboss/jars/jboss-ejb3x.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/jboss/jars/jboss-ejb3.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/portlet-api/jars/portlet-api-1.0.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/jboss/jars/jboss-jmx.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/jboss/jars/jboss-common.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/jboss/jars/portal-common-lib.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/jboss/jars/portal-core-lib.jar">
-  </classpathentry>
-  <classpathentry kind="var" path="MAVEN_REPO/jboss/jars/portal-portlet-lib.jar">
-  </classpathentry>
-  <classpathentry kind="output" path="target/classes">
-  </classpathentry>
-</classpath>
\ No newline at end of file
Modified: trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java
===================================================================
--- trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java	2005-09-28 21:19:08 UTC (rev 1234)
+++ trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java	2005-09-28 21:19:47 UTC (rev 1235)
@@ -195,9 +195,7 @@
 
 				if (edPage == null) {
 					edPage = new WikiPage(rReq.getParameter("editedPage"),
-							credentials, "", 0, 0, new Date(), wikiEngine
-									.getMediaDataSource(), wikiEngine
-									.getAttachementDataSource(), true, true);
+							credentials, "", 0, 0, new Date(), wikiEngine, true, true);
 				}
 
 				// set new content
@@ -248,11 +246,11 @@
 		rReq.getPortletSession().setAttribute("isSecure",
 				new Boolean(rReq.isSecure()));
 
-		WikiPage noSuchPage = new WikiPage("",
+		/*WikiPage noSuchPage = new WikiPage("",
 				credentials,
 				"There is no such page. Click on EDIT to start it.", 0, 0,
 				null, wikiEngine.getMediaDataSource(), wikiEngine
-						.getAttachementDataSource(), true, true);
+						.getAttachementDataSource(), true, true);*/
 
 		String page = "Wiki.jsp";
 
@@ -309,8 +307,7 @@
 					// wikiPage = defaultPage;
 
 					pageToShow = new WikiPage(wikiPage,credentials, "", 0, 0,
-							new Date(), wikiEngine.getMediaDataSource(),
-							wikiEngine.getAttachementDataSource(), true, true);
+							new Date(), wikiEngine, true, true);
 					// wikiEngine.getByName(wikiPage, wikiContext);
 				}
 
@@ -334,7 +331,7 @@
 
 			pageToShow = wikiEngine.getByName(wikiPage, null);
 
-			if (pageToShow == null) { // if somebody entered a link to info
+			/*if (pageToShow == null) { // if somebody entered a link to info
 				// non-existing page
 				page = "Wiki.jsp";
 				try {
@@ -344,9 +341,9 @@
 				}
 
 				pageToShow.setName(wikiPage);
-			} else {
+			} else {*/
 				rReq.setAttribute("pageAtTop", pageToShow);
-			}
+			
 
 		}
 
@@ -379,7 +376,7 @@
 				pageToShow = wikiEngine.getByName(wikiPage, wikiContext);
 			}
 
-			if (pageToShow == null) {
+			/*if (pageToShow == null) {
 
 				try {
 					pageToShow = (WikiPage) noSuchPage.clone();
@@ -388,7 +385,7 @@
 				}
 
 				pageToShow.setName(wikiPage);
-			}
+			}*/
 
 		}
 
Modified: trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/fileaccess/WikiFileAccessFilter.java
===================================================================
--- trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/fileaccess/WikiFileAccessFilter.java	2005-09-28 21:19:08 UTC (rev 1234)
+++ trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/fileaccess/WikiFileAccessFilter.java	2005-09-28 21:19:47 UTC (rev 1235)
@@ -254,11 +254,9 @@
 				WikiAttachment wikiAttachment;
 
 				if (version == -1) {
-					wikiAttachment = wikiEngine.getAttachementDataSource()
-							.getAttachment(pageName, fileName);
+					wikiAttachment = wikiEngine.getAttachment(pageName, fileName);
 				} else {
-					wikiAttachment = wikiEngine.getAttachementDataSource()
-							.getAttachment(pageName, fileName, version);
+					wikiAttachment = wikiEngine.getAttachment(pageName, fileName, version);
 				}
 
 				if (wikiAttachment != null) {
Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/maven.xml
===================================================================
--- trunk/forge/portal-extensions/jbosswiki/wiki-common/maven.xml	2005-09-28 21:19:08 UTC (rev 1234)
+++ trunk/forge/portal-extensions/jbosswiki/wiki-common/maven.xml	2005-09-28 21:19:47 UTC (rev 1235)
@@ -9,7 +9,7 @@
         <attainGoal name="jar" />
         
         <!-- copy jar to repo -->
-        <ant:copy tofile="${maven.repo.local}/wiki-common/jars/wiki-common.jar" >
+        <ant:copy tofile="${maven.repo.local}/wiki-common/jars/wiki-common.jar" overwrite="true">
         	<ant:fileset dir="target">
 				<ant:filename name="wiki-common-1.0.jar" />
 		    </ant:fileset>
Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/FileDataSource.java
===================================================================
--- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/FileDataSource.java	2005-09-28 21:19:08 UTC (rev 1234)
+++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/FileDataSource.java	2005-09-28 21:19:47 UTC (rev 1235)
@@ -62,7 +62,13 @@
 	private File modFile;
 
 	private File pageDictionaryFile;
+	
+	private WikiEngine wikiEngine;
 
+	public void setWikiEngine(WikiEngine wikiEngine) {
+		this.wikiEngine = wikiEngine;
+	}
+
 	public FileDataSource() {
 		System.out.println("Looking for props file !");
 
@@ -162,6 +168,7 @@
 		}
 
 		pageDictionary.setProperty("Tomek", "TomekToZebesciak");
+		pageDictionary.setProperty("Tomek/Life/Relatives/Gyg", "TomekToZebesciak/Bimbom/PlumPlum/Plum");
 		
 		// create pageRevDictionary - to make it work faster
 
@@ -455,7 +462,7 @@
 				int pageMods = getPageMod(pageName);
 
 				page = new WikiPage(pageName, author, pageContent.toString(),
-						i, i, new Date(pageFile.lastModified()), this, this,
+						i, i, new Date(pageFile.lastModified()), wikiEngine,
 						(pageMods & VIEWABLE) == VIEWABLE,
 						(pageMods & EDITABLE) == EDITABLE);
 
Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/MediaDataSource.java
===================================================================
--- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/MediaDataSource.java	2005-09-28 21:19:08 UTC (rev 1234)
+++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/MediaDataSource.java	2005-09-28 21:19:47 UTC (rev 1235)
@@ -186,4 +186,6 @@
 	 * @param pageName Name of the page to delete.
 	 */
 	public boolean deletePage(String pageName);
+	
+	public void setWikiEngine(WikiEngine wikiEngine);
 }
Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiEngine.java
===================================================================
--- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiEngine.java	2005-09-28 21:19:08 UTC (rev 1234)
+++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiEngine.java	2005-09-28 21:19:47 UTC (rev 1235)
@@ -27,6 +27,8 @@
 import javax.xml.parsers.SAXParser;
 import javax.xml.parsers.SAXParserFactory;
 
+import java.io.File;
+
 /**
  * 
  * @author <a href="mailto:ds...@jb...">Damon Sicore</a>
@@ -57,7 +59,7 @@
 	private MediaDataSource mediaDataSource;
 
 	private AttachmentDataSource attachementDataSource;
-	
+
 	private WikiPageDictionary wikiPageDictionary;
 
 	private String adminUserName = "admin";
@@ -96,7 +98,7 @@
 	}
 
 	public boolean pageExists(String pageName) {
-		return mediaDataSource.pageExists(getWikiPageDictionary().getUid(pageName));
+		return mediaDataSource.pageExists(getUid(pageName));
 	}
 
 	/**
@@ -126,8 +128,8 @@
 	 */
 	public WikiPage getByName(String pageName, WikiContext wikiContext) {
 
-		String realPageName = getWikiPageDictionary().getUid(pageName);
-		
+		String realPageName = getUid(pageName);
+
 		WikiPage ret = null;
 
 		if (!mediaDataSource.preGet()) {
@@ -140,17 +142,18 @@
 		} else {
 			ret = mediaDataSource.getPage(realPageName);
 
-			ret.setName(pageName);
-			
-			pages.put(realPageName, ret);
+			if (ret != null) {
+				ret.setName(pageName);
+
+				pages.put(realPageName, ret);
+			}
 		}
 
 		if ((wikiContext != null) && (ret != null) && (!ret.isViewable())
 				&& (!wikiContext.getUser().equals(adminUserName))) {
 			return new WikiPage(realPageName, null,
 					"I am sorry, but you are not allowed to see this page", 0,
-					0, new Date(), getMediaDataSource(),
-					getAttachementDataSource(), false, false);
+					0, new Date(), this, false, false);
 		}
 
 		if (!mediaDataSource.postGet()) {
@@ -182,8 +185,8 @@
 	public WikiPage getByName(String pageName, WikiContext wikiContext,
 			int version) {
 
-		String realPageName = getWikiPageDictionary().getUid(pageName);
-		
+		String realPageName = getUid(pageName);
+
 		WikiPage ret = null;
 
 		if (pages.containsKey(realPageName)) {
@@ -192,7 +195,7 @@
 			ret = mediaDataSource.getPage(realPageName);
 
 			ret.setName(pageName);
-			
+
 			pages.put(realPageName, ret);
 		}
 
@@ -229,12 +232,14 @@
 		attachementDataSource = new FileDataSource();
 		wikiPageDictionary = new FileDataSource();
 
+		mediaDataSource.setWikiEngine(this);
+
 		pages = new HashMap<String, WikiPage>();
 		wikiTypes = new HashMap<String, WikiType>();
 
 		noSuchPage = new WikiPage("", new SimpleCredentials(""),
 				"There is no such page. Click on EDIT to start it.", 0, 0,
-				null, mediaDataSource, attachementDataSource, true, true);
+				null, this, true, true);
 
 		loadWikiTypes();
 		loadInsidePlugins();
@@ -404,10 +409,6 @@
 		init();
 	}
 
-	public MediaDataSource getMediaDataSource() {
-		return mediaDataSource;
-	}
-
 	public void refreshPage(String pageName) {
 		if (pages.containsKey(pageName)) {
 			pages.remove(pageName);
@@ -420,7 +421,7 @@
 
 		Map<String, Integer> resPages = new HashMap<String, Integer>();
 
-		Set<String> pages = getMediaDataSource().getAllPageNames();
+		Set<String> pages = mediaDataSource.getAllPageNames();
 
 		for (String name : pages) {
 			WikiPage temp = getByName(name, null);
@@ -461,10 +462,6 @@
 		return resPages;
 	}
 
-	public AttachmentDataSource getAttachementDataSource() {
-		return attachementDataSource;
-	}
-
 	public Set<String> getPagesFor(String pageName) {
 		return mediaDataSource.getPagesFor(pageName);
 	}
@@ -513,51 +510,233 @@
 	public boolean deletePage(String pageName, boolean deleteSubpages) {
 		Set<String> subpages = new HashSet<String>();
 
-		
-		System.out.println("DELETE SUBPAGES: "+deleteSubpages);
-		
-		
+		System.out.println("DELETE SUBPAGES: " + deleteSubpages);
+
 		if (deleteSubpages) {
-			subpages = getMediaDataSource().getPagesFor(pageName);
+			subpages = mediaDataSource.getPagesFor(pageName);
 		}
 
-		if (getAttachementDataSource().getAttachmentsSet(
-				getByName(pageName, null)) != null) {
-			if (!getAttachementDataSource().deleteAttachments(pageName)) {
-				System.err.println("Couldn't delete attachments of page "+pageName);
+		if (attachementDataSource.getAttachmentsSet(getByName(pageName, null)) != null) {
+			if (!attachementDataSource.deleteAttachments(pageName)) {
+				System.err.println("Couldn't delete attachments of page "
+						+ pageName);
 				return false;
 			}
 		}
 
 		boolean ret = true;
-		
-		if ((deleteSubpages)&&(subpages.size() > 0)) {
 
+		if ((deleteSubpages) && (subpages.size() > 0)) {
+
 			for (String subPage : subpages) {
 				if (!deletePage(subPage, deleteSubpages)) {
-					System.err.println("[WikiEngine]: Problems with deleteing subpage: "+subPage);
+					System.err
+							.println("[WikiEngine]: Problems with deleteing subpage: "
+									+ subPage);
 					ret = false;
 				}
 			}
 
 		}
-		
-		if (getMediaDataSource().deletePage(pageName)) {
 
+		if (mediaDataSource.deletePage(pageName)) {
+
 			if (pages.containsKey(pageName)) {
 				pages.remove(pageName);
 			}
 
-			System.out.println("Finishing deleting of page "+pageName+" with ret = "+ret);
-			
+			System.out.println("Finishing deleting of page " + pageName
+					+ " with ret = " + ret);
+
 			return ret;
 		} else {
-			System.err.println("Problems with deleting page "+pageName);
+			System.err.println("Problems with deleting page " + pageName);
 			return false;
 		}
 	}
 
-	public WikiPageDictionary getWikiPageDictionary() {
-		return wikiPageDictionary;
+	public String getRealName(String uid) {
+		String[] pageTokens = uid.split("/");
+
+		if (pageTokens.length > 1) {
+			if (!wikiPageDictionary.getRealName(uid).equals(uid)) {
+				// this page is in dictionary
+				return wikiPageDictionary.getRealName(uid);
+			} else {
+				// look if parts of this page are in dictionary
+
+				for (int i = pageTokens.length - 2; i > 0; i--) {
+					String page = "";
+					String suffix = "";
+					for (int j = 0; j < i; j++) {
+						page += "/" + pageTokens[j];
+					}
+
+					// build suffix
+
+					for (int j = i; j < pageTokens.length; j++) {
+						suffix += "/" + pageTokens[j];
+					}
+
+					page = page.substring(1);
+
+					System.out.println("Looking at page: " + page);
+
+					if (!wikiPageDictionary.getRealName(page).equals(page)) // this
+						// page
+						// is
+						// in
+						// dictionary
+						return wikiPageDictionary.getRealName(page) + suffix;
+
+				}
+
+				return uid;
+			}
+		} else
+			return wikiPageDictionary.getRealName(uid);
 	}
+
+	public String getUid(String realName) {
+		String[] pageTokens = realName.split("/");
+
+		if (pageTokens.length > 1) {
+			if (!wikiPageDictionary.getUid(realName).equals(realName)) {
+				// this page is in dictionary
+				return wikiPageDictionary.getUid(realName);
+			} else {
+				// look if parts of this page are in dictionary
+
+				for (int i = pageTokens.length - 2; i > 0; i--) {
+					String page = "";
+					String suffix = "";
+					for (int j = 0; j < i; j++) {
+						page += "/" + pageTokens[j];
+					}
+
+					// build suffix
+
+					for (int j = i; j < pageTokens.length; j++) {
+						suffix += "/" + pageTokens[j];
+					}
+
+					page = page.substring(1);
+
+					System.out.println("Looking at page(uid): " + page);
+
+					if (!wikiPageDictionary.getUid(page).equals(page)) // this
+						// page
+						// is
+						// in
+						// dictionary
+						return wikiPageDictionary.getUid(page) + suffix;
+				}
+
+				return realName;
+			}
+		} else
+			return wikiPageDictionary.getUid(realName);
+	}
+
+	public void rename(String uid, String newName) {
+		wikiPageDictionary.rename(uid, newName);
+	}
+
+	public boolean deleteAttachment(String pageName, String attName) {
+		return attachementDataSource.deleteAttachment(pageName, attName);
+	}
+
+	public boolean deleteAttachments(String pageName) {
+		return attachementDataSource.deleteAttachments(pageName);
+	}
+
+	public Set<String> getAttachmentsSet(WikiPage page) {
+		return attachementDataSource.getAttachmentsSet(page);
+	}
+
+	public int getLastAttachmentVersion(String pageName, String attachmentName) {
+		return attachementDataSource.getLastAttachmentVersion(pageName,
+				attachmentName);
+	}
+
+	public WikiAttachment getAttachment(String pageName,
+			String attachementName, int version) {
+		return attachementDataSource.getAttachment(pageName, attachementName,
+				version);
+	}
+
+	public WikiAttachment getAttachment(String pageName, String attachementName) {
+		return attachementDataSource.getAttachment(pageName, attachementName);
+	}
+
+	public void addAttachment(File attFile, String attName, WikiPage page,
+			String user) {
+		attachementDataSource.addAttachment(attFile, attName, page, user);
+	}
+
+	public Set<String> getAllPageNames() {
+		Set<String> set = mediaDataSource.getAllPageNames();
+		Set<String> translatedSet = new HashSet<String>();
+
+		for (String page : set) {
+			translatedSet.add(getRealName(page));
+		}
+
+		return translatedSet;
+	}
+
+	public boolean preSave() {
+		return mediaDataSource.preSave();
+	}
+
+	public boolean savePage(WikiPage page, String languageCode) {
+		return mediaDataSource.savePage(page, languageCode);
+	}
+
+	public boolean postSave() {
+		return mediaDataSource.postSave();
+	}
+
+	public boolean preGet() {
+		return mediaDataSource.preGet();
+	}
+
+	public boolean postGet() {
+		return mediaDataSource.postGet();
+	}
+
+	public WikiPage getPageAtVersion(WikiPage originPage, boolean loadContent,
+			String languageCode, int version) {
+		return mediaDataSource.getPageAtVersion(originPage, loadContent,
+				languageCode, version);
+	}
+
+	public WikiPage getPageAtVersion(WikiPage originPage, boolean loadContent,
+			int version) {
+		return mediaDataSource.getPageAtVersion(originPage, loadContent,
+				version);
+	}
+
+	public void getContentAtVersion(WikiPage page, boolean loadContent,
+			int version) {
+		mediaDataSource.getContentAtVersion(page, loadContent, version);
+	}
+
+	public int getPageMod(String pageName) {
+		return mediaDataSource.getPageMod(pageName);
+	}
+
+	public void setPageMod(String pageName, int mods) {
+		mediaDataSource.setPageMod(pageName, mods);
+	}
+
+	public boolean deletePage(String pageName) {
+		return mediaDataSource.deletePage(pageName);
+	}
+
+	public long getAttachmentSize(String pageName, String attachmentName,
+			int version) {
+		return attachementDataSource.getAttachmentSize(pageName,
+				attachmentName, version);
+	}
 }
Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiPage.java
===================================================================
--- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiPage.java	2005-09-28 21:19:08 UTC (rev 1234)
+++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiPage.java	2005-09-28 21:19:47 UTC (rev 1235)
@@ -91,16 +91,13 @@
 	 * </p>
 	 * 
 	 */
-	private MediaDataSource mediaDataSource;
 
-	private AttachmentDataSource attachementDataSource;
-
 	/**
 	 * <p>
 	 * </p>
 	 * 
 	 */
-	public WikiEngine wikiEngine;
+	private WikiEngine wikiEngine;
 
 	/**
 	 * <p>
@@ -117,8 +114,7 @@
 
 	public WikiPage(String pageName, Credentials pageAuthor,
 			String pageContent, int pageLastVersion, int thisVersion,
-			Date editDate, MediaDataSource mediaDataSource,
-			AttachmentDataSource attachementDataSource, boolean viewable,
+			Date editDate, WikiEngine wikiEngine, boolean viewable,
 			boolean editable) {
 		name = pageName;
 		lastAuthor = pageAuthor;
@@ -126,8 +122,7 @@
 		lastVersion = pageLastVersion;
 		version = thisVersion;
 		this.editDate = editDate;
-		this.mediaDataSource = mediaDataSource;
-		this.attachementDataSource = attachementDataSource;
+		this.wikiEngine = wikiEngine;
 		this.viewable = viewable;
 		this.editable = editable;
 	}
@@ -152,13 +147,13 @@
 	 * 
 	 */
 	public synchronized void save() {
-		if (!mediaDataSource.preSave()) {
+		if (!wikiEngine.preSave()) {
 			System.err.println("Couldn't save page");
 			return;
 		}
-		mediaDataSource.savePage(this, null);
+		wikiEngine.savePage(this, null);
 
-		if (!mediaDataSource.postSave()) {
+		if (!wikiEngine.postSave()) {
 			System.err.println("Problems with postSave");
 		}
 	}
@@ -176,18 +171,6 @@
 		return null;
 	}
 
-	/**
-	 * <p>
-	 * Does ...
-	 * </p>
-	 * 
-	 * 
-	 * @return
-	 * @param mds
-	 */
-	public void setMediaDataSource(MediaDataSource mds) {
-		mediaDataSource = mds;
-	}
 
 	/**
 	 * <p>
@@ -216,7 +199,7 @@
 		if (version == lastVersion) {
 			return this;
 		} else {
-			return mediaDataSource.getPageAtVersion(this, loadContent, version);
+			return wikiEngine.getPageAtVersion(this, loadContent, version);
 		}
 	}
 
@@ -309,7 +292,7 @@
 	public String getPageContent() {
 		if (pageContent == null) {
 			// page wasn't loaded with conent - lets do it
-			mediaDataSource.getContentAtVersion(this, true, version);
+			wikiEngine.getContentAtVersion(this, true, version);
 		}
 		return pageContent;
 	}
@@ -322,7 +305,7 @@
 	public Object clone() throws CloneNotSupportedException {
 		WikiPage clonedPage = new WikiPage(getName(), getLastAuthor(),
 				getPageContent(), getLastVersion(), getVersion(),
-				getEditDate(), mediaDataSource, attachementDataSource,isViewable(),isEditable());
+				getEditDate(), wikiEngine,isViewable(),isEditable());
 
 		clonedPage.setLength(getLength());
 
@@ -397,11 +380,11 @@
 	}
 
 	public void addAttachement(File attFile, String attName, String user) {
-		attachementDataSource.addAttachment(attFile, attName, this, user);
+		wikiEngine.addAttachment(attFile, attName, this, user);
 	}
 
 	public Set<String> getAttachementsSet() {
-		return attachementDataSource.getAttachmentsSet(this);
+		return wikiEngine.getAttachmentsSet(this);
 	}
 
 	public boolean isEditable() {
@@ -411,7 +394,7 @@
 	public void setEditable(boolean editable) {
 		this.editable = editable;
 		
-		mediaDataSource.setPageMod(getName(), ((isViewable()) ? MediaDataSource.VIEWABLE : 0) + ((isEditable()) ? MediaDataSource.EDITABLE : 0));
+		wikiEngine.setPageMod(getName(), ((isViewable()) ? MediaDataSource.VIEWABLE : 0) + ((isEditable()) ? MediaDataSource.EDITABLE : 0));
 	}
 
 	public boolean isViewable() {
@@ -421,6 +404,6 @@
 	public void setViewable(boolean viewable) {
 		this.viewable = viewable;
 		
-		mediaDataSource.setPageMod(getName(), ((isViewable()) ? MediaDataSource.VIEWABLE : 0) + ((isEditable()) ? MediaDataSource.EDITABLE : 0));
+		wikiEngine.setPageMod(getName(), ((isViewable()) ? MediaDataSource.VIEWABLE : 0) + ((isEditable()) ? MediaDataSource.EDITABLE : 0));
 	}
 }
Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/AdminConsolePlugin.java
===================================================================
--- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/AdminConsolePlugin.java	2005-09-28 21:19:08 UTC (rev 1234)
+++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/AdminConsolePlugin.java	2005-09-28 21:19:47 UTC (rev 1235)
@@ -73,7 +73,7 @@
 					String attName = (wikiSession.getAttribute("var2") != null) ? (String)wikiSession.getAttribute("var2") : null;
 					
 					if (attName != null) {
-						if (!wikiEngine.getAttachementDataSource().deleteAttachment(wikiPage.getName(), attName)) {
+						if (!wikiEngine.deleteAttachment(wikiPage.getName(), attName)) {
 							errorMsg = "There was problem with deleting "+attName+" from page "+wikiPage.getName()+" (see log for more info)";
 						}
 					}
@@ -94,8 +94,7 @@
 			}
 
 			if (SHOWDELETE) {
-				Set<String> attSet = wikiEngine.getAttachementDataSource()
-						.getAttachmentsSet(wikiPage);
+				Set<String> attSet = wikiEngine.getAttachmentsSet(wikiPage);
 
 				if (attSet != null) {
 					adminConsole.append("<h4>Attachments:</h4>\n<table border=\"0\">");
Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/AttachementInfoPlugin.java
===================================================================
--- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/AttachementInfoPlugin.java	2005-09-28 21:19:08 UTC (rev 1234)
+++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/AttachementInfoPlugin.java	2005-09-28 21:19:47 UTC (rev 1235)
@@ -21,14 +21,12 @@
 
 		if (((wikiPage.isEditable())||(credentials.isAdmin()))&&(rollbackToVer != null)
 				&& (credentials.isLogedIn())
-				&& (Integer.valueOf((String) rollbackToVer) < wikiEngine
-						.getAttachementDataSource().getLastAttachmentVersion(
+				&& (Integer.valueOf((String) rollbackToVer) < wikiEngine.getLastAttachmentVersion(
 								wikiPage.getName(), attachementName))) {
-			WikiAttachment wikiAttachment = wikiEngine
-					.getAttachementDataSource().getAttachment(
+			WikiAttachment wikiAttachment = wikiEngine.getAttachment(
 							wikiPage.getName(), attachementName,
 							Integer.valueOf((String) rollbackToVer));
-			wikiEngine.getAttachementDataSource().addAttachment(
+			wikiEngine.addAttachment(
 					wikiAttachment.getFile(), attachementName, wikiPage,
 					(String) wikiSession.getAttribute("user"));
 		}
@@ -39,11 +37,9 @@
 		history
 				.append("<tr><td><b>Version</b></td><td><b>Date</b></td><td><b>Author</b></td><td><b>Size</b></td><td><b>Rollback</b></td></tr>\n");
 
-		int lastVer = wikiEngine.getAttachementDataSource()
-				.getLastAttachmentVersion(wikiPage.getName(), attachementName);
+		int lastVer = wikiEngine.getLastAttachmentVersion(wikiPage.getName(), attachementName);
 		for (int i = lastVer; i > 0; i--) {
-			WikiAttachment wikiAttachment = wikiEngine
-					.getAttachementDataSource().getAttachment(
+			WikiAttachment wikiAttachment = wikiEngine.getAttachment(
 							wikiPage.getName(), attachementName, i);
 			history.append("<tr><td>").append("<a href=\"").append(attURL)
 					.append(attachementName).append(
Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/HTMLTranslatorParts.java
===================================================================
--- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/HTMLTranslatorParts.java	2005-09-28 21:19:08 UTC (rev 1234)
+++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/HTMLTranslatorParts.java	2005-09-28 21:19:47 UTC (rev 1235)
@@ -815,7 +815,7 @@
 
 		} else // [link] case
 		{
-			text = link;
+			text = wikiEngine.getRealName(cleanLink(link));
 
 		}
 
@@ -855,7 +855,7 @@
 			}
 			// check for attachments later on
 			else {
-				wikiPage = wikiEngine.getWikiPageDictionary().getRealName(cleanLink(link));
+				wikiPage = wikiEngine.getRealName(cleanLink(link));
 				if (wikiEngine.pageExists(wikiPage)) {
 					result = "<a href=\"" + portalHome + wikiHome + page
 							+ wikiPage + "\">" + text + "</a>";
Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RecentlyChangedPagesPlugin.java
===================================================================
--- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RecentlyChangedPagesPlugin.java	2005-09-28 21:19:08 UTC (rev 1234)
+++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RecentlyChangedPagesPlugin.java	2005-09-28 21:19:47 UTC (rev 1235)
@@ -26,7 +26,7 @@
 
 		int offset = recentChanges.length();
 
-		Set<String> pages = wikiEngine.getMediaDataSource().getAllPageNames();
+		Set<String> pages = wikiEngine.getAllPageNames();
 
 		TreeMap<String, TreeSet<String>> sortedByDate = new TreeMap<String, TreeSet<String>>();
 
 |