|
From: <jbo...@li...> - 2005-08-17 16:03:04
|
Author: szimano
Date: 2005-08-17 12:02:56 -0400 (Wed, 17 Aug 2005)
New Revision: 885
Modified:
trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/FileDataSource.java
trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/WikiPlugin.java
trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java
trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/WikiType.java
trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/plugins/HTMLTranslator.java
Log:
init() in WikiPlugin
Modified: trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/FileDataSource.java
===================================================================
--- trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/FileDataSource.java 2005-08-17 15:46:28 UTC (rev 884)
+++ trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/FileDataSource.java 2005-08-17 16:02:56 UTC (rev 885)
@@ -74,65 +74,96 @@
boolean status = false;
- Properties pageProps = getPageProps(page.getName());
+ if (pageExists(page.getName())) { // page exists on harddisk - add new version
+ Properties pageProps = getPageProps(page.getName());
- pageProps.setProperty(page.getLastVersion() + ".author", page
- .getLastAuthor().getName());
+ pageProps.setProperty(page.getLastVersion() + ".author", page
+ .getLastAuthor().getName());
- try {
- pageProps.store(new FileOutputStream(new File(pathToMedia + "/OLD/"
- + page.getName() + "/page.properties")),
- "Saved by FileDataSource of JBoss Wiki");
- } catch (Exception e) {
- System.err.println("[FILEDATASOURCE]: Cannot save property file: "
- + e.toString());
- }
+ try {
+ pageProps.store(new FileOutputStream(new File(pathToMedia
+ + "/OLD/" + page.getName() + "/page.properties")),
+ "Saved by FileDataSource of JBoss Wiki");
+ } catch (Exception e) {
+ System.err
+ .println("[FILEDATASOURCE]: Cannot save property file: "
+ + e.toString());
+ }
- System.out.println("Opening files");
- File pageFile = new File(pathToMedia + "/OLD/" + page.getName() + "/"
- + (page.getLastVersion() - 1) + ".txt");
- File pageOldFile = new File(pathToMedia + "/" + page.getName() + ".txt");
+ System.out.println("Opening files");
+ File pageFile = new File(pathToMedia + "/OLD/" + page.getName()
+ + "/" + (page.getLastVersion() - 1) + ".txt");
+ File pageOldFile = new File(pathToMedia + "/" + page.getName()
+ + ".txt");
- FileOutputStream pageFileWriter;
- FileInputStream pageFileReader;
+ FileOutputStream pageFileWriter;
+ FileInputStream pageFileReader;
- try {
- pageFileWriter = new FileOutputStream(pageFile);
- pageFileReader = new FileInputStream(pageOldFile);
+ try {
+ pageFileWriter = new FileOutputStream(pageFile);
+ pageFileReader = new FileInputStream(pageOldFile);
- int b;
+ int b;
- while ((b = pageFileReader.read()) != -1) {
- pageFileWriter.write(b);
- }
+ while ((b = pageFileReader.read()) != -1) {
+ pageFileWriter.write(b);
+ }
- pageFileWriter.close();
+ pageFileWriter.close();
- pageOldFile.delete();
+ pageOldFile.delete();
- pageFileWriter = new FileOutputStream(pageOldFile);
+ pageFileWriter = new FileOutputStream(pageOldFile);
- String pageContent = page.getContent();
+ String pageContent = page.getContent();
- for (int i = 0; i < pageContent.length(); i++) {
- pageFileWriter.write((int) pageContent.charAt(i));
+ for (int i = 0; i < pageContent.length(); i++) {
+ pageFileWriter.write((int) pageContent.charAt(i));
+ }
+
+ pageFileWriter.close();
+ status = true;
+ } catch (FileNotFoundException fnfe) {
+ System.err.println("[FILEDATASOURCE]: Cannot save page: "
+ + fnfe.toString());
+ } catch (IOException ioe) {
+ System.err.println("[FILEDATASOURCE]: Cannot save page: "
+ + ioe.toString());
}
- pageFileWriter.close();
- status = true;
- } catch (FileNotFoundException fnfe) {
- System.err.println("[FILEDATASOURCE]: Cannot save page: "
- + fnfe.toString());
- } catch (IOException ioe) {
- System.err.println("[FILEDATASOURCE]: Cannot save page: "
- + ioe.toString());
+ } else { // there is no page on disk. We have to create new one.
+
+ try {
+
+ // create needed dirs
+ File newPageFile = new File(pathToMedia+"/OLD/"+page.getName());
+ newPageFile.mkdirs();
+
+ //write the page
+ newPageFile = new File(pathToMedia+"/OLD/"+page.getName()+"/page.properties");
+
+ FileOutputStream pageWriter = new FileOutputStream(newPageFile);
+
+ Properties properties = new Properties();
+ properties.setProperty(page.getLastVersion()+".author", page.getLastAuthor().getName());
+
+ properties.store(pageWriter, "Saved by FileDataSource of JBoss Wiki");
+
+ pageWriter = new FileOutputStream(new File(pathToMedia+"/"+page.getName()+".txt"));
+
+ String pageContent = page.getContent();
+
+ for (int i = 0; i < pageContent.length(); i++) {
+ pageWriter.write((int) pageContent.charAt(i));
+ }
+
+ status = true;
+ }
+ catch (Exception e) {
+ System.err.println("Cannot write new page: "+e);
+ status = false;
+ }
}
-
- /*
- * while () String pageContent = page.getContent();
- *
- * for (int i = 0; i < page.) pageFileWriter.w
- */
return status;
}
Modified: trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/WikiPlugin.java
===================================================================
--- trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/WikiPlugin.java 2005-08-17 15:46:28 UTC (rev 884)
+++ trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/WikiPlugin.java 2005-08-17 16:02:56 UTC (rev 885)
@@ -55,6 +55,8 @@
*
*/
+ public abstract void init();
+
public void setWikiEngine(WikiEngine wikiEngine) {
this.wikiEngine = wikiEngine;
@@ -77,5 +79,6 @@
protected String getProperty(String propertyName) {
return pluginProps.getProperty(propertyName);
}
+
}
Modified: trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java
===================================================================
--- trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java 2005-08-17 15:46:28 UTC (rev 884)
+++ trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java 2005-08-17 16:02:56 UTC (rev 885)
@@ -58,8 +58,11 @@
WikiPage edPage = wikiEngine.getByName((String) rReq
.getParameter("editedPage"), wikiContext);
- edPage.unlock(rReq.getUser());
-
+
+ if (edPage != null) { //it may be null if the page isn't saved yet
+ edPage.unlock(rReq.getUser());
+ }
+
// saving, previewing or canceling
if (rReq.getParameter("editAction").equals("Save")) {
Modified: trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/WikiType.java
===================================================================
--- trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/WikiType.java 2005-08-17 15:46:28 UTC (rev 884)
+++ trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/WikiType.java 2005-08-17 16:02:56 UTC (rev 885)
@@ -102,6 +102,9 @@
plugins.put(pluginName, plugin);
plugin.setWikiEngine(wikiEngine);
+
+ // run init() function
+ plugin.init();
System.out.println("[WikiType:" + name + "]Plugin added: "
+ pluginName + " class: " + pluginClass);
Modified: trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/plugins/HTMLTranslator.java
===================================================================
--- trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/plugins/HTMLTranslator.java 2005-08-17 15:46:28 UTC (rev 884)
+++ trunk/forge/portal-extensions/forge-wiki/src/java/org/jboss/wiki/plugins/HTMLTranslator.java 2005-08-17 16:02:56 UTC (rev 885)
@@ -33,7 +33,7 @@
private Matcher myMatcher;
/* URL components, later to be configurable */
- private String portalHome = "http://forge.sicore.org:8080/portal/";
+ private String portalHome = "http://localhost:8080/portal/";
private String wikiHome = "index.html?ctrl:id=window.default.WikiPortletWindow";
@@ -788,6 +788,12 @@
return newPage;
}
+ @Override
+ public void init() {
+ // TODO Auto-generated method stub
+
+ }
+
// public static void main(String[] args) {
|