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) { |