You can subscribe to this list here.
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(233) |
Sep
(199) |
Oct
(206) |
Nov
(185) |
Dec
(270) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2006 |
Jan
(232) |
Feb
(426) |
Mar
(623) |
Apr
(592) |
May
(506) |
Jun
(389) |
Jul
(160) |
Aug
(3) |
Sep
(1) |
Oct
(1) |
Nov
(2) |
Dec
(5) |
2007 |
Jan
(1) |
Feb
(1) |
Mar
(2) |
Apr
(2) |
May
(4) |
Jun
(2) |
Jul
|
Aug
(3) |
Sep
(5) |
Oct
(9) |
Nov
(6) |
Dec
(6) |
2008 |
Jan
(3) |
Feb
|
Mar
(1) |
Apr
(3) |
May
(3) |
Jun
(5) |
Jul
(10) |
Aug
(2) |
Sep
(12) |
Oct
(10) |
Nov
(54) |
Dec
(49) |
2009 |
Jan
(19) |
Feb
(13) |
Mar
(20) |
Apr
(24) |
May
(44) |
Jun
(29) |
Jul
(32) |
Aug
(10) |
Sep
(7) |
Oct
(10) |
Nov
(4) |
Dec
(17) |
2010 |
Jan
(14) |
Feb
(5) |
Mar
(23) |
Apr
(50) |
May
(31) |
Jun
(9) |
Jul
(5) |
Aug
(4) |
Sep
(7) |
Oct
(5) |
Nov
(2) |
Dec
(3) |
2011 |
Jan
(12) |
Feb
(5) |
Mar
(5) |
Apr
(3) |
May
(4) |
Jun
(3) |
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2012 |
Jan
(1) |
Feb
(2) |
Mar
|
Apr
(1) |
May
(1) |
Jun
(2) |
Jul
(4) |
Aug
(1) |
Sep
|
Oct
(1) |
Nov
|
Dec
|
2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(3) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
2015 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <jbo...@li...> - 2005-12-05 23:50:56
|
Author: dam...@jb... Date: 2005-12-05 18:50:53 -0500 (Mon, 05 Dec 2005) New Revision: 1696 Added: labels/ Log: Adding labels for Mark P. Because he is sooo very special. |
From: <jbo...@li...> - 2005-12-05 23:43:13
|
Author: dam...@jb... Date: 2005-12-05 18:43:09 -0500 (Mon, 05 Dec 2005) New Revision: 1695 Added: qa/labs/ qa/labs/jbossrules/ Log: Added labs qa branch. |
From: <jbo...@li...> - 2005-12-05 22:42:29
|
Author: dam...@jb... Date: 2005-12-05 17:42:19 -0500 (Mon, 05 Dec 2005) New Revision: 1694 Added: trunk/labs/jbossrules/ Log: Added jbossrules. |
Author: dam...@jb... Date: 2005-12-05 11:13:56 -0500 (Mon, 05 Dec 2005) New Revision: 1692 Added: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/ qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTotalStatusPlugin.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/RevisionStatusPlugin.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/SvnStatusPlugin.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/TotalRepoSizeStatusPlugin.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CounterPlugin.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ImagePlugin.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/AdminSimpleCredentials.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiTypeLoader.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/GetRefsFromPagePlugin.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/UpdateRefs.java Removed: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/CommitsTotalStatusPlugin.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/SvnStatusPlugin.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTotalStatusPlugin.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/RevisionStatusPlugin.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/SvnStatusPlugin.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/TotalRepoSizeStatusPlugin.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiTypeHandler.java Modified: qa/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DomToXmlTransformer.java qa/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java qa/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java qa/forge/portal-extensions/forge-file-access/src/java/org/jboss/forge/fileaccess/FileAccessFilter.java qa/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/ForgeConfWatcher.java qa/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/Freezone.java qa/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/Podcast.java qa/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/PodcastDescriptor.java qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/Status.java qa/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/PortletWikiSession.java qa/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ServletWikiSession.java qa/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiInsidePlugins.xml qa/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiTypes.xml qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CurrentTimePlugin.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ReferringPagesPlugin.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UndefinedPagesPlugin.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UnusedPagesPlugin.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/Credentials.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/FileDataSource.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/InsidePluginExcecutor.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/JBossPortalCredentials.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/MediaDataSource.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/ShotokuDataSource.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/SimpleCredentials.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiEngine.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiInsidePlugin.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiPage.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiSession.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiType.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/exceptions/DataSourceException.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/exceptions/WikiException.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/AdminConsolePlugin.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/AttachementInfoPlugin.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/HTMLTranslatorParts.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RefsManipulatingInsidePlugin.java qa/forge/portal-extensions/jbosswiki/wiki-common/src/test/java/org/jboss/wiki/test/WikiTest.java qa/forge/portal-extensions/maven.xml Log: MERGED: -r 1665:1691 https://svn.labs.jboss.com/trunk/forge into qa. Another installment for the 1.0.7 release. Modified: qa/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DomToXmlTransformer.java =================================================================== --- qa/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DomToXmlTransformer.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DomToXmlTransformer.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -34,6 +34,7 @@ /** * @author adamw + * @author Ryszard Kozmik * A helper class to transform DOM nodes to their string representations * in XML. */ @@ -47,7 +48,8 @@ public String transformNode(Node root) throws TransformerException { TransformerFactory tFactory = TransformerFactory.newInstance(); Transformer transformer = tFactory.newTransformer();; - + transformer.setOutputProperty(OutputKeys.INDENT,"yes"); + transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4"); transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes"); ByteArrayOutputStream bos = new ByteArrayOutputStream(); Modified: qa/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java =================================================================== --- qa/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -90,7 +90,7 @@ DelegateContext ctx = new DelegateContext(); // Getting the DownloadCountersDescriptor object containing counters. - DownloadCountersDescriptor desc = getDesc(portalName); + DownloadCountersDescriptor desc = getDesc(portalName,contentManager); // If there isn't a descriptor in cache, return empty context. if (desc==null) { @@ -102,22 +102,17 @@ return ctx; } - // Getting the counters. - Map<String,Counter> values = desc.getCountersMap(); + // Getting the counters values. + Map<String,String> values = desc.getValuesForPortlet(projectId); // Filling the context for portlet. DelegateContext counters = ctx.next("counters"); for (String keyLink:values.keySet()) { - // Getting project ID from the counter - String counterProjectId = values.get(keyLink).getProjectId(); - - if (counterProjectId!=null && counterProjectId.compareTo(projectId)==0) { - DelegateContext counter = counters.next("counter"); - // Resolving the file name. - String fileName = keyLink.split(File.separator)[keyLink.split(File.separator).length-1]; - counter.put("link",fileName); - counter.put("value",Long.toString(values.get(keyLink).getValue())); - } + DelegateContext counter = counters.next("counter"); + // Resolving the file name. + String fileName = keyLink.split(File.separator)[keyLink.split(File.separator).length-1]; + counter.put("link",fileName); + counter.put("value",values.get(keyLink)); } return ctx; } @@ -127,7 +122,7 @@ * @param portalName * @return DownloadCountersDescriptor object. */ - public static DownloadCountersDescriptor getDesc(final String portalName) { + public static DownloadCountersDescriptor getDesc(final String portalName,final ContentManager contentManager) { DownloadCountersDescriptor desc = (DownloadCountersDescriptor) ForgeHelper .getForgeManagement().getFromCache(portalName, DownloadCountersDescriptor.class.getName()); Modified: qa/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java =================================================================== --- qa/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -128,6 +128,7 @@ synchronizeCounters(descriptors); } catch (Exception e) { + System.out.println ("[DOWNLOADCOUNTERS] Failed to initialize downloadCounters."); e.printStackTrace(); } } @@ -288,6 +289,8 @@ private synchronized Set<String> getTrackedProjects () { Set<String> projects = new HashSet<String>(); + if (downloadCounters==null) + return projects; for (String link:downloadCounters.keySet()) { projects.add(downloadCounters.get(link).getProjectId()); } @@ -312,6 +315,15 @@ return links; } + public synchronized Map<String,String> getValuesForPortlet (String projectId) { + List<String> links = getProjectLinks(projectId); + Map<String,String> values = new Hashtable<String,String>(links.size()); + for (String link : links) { + values.put(link,Long.toString(downloadCounters.get(link).getValue())); + } + return values; + } + /** * Method synchronizes the downloadCounters Map with a main download counters descriptor file. * @@ -337,7 +349,7 @@ createDocument(doc); DomToXmlTransformer xht = new DomToXmlTransformer(); - + // Getting string containing whole xml. String xmlString = xht.transformNode(doc.getDocumentElement()); @@ -364,7 +376,7 @@ for (String link:keys) { temporary = downloadCounters.get(link); Node newCounter = doc.createElement(COUNTER); - + Node newLink = doc.createElement(LINK); Node newLinkText = doc.createTextNode(link); newLink.appendChild(newLinkText); @@ -376,7 +388,7 @@ Node newValue = doc.createElement(VALUE); Node newValueText = doc.createTextNode(Long.toString(temporary.getValue())); newValue.appendChild(newValueText); - + newCounter.appendChild(newLink); newCounter.appendChild(newProjectId); newCounter.appendChild(newValue); @@ -393,7 +405,7 @@ * Counter value for this <code>link</code> will be incremented. */ synchronized public void increment (final String link) { - if (downloadCounters.get(link)!=null) { + if (downloadCounters!=null && downloadCounters.get(link)!=null) { // Status change to inform about counters modification. changeStatus=true; downloadCounters.get(link).increment(); Modified: qa/forge/portal-extensions/forge-file-access/src/java/org/jboss/forge/fileaccess/FileAccessFilter.java =================================================================== --- qa/forge/portal-extensions/forge-file-access/src/java/org/jboss/forge/fileaccess/FileAccessFilter.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-file-access/src/java/org/jboss/forge/fileaccess/FileAccessFilter.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -145,7 +145,8 @@ // Sending the request link to the DownloadCounter to increment // counter for this link if it's one of the tracked links. - downloadCounters.increment(File.separator+requestedRes); + if (downloadCounters!=null) + downloadCounters.increment(File.separator+requestedRes); } Modified: qa/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/ForgeConfWatcher.java =================================================================== --- qa/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/ForgeConfWatcher.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/ForgeConfWatcher.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -7,8 +7,12 @@ import org.jboss.forge.common.service.NodeWatcher; import org.jboss.logging.Logger; +import org.jboss.shotoku.ContentManager; import org.jboss.shotoku.Node; +import org.jboss.shotoku.aop.Inject; import org.jboss.shotoku.aop.NodeInject; +import org.jboss.shotoku.exceptions.RepositoryException; +import org.jboss.shotoku.exceptions.ResourceDoesNotExist; import org.w3c.dom.Document; import org.w3c.dom.NodeList; @@ -22,17 +26,26 @@ private Logger log = Logger.getLogger(this.getClass()); - @NodeInject("/default/freezone/forcelogin.xml") + @Inject + private ContentManager contentManager; + private Node configuration; public Object init(String arg0) { - lastNodeModification = configuration.getLastModification(); + try { + configuration = contentManager.getRootDirectory().getNode("/default/freezone/forcelogin.xml"); + lastNodeModification = configuration.getLastModification(); + } catch (RepositoryException e) { + configuration = null; + } catch (ResourceDoesNotExist e) { + configuration = null; + } return parseConfiguration(); } public Object nodeUpdate(String arg0, Object arg1) { - if (lastNodeModification < configuration.getLastModification()) { + if (configuration != null && lastNodeModification < configuration.getLastModification()) { lastNodeModification = configuration.getLastModification(); return parseConfiguration(); } @@ -40,6 +53,9 @@ } private List<String> parseConfiguration() { + if (configuration == null) + return null; + try { List<String> loggedInOnly = new ArrayList<String>(); Modified: qa/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/Freezone.java =================================================================== --- qa/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/Freezone.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/Freezone.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -212,7 +212,7 @@ loggedInOnly = (List<String>) ForgeHelper.getForgeManagement() .getFromCache("", ForgeConfWatcher.class.getName()); - return (request.getUser() != null) || (!loggedInOnly.contains(cmsPath)); + return (request.getUser() != null) || (loggedInOnly != null && !loggedInOnly.contains(cmsPath)); } @SuppressWarnings("unchecked") Modified: qa/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/Podcast.java =================================================================== --- qa/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/Podcast.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/Podcast.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -161,14 +161,16 @@ // filling the context with enclosure information ItemEnclosureIF enclosure = item.getEnclosure(); - if (enclosure != null) { - nodeContext.put("enclosure-type", enclosure.getType()); - nodeContext.put("enclosure-size", Math.round(enclosure.getLength() / BYTES_IN_MB)); - - URL enclosureLocation = enclosure.getLocation(); - if (enclosureLocation != null) { + URL enclosureLocation = null; + + if (enclosure != null) { + enclosureLocation = enclosure.getLocation(); + } + + if (enclosureLocation != null) { nodeContext.put("enclosure-link", enclosureLocation.toString()); - } + nodeContext.put("enclosure-type", enclosure.getType()); + nodeContext.put("enclosure-size", Math.round(enclosure.getLength() / BYTES_IN_MB)); } // filling the context with channel information Modified: qa/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/PodcastDescriptor.java =================================================================== --- qa/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/PodcastDescriptor.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/PodcastDescriptor.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -52,7 +52,7 @@ if ((root.getNodeType() == Node.ELEMENT_NODE) && (root.getNodeName().equals(Podcast.PODCAST_ELEMENT))) { - podcast = new Podcast(portalName, root); + podcast = new Podcast(serverAdress, root); } fillContext(); Modified: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/Status.java =================================================================== --- qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/Status.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/Status.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -43,8 +43,6 @@ import org.w3c.dom.NodeList; import org.jboss.forge.status.plugins.StatusPlugin; -import org.jboss.forge.status.plugins.CommitsTotalStatusPlugin; - import org.jboss.logging.Logger; /** @@ -208,7 +206,7 @@ * but only those with names included in <code>nodeNames</code> Set */ private Set<Node> getChildNodesSet(Node root, Set<String> nodesNames) { - HashSet ret = new HashSet<Node>(); + HashSet<Node> ret = new HashSet<Node>(); NodeList list = root.getChildNodes(); for (int i = 0; i < list.getLength(); i++) { @@ -227,7 +225,7 @@ * Map binds child Nodes names with appropriate Nodes. */ private Map<String,Node> getChildNodesMap(Node root, Set<String> nodesNames) { - HashMap ret = new HashMap<String,Node>(); + HashMap<String,Node> ret = new HashMap<String,Node>(); NodeList list = root.getChildNodes(); for (int i = 0; i < list.getLength(); i++) { Deleted: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/CommitsTotalStatusPlugin.java =================================================================== --- qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/CommitsTotalStatusPlugin.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/CommitsTotalStatusPlugin.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -1,53 +0,0 @@ -/* - * JBoss, Home of Professional Open Source - * Copyright 2005, JBoss Inc., and individual contributors as indicated - * by the @authors tag. See the copyright.txt in the distribution for a - * full listing of individual contributors. - * - * This is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * This software 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this software; if not, write to the Free - * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA, or see the FSF site: http://www.fsf.org. - */ - -package org.jboss.forge.status.plugins; - -import java.util.Map; - -/** -* @author Pawel Wrzeszcz -*/ - -public class CommitsTotalStatusPlugin extends SvnStatusPlugin { - - protected static String PLUGIN_NAME = "Commits total"; - protected static String PLUGIN_ID = "commitstotal"; - - public String getId() { return PLUGIN_ID; } - public String getName() { return PLUGIN_NAME; } - - public CommitsTotalStatusPlugin() { - super(); - } - @Override - protected int getPluginSpecyficValue(Map projectMap) { - Integer commitsTotal = (Integer) projectMap.get("commitsTotal"); - return commitsTotal.intValue(); - } - - @Override - protected int getPluginSpecyficDefaultValue() { - return 0; - } - -} \ No newline at end of file Deleted: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/SvnStatusPlugin.java =================================================================== --- qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/SvnStatusPlugin.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/SvnStatusPlugin.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -1,129 +0,0 @@ -/* - * JBoss, Home of Professional Open Source - * Copyright 2005, JBoss Inc., and individual contributors as indicated - * by the @authors tag. See the copyright.txt in the distribution for a - * full listing of individual contributors. - * - * This is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * This software 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this software; if not, write to the Free - * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA, or see the FSF site: http://www.fsf.org. - */ - -package org.jboss.forge.status.plugins; - -import java.net.MalformedURLException; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import org.jboss.logging.Logger; - -import com.caucho.hessian.client.HessianProxyFactory; - -import hu.midori.kosmos.protocol.SvnService; -//import hu.midori.kosmos.model.SvnRepository; - -/** -* @author Pawel Wrzeszcz -*/ - -public abstract class SvnStatusPlugin extends StatusPlugin { - - private Map<String,Map> projectsMaps; - - private Logger log; - - private final static String KOSMOS_SVN_SERVICE_URL = - "http://localhost:8080/kosmos-server/kosmos-services/svn-service"; - //TODO shoud be parameter in xml config file - - public SvnStatusPlugin() { - super(); - - projectsMaps = new HashMap<String,Map>(); - log = Logger.getLogger(this.getClass()); - } - - protected abstract int getPluginSpecyficValue(Map projectMap); - protected abstract int getPluginSpecyficDefaultValue(); - - protected Map getSvnRepository(String projectId) { - - // Get project repository URL - String repoURL = getRepoURL(projectId); - //System.out.println("repo for project " + projectId + " " + repoURL); - - if (repoURL == null) { - return null; - } - - Map repositoryMap = null; - - // Connect to kosmos service - HessianProxyFactory factory = new HessianProxyFactory(); - SvnService service; - - try { - service = (SvnService) factory.create(SvnService.class, - KOSMOS_SVN_SERVICE_URL); - } catch (MalformedURLException e) { - log.error("Can not connect to kosmos svn service: " + KOSMOS_SVN_SERVICE_URL); - return null; - } - - // Get repository map - List repositories = service.getRepositories(repoURL); - - repositoryMap = (Map) repositories.get(0); - //printRepo(repositoryMap); - - return repositoryMap; - } - - private void printRepo(Map repositoryMap) { //debug - if (repositoryMap != null) { - - for (Iterator iter = repositoryMap.keySet().iterator(); iter.hasNext();) { - Object obj = (Object) iter.next(); - System.out.println("object: " + obj + " binding: " + repositoryMap.get(obj)); - } - } - } - - public int getValue(String projectId) { - - if (!projectsMaps.containsKey(projectId)) { - projectsMaps.put(projectId, getProjectMap(projectId)); - } - - Map projectMap = projectsMaps.get(projectId); - - if (projectMap == null) { - return getPluginSpecyficDefaultValue(); - } - - return getPluginSpecyficValue(projectMap); - } - - private String getRepoURL(String projectId) { - String repoURL = projects.getProjectProperty(projectId, "svn-repo"); - return (repoURL == "" ? null : repoURL); - } - - private Map getProjectMap(String projectId) { - return getSvnRepository(projectId); - } - -} Copied: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn (from rev 1691, trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn) Deleted: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -1,53 +0,0 @@ -/* - * JBoss, Home of Professional Open Source - * Copyright 2005, JBoss Inc., and individual contributors as indicated - * by the @authors tag. See the copyright.txt in the distribution for a - * full listing of individual contributors. - * - * This is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * This software 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this software; if not, write to the Free - * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA, or see the FSF site: http://www.fsf.org. - */ - -package org.jboss.forge.status.plugins.svn; - -import java.util.Map; - -/** -* @author Pawel Wrzeszcz -*/ - -public class CommitsLast31DaysStatusPlugin extends SvnStatusPlugin { - - protected static String PLUGIN_NAME = "Commits Last 31 Days"; - protected static String PLUGIN_ID = "commits31"; - - public String getId() { return PLUGIN_ID; } - public String getName() { return PLUGIN_NAME; } - - public CommitsLast31DaysStatusPlugin() { - super(); - } - @Override - protected int getPluginSpecyficValue(Map projectMap) { - Integer commitsTotal = (Integer) projectMap.get("commitsLast31Days"); - return commitsTotal.intValue(); - } - - @Override - protected int getPluginSpecyficDefaultValue() { - return 0; - } - -} \ No newline at end of file Copied: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java (from rev 1691, trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java) Deleted: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -1,53 +0,0 @@ -/* - * JBoss, Home of Professional Open Source - * Copyright 2005, JBoss Inc., and individual contributors as indicated - * by the @authors tag. See the copyright.txt in the distribution for a - * full listing of individual contributors. - * - * This is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * This software 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this software; if not, write to the Free - * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA, or see the FSF site: http://www.fsf.org. - */ - -package org.jboss.forge.status.plugins.svn; - -import java.util.Map; - -/** -* @author Pawel Wrzeszcz -*/ - -public class CommitsLast7DaysStatusPlugin extends SvnStatusPlugin { - - protected static String PLUGIN_NAME = "Commits Last 7 Days"; - protected static String PLUGIN_ID = "commits7"; - - public String getId() { return PLUGIN_ID; } - public String getName() { return PLUGIN_NAME; } - - public CommitsLast7DaysStatusPlugin() { - super(); - } - @Override - protected int getPluginSpecyficValue(Map projectMap) { - Integer commitsTotal = (Integer) projectMap.get("commitsLast7Days"); - return commitsTotal.intValue(); - } - - @Override - protected int getPluginSpecyficDefaultValue() { - return 0; - } - -} \ No newline at end of file Copied: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java (from rev 1691, trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java) Deleted: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -1,53 +0,0 @@ -/* - * JBoss, Home of Professional Open Source - * Copyright 2005, JBoss Inc., and individual contributors as indicated - * by the @authors tag. See the copyright.txt in the distribution for a - * full listing of individual contributors. - * - * This is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * This software 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this software; if not, write to the Free - * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA, or see the FSF site: http://www.fsf.org. - */ - -package org.jboss.forge.status.plugins.svn; - -import java.util.Map; - -/** -* @author Pawel Wrzeszcz -*/ - -public class CommitsTodayStatusPlugin extends SvnStatusPlugin { - - protected static String PLUGIN_NAME = "Commits Today"; - protected static String PLUGIN_ID = "commitstoday"; - - public String getId() { return PLUGIN_ID; } - public String getName() { return PLUGIN_NAME; } - - public CommitsTodayStatusPlugin() { - super(); - } - @Override - protected int getPluginSpecyficValue(Map projectMap) { - Integer commitsTotal = (Integer) projectMap.get("commitsToday"); - return commitsTotal.intValue(); - } - - @Override - protected int getPluginSpecyficDefaultValue() { - return 0; - } - -} \ No newline at end of file Copied: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java (from rev 1691, trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java) Deleted: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTotalStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTotalStatusPlugin.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTotalStatusPlugin.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -1,53 +0,0 @@ -/* - * JBoss, Home of Professional Open Source - * Copyright 2005, JBoss Inc., and individual contributors as indicated - * by the @authors tag. See the copyright.txt in the distribution for a - * full listing of individual contributors. - * - * This is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * This software 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this software; if not, write to the Free - * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA, or see the FSF site: http://www.fsf.org. - */ - -package org.jboss.forge.status.plugins.svn; - -import java.util.Map; - -/** -* @author Pawel Wrzeszcz -*/ - -public class CommitsTotalStatusPlugin extends SvnStatusPlugin { - - protected static String PLUGIN_NAME = "Commits total"; - protected static String PLUGIN_ID = "commitstotal"; - - public String getId() { return PLUGIN_ID; } - public String getName() { return PLUGIN_NAME; } - - public CommitsTotalStatusPlugin() { - super(); - } - @Override - protected int getPluginSpecyficValue(Map projectMap) { - Integer commitsTotal = (Integer) projectMap.get("commitsTotal"); - return commitsTotal.intValue(); - } - - @Override - protected int getPluginSpecyficDefaultValue() { - return 0; - } - -} \ No newline at end of file Copied: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTotalStatusPlugin.java (from rev 1691, trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTotalStatusPlugin.java) Deleted: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/RevisionStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/RevisionStatusPlugin.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/RevisionStatusPlugin.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -1,53 +0,0 @@ -/* - * JBoss, Home of Professional Open Source - * Copyright 2005, JBoss Inc., and individual contributors as indicated - * by the @authors tag. See the copyright.txt in the distribution for a - * full listing of individual contributors. - * - * This is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * This software 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this software; if not, write to the Free - * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA, or see the FSF site: http://www.fsf.org. - */ - -package org.jboss.forge.status.plugins.svn; - -import java.util.Map; - -/** -* @author Pawel Wrzeszcz -*/ - -public class RevisionStatusPlugin extends SvnStatusPlugin { - - protected static String PLUGIN_NAME = "Revision no"; - protected static String PLUGIN_ID = "revision"; - - public String getId() { return PLUGIN_ID; } - public String getName() { return PLUGIN_NAME; } - - public RevisionStatusPlugin() { - super(); - } - @Override - protected int getPluginSpecyficValue(Map projectMap) { - Long commitsTotal = (Long) projectMap.get("revision"); - return commitsTotal.intValue(); - } - - @Override - protected int getPluginSpecyficDefaultValue() { - return 0; - } - -} \ No newline at end of file Copied: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/RevisionStatusPlugin.java (from rev 1691, trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/RevisionStatusPlugin.java) Deleted: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/SvnStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/SvnStatusPlugin.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/SvnStatusPlugin.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -1,131 +0,0 @@ -/* - * JBoss, Home of Professional Open Source - * Copyright 2005, JBoss Inc., and individual contributors as indicated - * by the @authors tag. See the copyright.txt in the distribution for a - * full listing of individual contributors. - * - * This is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * This software 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this software; if not, write to the Free - * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA, or see the FSF site: http://www.fsf.org. - */ - -package org.jboss.forge.status.plugins.svn; - -import org.jboss.forge.status.plugins.StatusPlugin; - -import java.net.MalformedURLException; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import org.jboss.logging.Logger; - -import com.caucho.hessian.client.HessianProxyFactory; - -import hu.midori.kosmos.protocol.SvnService; -//import hu.midori.kosmos.model.SvnRepository; - -/** -* @author Pawel Wrzeszcz -*/ - -public abstract class SvnStatusPlugin extends StatusPlugin { - - private Map<String,Map> projectsMaps; - - private Logger log; - - private final static String KOSMOS_SVN_SERVICE_URL = - "http://localhost:8080/kosmos-server/kosmos-services/svn-service"; - //TODO shoud be parameter in xml config file - - public SvnStatusPlugin() { - super(); - - projectsMaps = new HashMap<String,Map>(); - log = Logger.getLogger(this.getClass()); - } - - protected abstract int getPluginSpecyficValue(Map projectMap); - protected abstract int getPluginSpecyficDefaultValue(); - - protected Map getSvnRepository(String projectId) { - - // Get project repository URL - String repoURL = getRepoURL(projectId); - //System.out.println("repo for project " + projectId + " " + repoURL); - - if (repoURL == null) { - return null; - } - - Map repositoryMap = null; - - // Connect to kosmos service - HessianProxyFactory factory = new HessianProxyFactory(); - SvnService service; - - try { - service = (SvnService) factory.create(SvnService.class, - KOSMOS_SVN_SERVICE_URL); - } catch (MalformedURLException e) { - log.error("Can not connect to kosmos svn service: " + KOSMOS_SVN_SERVICE_URL); - return null; - } - - // Get repository map - List repositories = service.getRepositories(repoURL); - - repositoryMap = (Map) repositories.get(0); - //printRepo(repositoryMap); - - return repositoryMap; - } - - private void printRepo(Map repositoryMap) { //debug - if (repositoryMap != null) { - - for (Iterator iter = repositoryMap.keySet().iterator(); iter.hasNext();) { - Object obj = (Object) iter.next(); - System.out.println("object: " + obj + " binding: " + repositoryMap.get(obj)); - } - } - } - - public int getValue(String projectId) { - - if (!projectsMaps.containsKey(projectId)) { - projectsMaps.put(projectId, getProjectMap(projectId)); - } - - Map projectMap = projectsMaps.get(projectId); - - if (projectMap == null) { - return getPluginSpecyficDefaultValue(); - } - - return getPluginSpecyficValue(projectMap); - } - - private String getRepoURL(String projectId) { - String repoURL = projects.getProjectProperty(projectId, "svn-repo"); - return (repoURL == "" ? null : repoURL); - } - - private Map getProjectMap(String projectId) { - return getSvnRepository(projectId); - } - -} Copied: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/SvnStatusPlugin.java (from rev 1691, trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/SvnStatusPlugin.java) Deleted: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/TotalRepoSizeStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/TotalRepoSizeStatusPlugin.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/TotalRepoSizeStatusPlugin.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -1,53 +0,0 @@ -/* - * JBoss, Home of Professional Open Source - * Copyright 2005, JBoss Inc., and individual contributors as indicated - * by the @authors tag. See the copyright.txt in the distribution for a - * full listing of individual contributors. - * - * This is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * This software 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this software; if not, write to the Free - * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA, or see the FSF site: http://www.fsf.org. - */ - -package org.jboss.forge.status.plugins.svn; - -import java.util.Map; - -/** -* @author Pawel Wrzeszcz -*/ - -public class TotalRepoSizeStatusPlugin extends SvnStatusPlugin { - - protected static String PLUGIN_NAME = "Total File Size"; - protected static String PLUGIN_ID = "total_file_size"; - - public String getId() { return PLUGIN_ID; } - public String getName() { return PLUGIN_NAME; } - - public TotalRepoSizeStatusPlugin() { - super(); - } - @Override - protected int getPluginSpecyficValue(Map projectMap) { - Integer commitsTotal = (Integer) projectMap.get("totalFileSize"); - return commitsTotal.intValue(); - } - - @Override - protected int getPluginSpecyficDefaultValue() { - return 0; - } - -} \ No newline at end of file Copied: qa/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/TotalRepoSizeStatusPlugin.java (from rev 1691, trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/TotalRepoSizeStatusPlugin.java) Modified: qa/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/PortletWikiSession.java =================================================================== --- qa/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/PortletWikiSession.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/PortletWikiSession.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -44,4 +44,8 @@ this.portletSession = portletSession; } + public String getId() { + return portletSession.getId(); + } + } Modified: qa/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ServletWikiSession.java =================================================================== --- qa/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ServletWikiSession.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ServletWikiSession.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -43,5 +43,9 @@ public ServletWikiSession(HttpSession httpSession) { this.httpSession = httpSession; } + + public String getId() { + return httpSession.getId(); + } } Modified: qa/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java =================================================================== --- qa/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -202,7 +202,7 @@ } if (rReq.getParameter("editAction") != null) { - log.info("EDITING PAGE"); + log.debug("EDITING PAGE"); // unlock page WikiPage edPage = wikiEngine.getByName((String) rReq @@ -320,7 +320,7 @@ pageToShow = wikiEngine.getByName(wikiPage, editWikiContext); - if ((pageToShow != null) && (!pageToShow.isEditable())) { + if ((pageToShow != null) && (!pageToShow.isEditable(credentials))) { if (!credentials.isAdmin()) { showPage = true; } @@ -457,9 +457,9 @@ rReq.setAttribute("defaultPage", defaultPage); - rReq.setAttribute("isEditable", pageToShow.isEditable()); + rReq.setAttribute("isEditable", pageToShow.isEditable(credentials)); - rReq.setAttribute("isViewable", pageToShow.isViewable()); + rReq.setAttribute("isViewable", pageToShow.isViewable(credentials)); rReq.setAttribute("isAdmin", credentials.isAdmin()); Modified: qa/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiInsidePlugins.xml =================================================================== --- qa/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiInsidePlugins.xml 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiInsidePlugins.xml 2005-12-05 16:13:56 UTC (rev 1692) @@ -6,4 +6,6 @@ <entry key="InsertPage">org.jboss.wiki.plugins.InsertPageInsidePlugin</entry> <entry key="IndexPlugin">org.jboss.wiki.plugins.IndexInsidePlugin</entry> <entry key="CurrentTimePlugin">com.ecyrd.jspwiki.plugin.CurrentTimePlugin</entry> +<entry key="Counter">com.ecyrd.jspwiki.plugin.CounterPlugin</entry> +<entry key="Image">com.ecyrd.jspwiki.plugin.ImagePlugin</entry> </properties> \ No newline at end of file Modified: qa/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiTypes.xml =================================================================== --- qa/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiTypes.xml 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiTypes.xml 2005-12-05 16:13:56 UTC (rev 1692) @@ -94,6 +94,14 @@ </plugin> </wikiType> <wikiType> + <name>refs</name> + <class>org.jboss.wiki.plugins.DirectReferenceWikiType</class> + <plugin> + <name>getRefsForPage</name> + <class>org.jboss.wiki.plugins.GetRefsFromPagePlugin</class> + </plugin> + </wikiType> + <wikiType> <name>recentChanges</name> <class>org.jboss.wiki.plugins.DefaultWikiType</class> <plugin> @@ -124,6 +132,10 @@ <name>reTranslateUids</name> <class>org.jboss.wiki.plugins.ReTranslateUids</class> </plugin> + <plugin> + <name>updateRefs</name> + <class>org.jboss.wiki.plugins.UpdateRefs</class> + </plugin> </wikiType> <wikiType> <name>admin</name> Copied: qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CounterPlugin.java (from rev 1691, trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CounterPlugin.java) Modified: qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CurrentTimePlugin.java =================================================================== --- qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CurrentTimePlugin.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CurrentTimePlugin.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -1,7 +1,6 @@ package com.ecyrd.jspwiki.plugin; import java.text.SimpleDateFormat; -import java.util.Calendar; import java.util.Date; import java.util.HashMap; Copied: qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ImagePlugin.java (from rev 1691, trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ImagePlugin.java) Modified: qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ReferringPagesPlugin.java =================================================================== --- qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ReferringPagesPlugin.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ReferringPagesPlugin.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -10,10 +10,6 @@ public class ReferringPagesPlugin extends RefsManipulatingInsidePlugin { - - //FIXME : FAQJBossIIOP - - @Override public String process(WikiPage wikiPage, WikiSession wikiSession, HashMap<String, String> attributes) { @@ -31,7 +27,7 @@ String uid = wikiEngine.getUid(wikiPage.getName()); - Set<String> refsFor = getRefsFor(uid, max); + Set<String> refsFor = getRefsFor(uid, max, wikiSession); for (String ref : refsFor) { stringBuffer.append(getLink(ref, maxwidth)); Modified: qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UndefinedPagesPlugin.java =================================================================== --- qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UndefinedPagesPlugin.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UndefinedPagesPlugin.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -20,12 +20,12 @@ StringBuffer stringBuffer = new StringBuffer(); - Set<String> allRefs = getAllRefs(); + Set<String> allRefs = getAllRefs(wikiSession); for (String pageName : allRefs) { if (!wikiEngine.pageExists(pageName)) { - stringBuffer.append(getLink(pageName, maxwidth)); + stringBuffer.append(getLink(wikiEngine.getUid(pageName), maxwidth)); } } Modified: qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UnusedPagesPlugin.java =================================================================== --- qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UnusedPagesPlugin.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UnusedPagesPlugin.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -22,12 +22,12 @@ Set<String> pageNames = wikiEngine.getAllPageNames(); - Set<String> allRefs = getAllRefs(); + Set<String> allRefs = getAllRefs(wikiSession); for (String pageName : pageNames) { - if (!allRefs.contains(pageName)) { - stringBuffer.append(getLink(pageName, maxwidth)); + if (!allRefs.contains(wikiEngine.getUid(pageName))) { + stringBuffer.append(getLink(wikiEngine.getUid(pageName), maxwidth)); } } Copied: qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/AdminSimpleCredentials.java (from rev 1691, trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/AdminSimpleCredentials.java) Modified: qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/Credentials.java =================================================================== --- qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/Credentials.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/Credentials.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -21,6 +21,8 @@ */ package org.jboss.wiki; +import java.util.Set; + import javax.portlet.ActionRequest; import javax.portlet.RenderRequest; @@ -61,4 +63,15 @@ * @param rReq ActionRequest to set. */ public abstract void setActionRequest(ActionRequest rReq); + + /**Checks if user is in given role. + * @param role to check + * @return True if is in role, false otherwise. + */ + public abstract boolean isUserInRole(String role); + + /**Get Set of ALL role names. + * @return Set of role names or empty Set if there are no roles + */ + public abstract Set<String> getAllRoles(); } Modified: qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/FileDataSource.java =================================================================== --- qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/FileDataSource.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/FileDataSource.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -34,6 +34,7 @@ import java.util.TreeSet; import org.jboss.logging.Logger; +import org.jboss.wiki.exceptions.DataSourceException; import org.jboss.wiki.exceptions.PageRenamingException; /** @@ -447,6 +448,87 @@ } } + + public void saveRolesSet(String uid, Set<String> roles, int action) throws DataSourceException { + File rolesFile; + try { + rolesFile = getRolesFile(uid, action); + + if (rolesFile == null) + throw new DataSourceException("Wrong action number"); + + } catch (IOException e) { + throw new DataSourceException(e); + } + + FileOutputStream fos = null; + try { + fos = new FileOutputStream(rolesFile); + + Properties roleProps = new Properties(); + + int i = 1; + + for (String roleName : roles) { + roleProps.setProperty("Role."+i++, roleName); + } + + roleProps.store(fos, SAVE_COMMENT); + + fos.close(); + } catch (FileNotFoundException e) { + throw new DataSourceException(e); + } catch (IOException e) { + try { + fos.close(); + } catch (IOException e1) { + throw new DataSourceException(e); + } + throw new DataSourceException(e); + } + + } + + private File getRolesFile(String uid, int action) throws IOException { + String fileName = (action == MediaDataSource.EDITABLE) ? "editRoles" : (action == MediaDataSource.VIEWABLE) ? "viewRoles" : null; + + if (fileName == null) + return null; + + File rolesFile = new File(pathToMedia + "/OLD/" + uid + "/" + fileName + ".properties"); + + if (!rolesFile.exists()) { + rolesFile.createNewFile(); + } + + return rolesFile; + } + + private Set<String> getRoles(String uid, int action) throws IOException { + Set<String> set = new TreeSet<String>(); + + File rolesFile = getRolesFile(uid, action); + + if (rolesFile == null) + return null; + + FileInputStream rolesFileIs = new FileInputStream(rolesFile); + + Properties roleProps = new Properties(); + + roleProps.load(rolesFileIs); + + int i = 1; + + while (roleProps.getProperty("Role."+i) != null) { + set.add(roleProps.getProperty("Role."+i)); + i++; + } + + rolesFileIs.close(); + + return set; + } public WikiPage getPage(String pageName) { // log.info("[WIKI:FileDataSource]: Getting new page: " + @@ -495,6 +577,17 @@ (pageMods & EDITABLE) == EDITABLE); page.setLength(pageFile.length()); + + try { + page.setEditRoles(getRoles(pageName, EDITABLE)); + } catch (IOException e) { + log.error("Couldn't read edit roles for page: "+pageName, e); + } + try { + page.setViewRoles(getRoles(pageName, VIEWABLE)); + } catch (IOException e) { + log.error("Couldn't read view roles for page: "+pageName, e); + } } } Modified: qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/InsidePluginExcecutor.java =================================================================== --- qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/InsidePluginExcecutor.java 2005-12-05 14:17:28 UTC (rev 1691) +++ qa/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/InsidePluginExcecutor.java 2005-12-05 16:13:56 UTC (rev 1692) @@ -9,6 +9,7 @@ import java.util.regex.Pattern; import org.jboss.logging.Logger; +import org.jboss.wiki.plugins.HTMLTranslatorParts; public class InsidePluginExcecutor { @@ -40,7 +41,7 @@ Properties props = new Properties(); try { - props.loadFromXML(WikiTypeHandler.class + props.loadFromXML(WikiTypeLoader.class .getResourceAsStream("/WikiInsidePlugins.xml")); } catch (InvalidPropertiesFormatException e) { log.error("WikiInsidePlugins.xml... [truncated message content] |
From: <jbo...@li...> - 2005-12-05 14:17:32
|
Author: unibrew Date: 2005-12-05 09:17:28 -0500 (Mon, 05 Dec 2005) New Revision: 1691 Modified: trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java Log: [DownloadCounters] Small security update. Modified: trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java =================================================================== --- trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java 2005-12-03 23:08:40 UTC (rev 1690) +++ trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java 2005-12-05 14:17:28 UTC (rev 1691) @@ -102,22 +102,17 @@ return ctx; } - // Getting the counters. - Map<String,Counter> values = desc.getCountersMap(); + // Getting the counters values. + Map<String,String> values = desc.getValuesForPortlet(projectId); // Filling the context for portlet. DelegateContext counters = ctx.next("counters"); for (String keyLink:values.keySet()) { - // Getting project ID from the counter - String counterProjectId = values.get(keyLink).getProjectId(); - - if (counterProjectId!=null && counterProjectId.compareTo(projectId)==0) { - DelegateContext counter = counters.next("counter"); - // Resolving the file name. - String fileName = keyLink.split(File.separator)[keyLink.split(File.separator).length-1]; - counter.put("link",fileName); - counter.put("value",Long.toString(values.get(keyLink).getValue())); - } + DelegateContext counter = counters.next("counter"); + // Resolving the file name. + String fileName = keyLink.split(File.separator)[keyLink.split(File.separator).length-1]; + counter.put("link",fileName); + counter.put("value",values.get(keyLink)); } return ctx; } Modified: trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java =================================================================== --- trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java 2005-12-03 23:08:40 UTC (rev 1690) +++ trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java 2005-12-05 14:17:28 UTC (rev 1691) @@ -315,6 +315,15 @@ return links; } + public synchronized Map<String,String> getValuesForPortlet (String projectId) { + List<String> links = getProjectLinks(projectId); + Map<String,String> values = new Hashtable<String,String>(links.size()); + for (String link : links) { + values.put(link,Long.toString(downloadCounters.get(link).getValue())); + } + return values; + } + /** * Method synchronizes the downloadCounters Map with a main download counters descriptor file. * |
From: <jbo...@li...> - 2005-12-03 23:08:45
|
Author: aron.gombas Date: 2005-12-03 18:08:40 -0500 (Sat, 03 Dec 2005) New Revision: 1690 Modified: trunk/labs/kosmos/deploy-portlet-liferay-portal.xml Log: Workaround for the Liferay font problem Modified: trunk/labs/kosmos/deploy-portlet-liferay-portal.xml =================================================================== --- trunk/labs/kosmos/deploy-portlet-liferay-portal.xml 2005-12-03 22:56:02 UTC (rev 1689) +++ trunk/labs/kosmos/deploy-portlet-liferay-portal.xml 2005-12-03 23:08:40 UTC (rev 1690) @@ -1,15 +1,79 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- Kosmos Portlet deploy-script for Liferay Portal --> +<!-- Kosmos Portlet deploy-script for Liferay Portal in Tomcat --> <!-- $Id$ --> -<project basedir="." default="redeploy" name="Kosmos Portlet on Liferay Portal"> +<project basedir="." default="build" name="Kosmos Portlet on Liferay Portal"> <description>Kosmos Portlet Module deploy-file</description> - <!-- - TODO this is fairly useless at the moment, because the Liferay deployment is quite complicated! refer to the manual instead! - also, instead of running this, it should really call the original "portlet-deployer-3.5.0.xml"! - and should preprocess the JSP's to fix the font-size problem. - --> +<!-- TODO this script needs serious cleaning up --> + + <property environment="env"/> <property name="module.name" value="portlet"/> <property name="container.name" value="liferay-portal"/> - <import file="build/deploy.xml"/> + <property name="temp.dir" value="tmp"/> + + <!-- the following properties need to be customized to your environment --> + <!-- for JBoss AS: <property name="container.dir" value="${env.JBOSS_HOME}/server/default" /> --> + <property name="container.dir" value="${env.CATALINA_HOME}"/> + <!-- container.lib.dir is where the xml-apis.jar is located --> + <!-- for JBoss AS: <property name="container.lib.dir" value="${container.dir}/lib" /> --> + <property name="container.lib.dir" value="${container.dir}/common/endorsed"/> + <property name="liferay.home" value="${container.dir}/liferay"/> + <property name="deploy-script.name" value="portlet-deployer.xml"/> + + <target name="build" > + <!-- unpack --> + <mkdir dir="${temp.dir}"/> + <unzip src="kosmos-portlet.war" dest="${temp.dir}"/> + + <!-- prepare dependencies --> + <copy todir="${temp.dir}/WEB-INF"> + <fileset dir="conf/${container.name}" includes="liferay-*.xml"/> + </copy> + + <copy todir="${temp.dir}/WEB-INF/tld"> + <fileset dir="${liferay.home}/WEB-INF/tld" includes="liferay-portlet.tld"/> + </copy> + + <delete> + <fileset dir="${temp.dir}/WEB-INF/lib" includes="commons-logging-1.0.4.jar"/> + </delete> + <copy todir="${temp.dir}/WEB-INF/lib"> + <fileset dir="../etc" includes="commons-logging-1.0.3.jar"/><!-- TODO fix reference and this should be done for the server, too --> + <fileset dir="${liferay.home}/WEB-INF/lib" includes="util-taglib.jar"/> + </copy> + + <!-- preprocess JSP code to avoid Liferay-specific issues with font-sizes and such --> + <replace dir="${temp.dir}/pages" includes="**/*.jsp" summary="true"> + <replacetoken><![CDATA[<portlet:defineObjects/>]]></replacetoken> + <replacevalue><![CDATA[<portlet:defineObjects/> + <style type="text/css"> + <!-- + .portlet-section-header { + font-size: small; + } + + .portlet-font, + .portlet-section-subheader, + .portlet-section-footer, + .portlet-section-body, .portlet-section-body-hover, tr.portlet-section-body:hover, + .portlet-section-alternate, .portlet-section-alternate-hover, tr.portlet-section-alternate:hover, + .portlet-msg-alert, + .portlet-msg-error { + font-size: xx-small; + } + --> + </style>]]></replacevalue> + </replace> + + <!-- repack --> + <zip destfile="conf/${container.name}/kosmos-portlet.war" basedir="${temp.dir}"/> + + <!-- prepare container --> + <delete> + <fileset dir="${container.lib.dir}" includes="xml-apis.jar"/> + </delete> + + <!-- deploy the repacked war --> + <ant antfile="${deploy-script.name}" dir="conf/${container.name}"/> + </target> </project> |
From: <jbo...@li...> - 2005-12-03 22:56:12
|
Author: aron.gombas Date: 2005-12-03 17:56:02 -0500 (Sat, 03 Dec 2005) New Revision: 1689 Removed: trunk/labs/kosmos/conf-portlet/liferay-portal/portlet-deployer-3.5.0.xml Modified: trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-display.xml trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-portlet.xml Log: Improved Liferay config files Modified: trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-display.xml =================================================================== --- trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-display.xml 2005-12-03 20:43:53 UTC (rev 1688) +++ trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-display.xml 2005-12-03 22:56:02 UTC (rev 1689) @@ -5,8 +5,9 @@ <category name="category.development"> <portlet id="LocalCcMonitoringPortlet" /> <portlet id="JBossJiraMonitoringPortlet" /> + <portlet id="KosmosDependenciesSfMonitoringPortlet" /> + <portlet id="KosmosToolsSfMonitoringPortlet" /> <portlet id="JBossProductsSfMonitoringPortlet" /> - <portlet id="KosmosToolsSfMonitoringPortlet" /> <portlet id="JBossSvnMonitoringPortlet" /> </category> </display> Modified: trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-portlet.xml =================================================================== --- trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-portlet.xml 2005-12-03 20:43:53 UTC (rev 1688) +++ trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-portlet.xml 2005-12-03 22:56:02 UTC (rev 1689) @@ -15,8 +15,8 @@ <include>true</include> </portlet> <portlet> - <portlet-name>JBossProductsSfMonitoringPortlet</portlet-name> - <struts-path>sourceforge_products</struts-path> + <portlet-name>KosmosDependenciesSfMonitoringPortlet</portlet-name> + <struts-path>sourceforge_dependencies</struts-path> <use-default-template>true</use-default-template> <include>true</include> </portlet> @@ -27,6 +27,12 @@ <include>true</include> </portlet> <portlet> + <portlet-name>JBossProductsSfMonitoringPortlet</portlet-name> + <struts-path>sourceforge_products</struts-path> + <use-default-template>true</use-default-template> + <include>true</include> + </portlet> + <portlet> <portlet-name>JBossSvnMonitoringPortlet</portlet-name> <struts-path>svn</struts-path> <use-default-template>true</use-default-template> Deleted: trunk/labs/kosmos/conf-portlet/liferay-portal/portlet-deployer-3.5.0.xml =================================================================== --- trunk/labs/kosmos/conf-portlet/liferay-portal/portlet-deployer-3.5.0.xml 2005-12-03 20:43:53 UTC (rev 1688) +++ trunk/labs/kosmos/conf-portlet/liferay-portal/portlet-deployer-3.5.0.xml 2005-12-03 22:56:02 UTC (rev 1689) @@ -1,98 +0,0 @@ -<?xml version="1.0"?> - -<project name="portlet-deployer" basedir="." default="deploy"> - <target name="init"> - <property environment="env" /> - - <!-- JBoss+Jetty --> - - <!--<property name="app.server.type" value="jboss-jetty" /> - <property name="app.server.dir" value="/CVSROOT/liferay/ext/servers/${app.server.type}" /> - <property name="app.server.deploy.dir" value="${app.server.dir}/server/default/deploy" /> - <path id="project.classpath"> - <pathelement location="${app.server.deploy.dir}/ext.ear/portal-ejb.jar" /> - <pathelement location="${env.ANT_HOME}/lib/ant.jar" /> - <fileset dir="${app.server.deploy.dir}/ext.ear/lib" /> - <pathelement location="${app.server.deploy.dir}/jbossweb-jetty.sar/javax.servlet.jar" /> - </path>--> - - <!-- JBoss+Tomcat --> - - <!--<property name="app.server.type" value="jboss-tomcat" /> - <property name="app.server.dir" value="/CVSROOT/liferay/ext/servers/${app.server.type}" /> - <property name="app.server.deploy.dir" value="${app.server.dir}/server/default/deploy" /> - <path id="project.classpath"> - <pathelement location="${app.server.deploy.dir}/ext.ear/portal-ejb.jar" /> - <pathelement location="${env.ANT_HOME}/lib/ant.jar" /> - <fileset dir="${app.server.deploy.dir}/ext.ear/lib" /> - <pathelement location="${app.server.deploy.dir}/../lib/javax.servlet.jar" /> - </path>--> - - <!-- Jetty --> - - <!-- - You cannot hot deploy portlets on Jetty because it does not come with - any native hot deployers. - - See http://www.jettyserver.org/jetty/faq?s=200-General&t=HotDeploy - --> - - <!--<property name="app.server.type" value="jetty" /> - <property name="app.server.dir" value="/CVSROOT/liferay/ext/servers/${app.server.type}" /> - <property name="app.server.deploy.dir" value="${app.server.dir}/webapps" /> - <path id="project.classpath"> - <pathelement location="${env.ANT_HOME}/lib/ant.jar" /> - <fileset dir="${app.server.dir}/lib/ext" /> - <pathelement location="${app.server.dir}/lib/javax.servlet.jar" /> - </path>--> - - <!-- Resin --> - - <!--<property name="app.server.type" value="resin" /> - <property name="app.server.dir" value="/CVSROOT/liferay/ext/servers/${app.server.type}" /> - <property name="app.server.deploy.dir" value="${app.server.dir}/webapps" /> - <path id="project.classpath"> - <pathelement location="${env.ANT_HOME}/lib/ant.jar" /> - <fileset dir="${app.server.dir}/common/lib/ext" /> - <pathelement location="${app.server.dir}/lib/jsdk-24.jar" /> - </path>--> - - <!-- Tomcat --> - - <property name="app.server.type" value="tomcat" /> - <property name="app.server.dir" value="${env.CATALINA_HOME}" /> - <property name="app.server.deploy.dir" value="${app.server.dir}/webapps" /> - <path id="project.classpath"> - <pathelement location="${env.ANT_HOME}/lib/ant.jar" /> - <fileset dir="${app.server.dir}/common/lib/ext" /> - <pathelement location="${app.server.dir}/common/lib/servlet-api.jar" /> - </path> - </target> - - <target name="deploy" depends="init"> - <java - classname="com.liferay.portal.tools.PortletDeployer" - classpathref="project.classpath" - fork="true" - newenvironment="true"> - - <!-- Required Arguments --> - - <jvmarg value="-Ddeployer.base.dir=./" /> - <jvmarg value="-Ddeployer.dest.dir=${app.server.deploy.dir}" /> - <jvmarg value="-Ddeployer.app.server.type=${app.server.type}" /> - <jvmarg value="-Ddeployer.portlet.taglib.dtd=${app.server.deploy.dir}/ext.ear/portal-web-complete.war/WEB-INF/tld/liferay-portlet.tld" /> - - <!-- Optional Arguments --> - - <jvmarg value="-Ddeployer.jboss.prefix=1" /> - <jvmarg value="-Ddeployer.tomcat.lib.dir=${app.server.dir}/common/lib/ext" /> - - <!-- Dependent Libraries --> - - <arg value="${app.server.deploy.dir}/ext.ear/portal-web-complete.war/WEB-INF/lib/util-taglib.jar" /> - <arg value="${app.server.deploy.dir}/ext.ear/lib/util-java.jar" /> - <!--<arg value="${app.server.deploy.dir}/ext.ear/lib/util-jsf.jar" />--> - </java> - </target> -</project> \ No newline at end of file |
From: <jbo...@li...> - 2005-12-03 20:44:03
|
Author: aron.gombas Date: 2005-12-03 15:43:53 -0500 (Sat, 03 Dec 2005) New Revision: 1688 Added: trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-display.xml trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-portlet.xml trunk/labs/kosmos/conf-portlet/liferay-portal/portlet-deployer.xml Log: New config files for Liferay Added: trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-display.xml =================================================================== --- trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-display.xml 2005-12-02 22:57:34 UTC (rev 1687) +++ trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-display.xml 2005-12-03 20:43:53 UTC (rev 1688) @@ -0,0 +1,12 @@ +<?xml version="1.0"?> +<!DOCTYPE display PUBLIC "-//Liferay//DTD Display 3.5.0//EN" "http://www.liferay.com/dtd/liferay-display_3_5_0.dtd"> + +<display> + <category name="category.development"> + <portlet id="LocalCcMonitoringPortlet" /> + <portlet id="JBossJiraMonitoringPortlet" /> + <portlet id="JBossProductsSfMonitoringPortlet" /> + <portlet id="KosmosToolsSfMonitoringPortlet" /> + <portlet id="JBossSvnMonitoringPortlet" /> + </category> +</display> Added: trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-portlet.xml =================================================================== --- trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-portlet.xml 2005-12-02 22:57:34 UTC (rev 1687) +++ trunk/labs/kosmos/conf-portlet/liferay-portal/liferay-portlet.xml 2005-12-03 20:43:53 UTC (rev 1688) @@ -0,0 +1,35 @@ +<?xml version="1.0"?> +<!DOCTYPE liferay-portlet-app PUBLIC "-//Liferay//DTD Portlet Application 3.5.0//EN" "http://www.liferay.com/dtd/liferay-portlet-app_3_5_0.dtd"> + +<liferay-portlet-app> + <portlet> + <portlet-name>LocalCcMonitoringPortlet</portlet-name> + <struts-path>cruise</struts-path> + <use-default-template>true</use-default-template> + <include>true</include> + </portlet> + <portlet> + <portlet-name>JBossJiraMonitoringPortlet</portlet-name> + <struts-path>jira</struts-path> + <use-default-template>true</use-default-template> + <include>true</include> + </portlet> + <portlet> + <portlet-name>JBossProductsSfMonitoringPortlet</portlet-name> + <struts-path>sourceforge_products</struts-path> + <use-default-template>true</use-default-template> + <include>true</include> + </portlet> + <portlet> + <portlet-name>KosmosToolsSfMonitoringPortlet</portlet-name> + <struts-path>sourceforge_tools</struts-path> + <use-default-template>true</use-default-template> + <include>true</include> + </portlet> + <portlet> + <portlet-name>JBossSvnMonitoringPortlet</portlet-name> + <struts-path>svn</struts-path> + <use-default-template>true</use-default-template> + <include>true</include> + </portlet> +</liferay-portlet-app> Added: trunk/labs/kosmos/conf-portlet/liferay-portal/portlet-deployer.xml =================================================================== --- trunk/labs/kosmos/conf-portlet/liferay-portal/portlet-deployer.xml 2005-12-02 22:57:34 UTC (rev 1687) +++ trunk/labs/kosmos/conf-portlet/liferay-portal/portlet-deployer.xml 2005-12-03 20:43:53 UTC (rev 1688) @@ -0,0 +1,98 @@ +<?xml version="1.0"?> + +<project name="portlet-deployer" basedir="." default="deploy"> + <target name="init"> + <property environment="env" /> + + <!-- JBoss+Jetty --> + + <!--<property name="app.server.type" value="jboss-jetty" /> + <property name="app.server.dir" value="/CVSROOT/liferay/ext/servers/${app.server.type}" /> + <property name="app.server.deploy.dir" value="${app.server.dir}/server/default/deploy" /> + <path id="project.classpath"> + <pathelement location="${app.server.deploy.dir}/ext.ear/portal-ejb.jar" /> + <pathelement location="${env.ANT_HOME}/lib/ant.jar" /> + <fileset dir="${app.server.deploy.dir}/ext.ear/lib" /> + <pathelement location="${app.server.deploy.dir}/jbossweb-jetty.sar/javax.servlet.jar" /> + </path>--> + + <!-- JBoss+Tomcat --> + + <!--<property name="app.server.type" value="jboss-tomcat" /> + <property name="app.server.dir" value="/CVSROOT/liferay/ext/servers/${app.server.type}" /> + <property name="app.server.deploy.dir" value="${app.server.dir}/server/default/deploy" /> + <path id="project.classpath"> + <pathelement location="${app.server.deploy.dir}/ext.ear/portal-ejb.jar" /> + <pathelement location="${env.ANT_HOME}/lib/ant.jar" /> + <fileset dir="${app.server.deploy.dir}/ext.ear/lib" /> + <pathelement location="${app.server.deploy.dir}/../lib/javax.servlet.jar" /> + </path>--> + + <!-- Jetty --> + + <!-- + You cannot hot deploy portlets on Jetty because it does not come with + any native hot deployers. + + See http://www.jettyserver.org/jetty/faq?s=200-General&t=HotDeploy + --> + + <!--<property name="app.server.type" value="jetty" /> + <property name="app.server.dir" value="/CVSROOT/liferay/ext/servers/${app.server.type}" /> + <property name="app.server.deploy.dir" value="${app.server.dir}/webapps" /> + <path id="project.classpath"> + <pathelement location="${env.ANT_HOME}/lib/ant.jar" /> + <fileset dir="${app.server.dir}/lib/ext" /> + <pathelement location="${app.server.dir}/lib/javax.servlet.jar" /> + </path>--> + + <!-- Resin --> + + <!--<property name="app.server.type" value="resin" /> + <property name="app.server.dir" value="/CVSROOT/liferay/ext/servers/${app.server.type}" /> + <property name="app.server.deploy.dir" value="${app.server.dir}/webapps" /> + <path id="project.classpath"> + <pathelement location="${env.ANT_HOME}/lib/ant.jar" /> + <fileset dir="${app.server.dir}/common/lib/ext" /> + <pathelement location="${app.server.dir}/lib/jsdk-24.jar" /> + </path>--> + + <!-- Tomcat --> + + <property name="app.server.type" value="tomcat" /> + <property name="app.server.dir" value="${env.CATALINA_HOME}" /> + <property name="app.server.deploy.dir" value="${app.server.dir}/webapps" /> + <path id="project.classpath"> + <pathelement location="${env.ANT_HOME}/lib/ant.jar" /> + <fileset dir="${app.server.dir}/common/lib/ext" /> + <pathelement location="${app.server.dir}/common/lib/servlet-api.jar" /> + </path> + </target> + + <target name="deploy" depends="init"> + <java + classname="com.liferay.portal.tools.PortletDeployer" + classpathref="project.classpath" + fork="true" + newenvironment="true"> + + <!-- Required Arguments --> + + <jvmarg value="-Ddeployer.base.dir=./" /> + <jvmarg value="-Ddeployer.dest.dir=${app.server.deploy.dir}" /> + <jvmarg value="-Ddeployer.app.server.type=${app.server.type}" /> + <jvmarg value="-Ddeployer.portlet.taglib.dtd=${app.server.deploy.dir}/ext.ear/portal-web-complete.war/WEB-INF/tld/liferay-portlet.tld" /> + + <!-- Optional Arguments --> + + <jvmarg value="-Ddeployer.jboss.prefix=1" /> + <jvmarg value="-Ddeployer.tomcat.lib.dir=${app.server.dir}/common/lib/ext" /> + + <!-- Dependent Libraries --> + + <arg value="${app.server.deploy.dir}/ext.ear/portal-web-complete.war/WEB-INF/lib/util-taglib.jar" /> + <arg value="${app.server.deploy.dir}/ext.ear/lib/util-java.jar" /> + <!--<arg value="${app.server.deploy.dir}/ext.ear/lib/util-jsf.jar" />--> + </java> + </target> +</project> \ No newline at end of file |
From: <jbo...@li...> - 2005-12-02 22:52:02
|
Author: dam...@jb... Date: 2005-12-02 17:51:59 -0500 (Fri, 02 Dec 2005) New Revision: 1685 Added: trunk/labs/jbossbuild/ Log: Adding jbossbuild. |
From: <jbo...@li...> - 2005-12-02 08:09:07
|
Author: szimano Date: 2005-12-02 03:09:00 -0500 (Fri, 02 Dec 2005) New Revision: 1682 Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/GetRefsFromPagePlugin.java Log: bug with getting refs for page http://jira.jboss.com/jira/browse/JBWIKI-72 Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/GetRefsFromPagePlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/GetRefsFromPagePlugin.java 2005-12-01 19:26:21 UTC (rev 1681) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/GetRefsFromPagePlugin.java 2005-12-02 08:09:00 UTC (rev 1682) @@ -13,7 +13,7 @@ private static final String pattern1 = "\\[.+\\]"; - private static final String pattern2 = "\\[[\\w\\d\\s]+\\|.+\\]"; + private static final String pattern2 = "\\[[^]|]+\\|.+\\]"; @Override public WikiPage process(WikiPage wikiPage, WikiSession wikiSession) { |
From: <jbo...@li...> - 2005-12-01 19:26:32
|
Author: szimano Date: 2005-12-01 14:26:21 -0500 (Thu, 01 Dec 2005) New Revision: 1681 Added: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/AdminSimpleCredentials.java 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/plugins/GetRefsFromPagePlugin.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/HTMLTranslatorParts.java Log: new credentials for accessing all pages and another jspwiki insidie plugin changes http://jira.jboss.com/jira/browse/JBWIKI-72 Added: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/AdminSimpleCredentials.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/AdminSimpleCredentials.java 2005-12-01 17:57:28 UTC (rev 1680) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/AdminSimpleCredentials.java 2005-12-01 19:26:21 UTC (rev 1681) @@ -0,0 +1,71 @@ +/* + * JBoss, Home of Professional Open Source + * Copyright 2005, JBoss Inc., and individual contributors as indicated + * by the @authors tag. See the copyright.txt in the distribution for a + * full listing of individual contributors. + * + * This is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * This software 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this software; if not, write to the Free + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA, or see the FSF site: http://www.fsf.org. + */ +package org.jboss.wiki; + +import java.util.Set; +import java.util.TreeSet; + +import javax.portlet.ActionRequest; +import javax.portlet.RenderRequest; + +/**Super user Credentials to be used in plugins for accesing ALL pages etc. + * @author tomek + * + */ +public class AdminSimpleCredentials extends Credentials { + + @Override + public String getName() { + return "admin"; + } + + @Override + public boolean isLoggedIn() { + return true; + } + + @Override + public boolean isAdmin() { + return true; + } + + @Override + public void setRenderRequest(RenderRequest rReq) { + + } + + @Override + public void setActionRequest(ActionRequest rReq) { + + } + + @Override + public boolean isUserInRole(String role) { + return true; + } + + @Override + public Set<String> getAllRoles() { + return new TreeSet<String>(); + } + +} 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-12-01 17:57:28 UTC (rev 1680) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiPage.java 2005-12-01 19:26:21 UTC (rev 1681) @@ -375,8 +375,8 @@ clonedPage.setViewRoles(viewRoles); clonedPage.setEditRoles(editRoles); - // leave tempVariables as they are temp only... - //clonedPage.setTempVariables(tempVariables); + // copy tempVariables as they are temp only... + clonedPage.setTempVariables(new HashMap<String,Object>(tempVariables)); clonedPage.setPermVariables(permVariables); Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/GetRefsFromPagePlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/GetRefsFromPagePlugin.java 2005-12-01 17:57:28 UTC (rev 1680) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/GetRefsFromPagePlugin.java 2005-12-01 19:26:21 UTC (rev 1681) @@ -49,11 +49,11 @@ pageUid = pageUid.substring(1, pageUid.indexOf(']')); - if (!HTMLTranslatorParts.isExternalLink(pageUid) && !HTMLTranslatorParts.isNumber(pageUid)) { + if (!HTMLTranslatorParts.checkImageLink(pageUid) && !HTMLTranslatorParts.isExternalLink(pageUid) && !HTMLTranslatorParts.isNumber(pageUid)) { pageUid = HTMLTranslatorParts.cleanLink(pageUid); - if (pageUid != null) { - refs.add(pageUid); + if (pageUid != null && !HTMLTranslatorParts.isNumber(pageUid) ) { + refs.add(wikiEngine.getRealName(pageUid)); } } } @@ -67,11 +67,11 @@ pageUid = pageUid.substring(pageUid.indexOf('|') + 1, pageUid .indexOf(']')); - if (!HTMLTranslatorParts.isExternalLink(pageUid) && !HTMLTranslatorParts.isNumber(pageUid)) { + if (!HTMLTranslatorParts.checkImageLink(pageUid) && !HTMLTranslatorParts.isExternalLink(pageUid) && !HTMLTranslatorParts.isNumber(pageUid)) { pageUid = HTMLTranslatorParts.cleanLink(pageUid); - if (pageUid != null) { - refs.add(pageUid); + if (pageUid != null && !HTMLTranslatorParts.isNumber(pageUid)) { + refs.add(wikiEngine.getRealName(pageUid)); } } } 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-12-01 17:57:28 UTC (rev 1680) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/HTMLTranslatorParts.java 2005-12-01 19:26:21 UTC (rev 1681) @@ -82,7 +82,7 @@ private String page = "&page="; - private String mediaPatterns; + private static String mediaPatterns; private String imagePath; @@ -426,7 +426,7 @@ } /* a collection of all media formats allowed on wiki */ - private Collection getImagePatterns() { + private static Collection getImagePatterns() { ArrayList patt = new ArrayList(); String imagepattern = mediaPatterns; String[] elem = imagepattern.split(","); @@ -437,7 +437,7 @@ return patt; } - private boolean checkImageLink(String text) { + public static boolean checkImageLink(String text) { ArrayList ptrns = (ArrayList) getImagePatterns(); for (int i = 0; i < ptrns.size(); i++) { if (text.endsWith((String) ptrns.get(i))) { |
From: <jbo...@li...> - 2005-12-01 17:57:37
|
Author: szimano Date: 2005-12-01 12:57:28 -0500 (Thu, 01 Dec 2005) New Revision: 1680 Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CurrentTimePlugin.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ReferringPagesPlugin.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UndefinedPagesPlugin.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UnusedPagesPlugin.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/RefsManipulatingInsidePlugin.java Log: bugs and inside plugins http://jira.jboss.com/jira/browse/JBWIKI-72 Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CurrentTimePlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CurrentTimePlugin.java 2005-12-01 11:20:26 UTC (rev 1679) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CurrentTimePlugin.java 2005-12-01 17:57:28 UTC (rev 1680) @@ -1,7 +1,6 @@ package com.ecyrd.jspwiki.plugin; import java.text.SimpleDateFormat; -import java.util.Calendar; import java.util.Date; import java.util.HashMap; Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ReferringPagesPlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ReferringPagesPlugin.java 2005-12-01 11:20:26 UTC (rev 1679) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ReferringPagesPlugin.java 2005-12-01 17:57:28 UTC (rev 1680) @@ -4,7 +4,6 @@ import java.util.Set; -import org.jboss.wiki.Credentials; import org.jboss.wiki.WikiPage; import org.jboss.wiki.WikiSession; import org.jboss.wiki.plugins.RefsManipulatingInsidePlugin; @@ -17,8 +16,6 @@ Integer max = getNumericValue(attributes, "max"); Integer maxwidth = getNumericValue(attributes, "maxwidth"); - Credentials credentials = (Credentials)wikiSession.getAttribute("credentials"); - if (max == null) max = 10; @@ -30,7 +27,7 @@ String uid = wikiEngine.getUid(wikiPage.getName()); - Set<String> refsFor = getRefsFor(uid, max, credentials, wikiSession); + Set<String> refsFor = getRefsFor(uid, max, wikiSession); for (String ref : refsFor) { stringBuffer.append(getLink(ref, maxwidth)); Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UndefinedPagesPlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UndefinedPagesPlugin.java 2005-12-01 11:20:26 UTC (rev 1679) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UndefinedPagesPlugin.java 2005-12-01 17:57:28 UTC (rev 1680) @@ -3,7 +3,6 @@ import java.util.HashMap; import java.util.Set; -import org.jboss.wiki.Credentials; import org.jboss.wiki.WikiPage; import org.jboss.wiki.WikiSession; import org.jboss.wiki.plugins.RefsManipulatingInsidePlugin; @@ -15,15 +14,13 @@ HashMap<String, String> attributes) { Integer maxwidth = getNumericValue(attributes, "maxwidth"); - Credentials credentials = (Credentials)wikiSession.getAttribute("credentials"); - if ((maxwidth != null) && (maxwidth < 4)) { maxwidth = 4; } StringBuffer stringBuffer = new StringBuffer(); - Set<String> allRefs = getAllRefs(credentials, wikiSession); + Set<String> allRefs = getAllRefs(wikiSession); for (String pageName : allRefs) { Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UnusedPagesPlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UnusedPagesPlugin.java 2005-12-01 11:20:26 UTC (rev 1679) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UnusedPagesPlugin.java 2005-12-01 17:57:28 UTC (rev 1680) @@ -3,7 +3,6 @@ import java.util.HashMap; import java.util.Set; -import org.jboss.wiki.Credentials; import org.jboss.wiki.WikiPage; import org.jboss.wiki.WikiSession; import org.jboss.wiki.plugins.RefsManipulatingInsidePlugin; @@ -15,8 +14,6 @@ HashMap<String, String> attributes) { Integer maxwidth = getNumericValue(attributes, "maxwidth"); - Credentials credentials = (Credentials)wikiSession.getAttribute("credentials"); - if ((maxwidth != null) && (maxwidth < 4)) { maxwidth = 4; } @@ -25,7 +22,7 @@ Set<String> pageNames = wikiEngine.getAllPageNames(); - Set<String> allRefs = getAllRefs(credentials, wikiSession); + Set<String> allRefs = getAllRefs(wikiSession); for (String pageName : pageNames) { 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-12-01 11:20:26 UTC (rev 1679) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiPage.java 2005-12-01 17:57:28 UTC (rev 1680) @@ -375,7 +375,9 @@ clonedPage.setViewRoles(viewRoles); clonedPage.setEditRoles(editRoles); - clonedPage.setTempVariables(tempVariables); + // leave tempVariables as they are temp only... + //clonedPage.setTempVariables(tempVariables); + clonedPage.setPermVariables(permVariables); clonedPage.setLength(getLength()); Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RefsManipulatingInsidePlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RefsManipulatingInsidePlugin.java 2005-12-01 11:20:26 UTC (rev 1679) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RefsManipulatingInsidePlugin.java 2005-12-01 17:57:28 UTC (rev 1680) @@ -2,23 +2,20 @@ import java.util.Set; import java.util.TreeSet; -import java.util.regex.Matcher; -import java.util.regex.Pattern; import org.jboss.logging.Logger; -import org.jboss.wiki.Credentials; -import org.jboss.wiki.SimpleCredentials; +import org.jboss.wiki.AdminSimpleCredentials; import org.jboss.wiki.WikiContext; import org.jboss.wiki.WikiInsidePlugin; import org.jboss.wiki.WikiPage; import org.jboss.wiki.WikiSession; +/**Abstract class for inside plugins that work on references. + * @author tomek + * + */ public abstract class RefsManipulatingInsidePlugin extends WikiInsidePlugin { - private static final String pattern1 = "\\[.+\\]"; - - private static final String pattern2 = "\\[[\\w\\d]+\\|.+\\]"; - private static final String refsWikiType = "refs"; private Logger log = Logger.getLogger(this.getClass()); @@ -32,15 +29,14 @@ } } - protected Set<String> getAllRefs(Credentials credentials, - WikiSession wikiSession) { + protected Set<String> getAllRefs(WikiSession wikiSession) { Set<String> pageNames = wikiEngine.getAllPageNames(); Set<String> allRefs = new TreeSet<String>(); - WikiContext wikiContext = new WikiContext(credentials, wikiEngine - .getWikiType("refs"), wikiSession); + WikiContext wikiContext = new WikiContext(new AdminSimpleCredentials(), wikiEngine + .getWikiType(refsWikiType), wikiSession); for (String pageName : pageNames) { @@ -56,14 +52,14 @@ } protected Set<String> getRefsFor(String uid, Integer max, - Credentials credentials, WikiSession wikiSession) { + WikiSession wikiSession) { Set<String> refsFor = new TreeSet<String>(); Set<String> pageNames = wikiEngine.getAllPageNames(); - WikiContext wikiContext = new WikiContext(credentials, wikiEngine - .getWikiType("refs"), wikiSession); + WikiContext wikiContext = new WikiContext(new AdminSimpleCredentials(), wikiEngine + .getWikiType(refsWikiType), wikiSession); for (String pageName : pageNames) { |
From: <jbo...@li...> - 2005-12-01 11:20:36
|
Author: wrzep Date: 2005-12-01 06:20:26 -0500 (Thu, 01 Dec 2005) New Revision: 1679 Added: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/RevisionStatusPlugin.java trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/TotalRepoSizeStatusPlugin.java Modified: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/SvnStatusPlugin.java Log: revision and repo size plugins http://jira.jboss.com/jira/browse/JBLAB-415 Pawel Added: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/RevisionStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/RevisionStatusPlugin.java 2005-12-01 10:51:58 UTC (rev 1678) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/RevisionStatusPlugin.java 2005-12-01 11:20:26 UTC (rev 1679) @@ -0,0 +1,53 @@ +/* + * JBoss, Home of Professional Open Source + * Copyright 2005, JBoss Inc., and individual contributors as indicated + * by the @authors tag. See the copyright.txt in the distribution for a + * full listing of individual contributors. + * + * This is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * This software 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this software; if not, write to the Free + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA, or see the FSF site: http://www.fsf.org. + */ + +package org.jboss.forge.status.plugins.svn; + +import java.util.Map; + +/** +* @author Pawel Wrzeszcz +*/ + +public class RevisionStatusPlugin extends SvnStatusPlugin { + + protected static String PLUGIN_NAME = "Revision no"; + protected static String PLUGIN_ID = "revision"; + + public String getId() { return PLUGIN_ID; } + public String getName() { return PLUGIN_NAME; } + + public RevisionStatusPlugin() { + super(); + } + @Override + protected int getPluginSpecyficValue(Map projectMap) { + Long commitsTotal = (Long) projectMap.get("revision"); + return commitsTotal.intValue(); + } + + @Override + protected int getPluginSpecyficDefaultValue() { + return 0; + } + +} \ No newline at end of file Modified: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/SvnStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/SvnStatusPlugin.java 2005-12-01 10:51:58 UTC (rev 1678) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/SvnStatusPlugin.java 2005-12-01 11:20:26 UTC (rev 1679) @@ -89,7 +89,7 @@ List repositories = service.getRepositories(repoURL); repositoryMap = (Map) repositories.get(0); - printRepo(repositoryMap); + //printRepo(repositoryMap); return repositoryMap; } Added: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/TotalRepoSizeStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/TotalRepoSizeStatusPlugin.java 2005-12-01 10:51:58 UTC (rev 1678) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/TotalRepoSizeStatusPlugin.java 2005-12-01 11:20:26 UTC (rev 1679) @@ -0,0 +1,53 @@ +/* + * JBoss, Home of Professional Open Source + * Copyright 2005, JBoss Inc., and individual contributors as indicated + * by the @authors tag. See the copyright.txt in the distribution for a + * full listing of individual contributors. + * + * This is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * This software 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this software; if not, write to the Free + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA, or see the FSF site: http://www.fsf.org. + */ + +package org.jboss.forge.status.plugins.svn; + +import java.util.Map; + +/** +* @author Pawel Wrzeszcz +*/ + +public class TotalRepoSizeStatusPlugin extends SvnStatusPlugin { + + protected static String PLUGIN_NAME = "Total File Size"; + protected static String PLUGIN_ID = "total_file_size"; + + public String getId() { return PLUGIN_ID; } + public String getName() { return PLUGIN_NAME; } + + public TotalRepoSizeStatusPlugin() { + super(); + } + @Override + protected int getPluginSpecyficValue(Map projectMap) { + Integer commitsTotal = (Integer) projectMap.get("totalFileSize"); + return commitsTotal.intValue(); + } + + @Override + protected int getPluginSpecyficDefaultValue() { + return 0; + } + +} \ No newline at end of file |
From: <jbo...@li...> - 2005-12-01 10:52:08
|
Author: wrzep Date: 2005-12-01 05:51:58 -0500 (Thu, 01 Dec 2005) New Revision: 1678 Added: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/SvnStatusPlugin.java Removed: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/SvnStatusPlugin.java Modified: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTotalStatusPlugin.java Log: changes made to put all svn plugins into plugins/svn dir http://jira.jboss.com/jira/browse/JBLAB-415 Pawel Deleted: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/SvnStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/SvnStatusPlugin.java 2005-12-01 10:47:09 UTC (rev 1677) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/SvnStatusPlugin.java 2005-12-01 10:51:58 UTC (rev 1678) @@ -1,129 +0,0 @@ -/* - * JBoss, Home of Professional Open Source - * Copyright 2005, JBoss Inc., and individual contributors as indicated - * by the @authors tag. See the copyright.txt in the distribution for a - * full listing of individual contributors. - * - * This is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * This software 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this software; if not, write to the Free - * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA, or see the FSF site: http://www.fsf.org. - */ - -package org.jboss.forge.status.plugins; - -import java.net.MalformedURLException; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import org.jboss.logging.Logger; - -import com.caucho.hessian.client.HessianProxyFactory; - -import hu.midori.kosmos.protocol.SvnService; -//import hu.midori.kosmos.model.SvnRepository; - -/** -* @author Pawel Wrzeszcz -*/ - -public abstract class SvnStatusPlugin extends StatusPlugin { - - private Map<String,Map> projectsMaps; - - private Logger log; - - private final static String KOSMOS_SVN_SERVICE_URL = - "http://localhost:8080/kosmos-server/kosmos-services/svn-service"; - //TODO shoud be parameter in xml config file - - public SvnStatusPlugin() { - super(); - - projectsMaps = new HashMap<String,Map>(); - log = Logger.getLogger(this.getClass()); - } - - protected abstract int getPluginSpecyficValue(Map projectMap); - protected abstract int getPluginSpecyficDefaultValue(); - - protected Map getSvnRepository(String projectId) { - - // Get project repository URL - String repoURL = getRepoURL(projectId); - //System.out.println("repo for project " + projectId + " " + repoURL); - - if (repoURL == null) { - return null; - } - - Map repositoryMap = null; - - // Connect to kosmos service - HessianProxyFactory factory = new HessianProxyFactory(); - SvnService service; - - try { - service = (SvnService) factory.create(SvnService.class, - KOSMOS_SVN_SERVICE_URL); - } catch (MalformedURLException e) { - log.error("Can not connect to kosmos svn service: " + KOSMOS_SVN_SERVICE_URL); - return null; - } - - // Get repository map - List repositories = service.getRepositories(repoURL); - - repositoryMap = (Map) repositories.get(0); - printRepo(repositoryMap); - - return repositoryMap; - } - - private void printRepo(Map repositoryMap) { //debug - if (repositoryMap != null) { - - for (Iterator iter = repositoryMap.keySet().iterator(); iter.hasNext();) { - Object obj = (Object) iter.next(); - System.out.println("object: " + obj + " binding: " + repositoryMap.get(obj)); - } - } - } - - public int getValue(String projectId) { - - if (!projectsMaps.containsKey(projectId)) { - projectsMaps.put(projectId, getProjectMap(projectId)); - } - - Map projectMap = projectsMaps.get(projectId); - - if (projectMap == null) { - return getPluginSpecyficDefaultValue(); - } - - return getPluginSpecyficValue(projectMap); - } - - private String getRepoURL(String projectId) { - String repoURL = projects.getProjectProperty(projectId, "svn-repo"); - return (repoURL == "" ? null : repoURL); - } - - private Map getProjectMap(String projectId) { - return getSvnRepository(projectId); - } - -} Modified: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java 2005-12-01 10:47:09 UTC (rev 1677) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java 2005-12-01 10:51:58 UTC (rev 1678) @@ -20,7 +20,7 @@ * 02110-1301 USA, or see the FSF site: http://www.fsf.org. */ -package org.jboss.forge.status.plugins; +package org.jboss.forge.status.plugins.svn; import java.util.Map; Modified: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java 2005-12-01 10:47:09 UTC (rev 1677) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java 2005-12-01 10:51:58 UTC (rev 1678) @@ -20,7 +20,7 @@ * 02110-1301 USA, or see the FSF site: http://www.fsf.org. */ -package org.jboss.forge.status.plugins; +package org.jboss.forge.status.plugins.svn; import java.util.Map; Modified: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java 2005-12-01 10:47:09 UTC (rev 1677) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java 2005-12-01 10:51:58 UTC (rev 1678) @@ -20,7 +20,7 @@ * 02110-1301 USA, or see the FSF site: http://www.fsf.org. */ -package org.jboss.forge.status.plugins; +package org.jboss.forge.status.plugins.svn; import java.util.Map; Modified: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTotalStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTotalStatusPlugin.java 2005-12-01 10:47:09 UTC (rev 1677) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTotalStatusPlugin.java 2005-12-01 10:51:58 UTC (rev 1678) @@ -20,7 +20,7 @@ * 02110-1301 USA, or see the FSF site: http://www.fsf.org. */ -package org.jboss.forge.status.plugins; +package org.jboss.forge.status.plugins.svn; import java.util.Map; Copied: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/SvnStatusPlugin.java (from rev 1676, trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/SvnStatusPlugin.java) =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/SvnStatusPlugin.java 2005-12-01 10:41:07 UTC (rev 1676) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/SvnStatusPlugin.java 2005-12-01 10:51:58 UTC (rev 1678) @@ -0,0 +1,131 @@ +/* + * JBoss, Home of Professional Open Source + * Copyright 2005, JBoss Inc., and individual contributors as indicated + * by the @authors tag. See the copyright.txt in the distribution for a + * full listing of individual contributors. + * + * This is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * This software 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this software; if not, write to the Free + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA, or see the FSF site: http://www.fsf.org. + */ + +package org.jboss.forge.status.plugins.svn; + +import org.jboss.forge.status.plugins.StatusPlugin; + +import java.net.MalformedURLException; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.jboss.logging.Logger; + +import com.caucho.hessian.client.HessianProxyFactory; + +import hu.midori.kosmos.protocol.SvnService; +//import hu.midori.kosmos.model.SvnRepository; + +/** +* @author Pawel Wrzeszcz +*/ + +public abstract class SvnStatusPlugin extends StatusPlugin { + + private Map<String,Map> projectsMaps; + + private Logger log; + + private final static String KOSMOS_SVN_SERVICE_URL = + "http://localhost:8080/kosmos-server/kosmos-services/svn-service"; + //TODO shoud be parameter in xml config file + + public SvnStatusPlugin() { + super(); + + projectsMaps = new HashMap<String,Map>(); + log = Logger.getLogger(this.getClass()); + } + + protected abstract int getPluginSpecyficValue(Map projectMap); + protected abstract int getPluginSpecyficDefaultValue(); + + protected Map getSvnRepository(String projectId) { + + // Get project repository URL + String repoURL = getRepoURL(projectId); + //System.out.println("repo for project " + projectId + " " + repoURL); + + if (repoURL == null) { + return null; + } + + Map repositoryMap = null; + + // Connect to kosmos service + HessianProxyFactory factory = new HessianProxyFactory(); + SvnService service; + + try { + service = (SvnService) factory.create(SvnService.class, + KOSMOS_SVN_SERVICE_URL); + } catch (MalformedURLException e) { + log.error("Can not connect to kosmos svn service: " + KOSMOS_SVN_SERVICE_URL); + return null; + } + + // Get repository map + List repositories = service.getRepositories(repoURL); + + repositoryMap = (Map) repositories.get(0); + printRepo(repositoryMap); + + return repositoryMap; + } + + private void printRepo(Map repositoryMap) { //debug + if (repositoryMap != null) { + + for (Iterator iter = repositoryMap.keySet().iterator(); iter.hasNext();) { + Object obj = (Object) iter.next(); + System.out.println("object: " + obj + " binding: " + repositoryMap.get(obj)); + } + } + } + + public int getValue(String projectId) { + + if (!projectsMaps.containsKey(projectId)) { + projectsMaps.put(projectId, getProjectMap(projectId)); + } + + Map projectMap = projectsMaps.get(projectId); + + if (projectMap == null) { + return getPluginSpecyficDefaultValue(); + } + + return getPluginSpecyficValue(projectMap); + } + + private String getRepoURL(String projectId) { + String repoURL = projects.getProjectProperty(projectId, "svn-repo"); + return (repoURL == "" ? null : repoURL); + } + + private Map getProjectMap(String projectId) { + return getSvnRepository(projectId); + } + +} |
From: <jbo...@li...> - 2005-12-01 10:47:14
|
Author: wrzep Date: 2005-12-01 05:47:09 -0500 (Thu, 01 Dec 2005) New Revision: 1677 Added: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTotalStatusPlugin.java Removed: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/CommitsTotalStatusPlugin.java Log: new svn plugins http://jira.jboss.com/jira/browse/JBLAB-415 Pawel Deleted: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/CommitsTotalStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/CommitsTotalStatusPlugin.java 2005-12-01 10:41:07 UTC (rev 1676) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/CommitsTotalStatusPlugin.java 2005-12-01 10:47:09 UTC (rev 1677) @@ -1,53 +0,0 @@ -/* - * JBoss, Home of Professional Open Source - * Copyright 2005, JBoss Inc., and individual contributors as indicated - * by the @authors tag. See the copyright.txt in the distribution for a - * full listing of individual contributors. - * - * This is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * This software 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this software; if not, write to the Free - * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA, or see the FSF site: http://www.fsf.org. - */ - -package org.jboss.forge.status.plugins; - -import java.util.Map; - -/** -* @author Pawel Wrzeszcz -*/ - -public class CommitsTotalStatusPlugin extends SvnStatusPlugin { - - protected static String PLUGIN_NAME = "Commits total"; - protected static String PLUGIN_ID = "commitstotal"; - - public String getId() { return PLUGIN_ID; } - public String getName() { return PLUGIN_NAME; } - - public CommitsTotalStatusPlugin() { - super(); - } - @Override - protected int getPluginSpecyficValue(Map projectMap) { - Integer commitsTotal = (Integer) projectMap.get("commitsTotal"); - return commitsTotal.intValue(); - } - - @Override - protected int getPluginSpecyficDefaultValue() { - return 0; - } - -} \ No newline at end of file Added: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java 2005-12-01 10:41:07 UTC (rev 1676) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast31DaysStatusPlugin.java 2005-12-01 10:47:09 UTC (rev 1677) @@ -0,0 +1,53 @@ +/* + * JBoss, Home of Professional Open Source + * Copyright 2005, JBoss Inc., and individual contributors as indicated + * by the @authors tag. See the copyright.txt in the distribution for a + * full listing of individual contributors. + * + * This is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * This software 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this software; if not, write to the Free + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA, or see the FSF site: http://www.fsf.org. + */ + +package org.jboss.forge.status.plugins; + +import java.util.Map; + +/** +* @author Pawel Wrzeszcz +*/ + +public class CommitsLast31DaysStatusPlugin extends SvnStatusPlugin { + + protected static String PLUGIN_NAME = "Commits Last 31 Days"; + protected static String PLUGIN_ID = "commits31"; + + public String getId() { return PLUGIN_ID; } + public String getName() { return PLUGIN_NAME; } + + public CommitsLast31DaysStatusPlugin() { + super(); + } + @Override + protected int getPluginSpecyficValue(Map projectMap) { + Integer commitsTotal = (Integer) projectMap.get("commitsLast31Days"); + return commitsTotal.intValue(); + } + + @Override + protected int getPluginSpecyficDefaultValue() { + return 0; + } + +} \ No newline at end of file Added: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java 2005-12-01 10:41:07 UTC (rev 1676) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsLast7DaysStatusPlugin.java 2005-12-01 10:47:09 UTC (rev 1677) @@ -0,0 +1,53 @@ +/* + * JBoss, Home of Professional Open Source + * Copyright 2005, JBoss Inc., and individual contributors as indicated + * by the @authors tag. See the copyright.txt in the distribution for a + * full listing of individual contributors. + * + * This is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * This software 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this software; if not, write to the Free + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA, or see the FSF site: http://www.fsf.org. + */ + +package org.jboss.forge.status.plugins; + +import java.util.Map; + +/** +* @author Pawel Wrzeszcz +*/ + +public class CommitsLast7DaysStatusPlugin extends SvnStatusPlugin { + + protected static String PLUGIN_NAME = "Commits Last 7 Days"; + protected static String PLUGIN_ID = "commits7"; + + public String getId() { return PLUGIN_ID; } + public String getName() { return PLUGIN_NAME; } + + public CommitsLast7DaysStatusPlugin() { + super(); + } + @Override + protected int getPluginSpecyficValue(Map projectMap) { + Integer commitsTotal = (Integer) projectMap.get("commitsLast7Days"); + return commitsTotal.intValue(); + } + + @Override + protected int getPluginSpecyficDefaultValue() { + return 0; + } + +} \ No newline at end of file Added: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java 2005-12-01 10:41:07 UTC (rev 1676) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTodayStatusPlugin.java 2005-12-01 10:47:09 UTC (rev 1677) @@ -0,0 +1,53 @@ +/* + * JBoss, Home of Professional Open Source + * Copyright 2005, JBoss Inc., and individual contributors as indicated + * by the @authors tag. See the copyright.txt in the distribution for a + * full listing of individual contributors. + * + * This is free software; you can redistribute it and/or modify it + * under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * This software 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this software; if not, write to the Free + * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + * 02110-1301 USA, or see the FSF site: http://www.fsf.org. + */ + +package org.jboss.forge.status.plugins; + +import java.util.Map; + +/** +* @author Pawel Wrzeszcz +*/ + +public class CommitsTodayStatusPlugin extends SvnStatusPlugin { + + protected static String PLUGIN_NAME = "Commits Today"; + protected static String PLUGIN_ID = "commitstoday"; + + public String getId() { return PLUGIN_ID; } + public String getName() { return PLUGIN_NAME; } + + public CommitsTodayStatusPlugin() { + super(); + } + @Override + protected int getPluginSpecyficValue(Map projectMap) { + Integer commitsTotal = (Integer) projectMap.get("commitsToday"); + return commitsTotal.intValue(); + } + + @Override + protected int getPluginSpecyficDefaultValue() { + return 0; + } + +} \ No newline at end of file Copied: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/svn/CommitsTotalStatusPlugin.java (from rev 1640, trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/CommitsTotalStatusPlugin.java) |
From: <jbo...@li...> - 2005-12-01 10:41:14
|
Author: wrzep Date: 2005-12-01 05:41:07 -0500 (Thu, 01 Dec 2005) New Revision: 1676 Modified: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/SvnStatusPlugin.java Log: new svn plugins http://jira.jboss.com/jira/browse/JBLAB-415 Pawel Modified: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/SvnStatusPlugin.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/SvnStatusPlugin.java 2005-12-01 10:14:15 UTC (rev 1675) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/plugins/SvnStatusPlugin.java 2005-12-01 10:41:07 UTC (rev 1676) @@ -87,7 +87,7 @@ List repositories = service.getRepositories(repoURL); repositoryMap = (Map) repositories.get(0); - //printRepo(repositoryMap); + printRepo(repositoryMap); return repositoryMap; } |
From: <jbo...@li...> - 2005-12-01 10:14:21
|
Author: wrzep Date: 2005-12-01 05:14:15 -0500 (Thu, 01 Dec 2005) New Revision: 1675 Modified: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/Status.java Log: cleanup in Status.java http://jira.jboss.com/jira/browse/JBLAB-415 Pawel Modified: trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/Status.java =================================================================== --- trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/Status.java 2005-11-30 22:12:16 UTC (rev 1674) +++ trunk/forge/portal-extensions/forge-status/src/java/org/jboss/forge/status/Status.java 2005-12-01 10:14:15 UTC (rev 1675) @@ -43,8 +43,6 @@ import org.w3c.dom.NodeList; import org.jboss.forge.status.plugins.StatusPlugin; -import org.jboss.forge.status.plugins.CommitsTotalStatusPlugin; - import org.jboss.logging.Logger; /** @@ -208,7 +206,7 @@ * but only those with names included in <code>nodeNames</code> Set */ private Set<Node> getChildNodesSet(Node root, Set<String> nodesNames) { - HashSet ret = new HashSet<Node>(); + HashSet<Node> ret = new HashSet<Node>(); NodeList list = root.getChildNodes(); for (int i = 0; i < list.getLength(); i++) { @@ -227,7 +225,7 @@ * Map binds child Nodes names with appropriate Nodes. */ private Map<String,Node> getChildNodesMap(Node root, Set<String> nodesNames) { - HashMap ret = new HashMap<String,Node>(); + HashMap<String,Node> ret = new HashMap<String,Node>(); NodeList list = root.getChildNodes(); for (int i = 0; i < list.getLength(); i++) { |
Author: szimano Date: 2005-11-30 17:12:16 -0500 (Wed, 30 Nov 2005) New Revision: 1674 Added: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ImagePlugin.java Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiInsidePlugins.xml trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/InsidePluginExcecutor.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiInsidePlugin.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/HTMLTranslatorParts.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RefsManipulatingInsidePlugin.java Log: ImagePlugin http://jira.jboss.com/jira/browse/JBWIKI-72 and bugs... and logs Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiInsidePlugins.xml =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiInsidePlugins.xml 2005-11-30 21:25:45 UTC (rev 1673) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiInsidePlugins.xml 2005-11-30 22:12:16 UTC (rev 1674) @@ -7,4 +7,5 @@ <entry key="IndexPlugin">org.jboss.wiki.plugins.IndexInsidePlugin</entry> <entry key="CurrentTimePlugin">com.ecyrd.jspwiki.plugin.CurrentTimePlugin</entry> <entry key="Counter">com.ecyrd.jspwiki.plugin.CounterPlugin</entry> +<entry key="Image">com.ecyrd.jspwiki.plugin.ImagePlugin</entry> </properties> \ No newline at end of file Added: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ImagePlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ImagePlugin.java 2005-11-30 21:25:45 UTC (rev 1673) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ImagePlugin.java 2005-11-30 22:12:16 UTC (rev 1674) @@ -0,0 +1,81 @@ +package com.ecyrd.jspwiki.plugin; + +import java.util.HashMap; + +import org.jboss.wiki.WikiInsidePlugin; +import org.jboss.wiki.WikiPage; +import org.jboss.wiki.WikiSession; +import org.jboss.wiki.plugins.HTMLTranslatorParts; + +public class ImagePlugin extends WikiInsidePlugin { + + @Override + public String process(WikiPage wikiPage, WikiSession wikiSession, + HashMap<String, String> attributes) { + /* + * src = Image source. This can either be a full URL (http://...) or a WikiAttachment? name. Required. + * align = left|right|center. The image alignment. + * height = integer. Force the height of the image. + * width = integer. Force the width of the image. + * alt = alt text. The alt text of an image. This is very useful when doing + * pages that can be navigated with text-only browsers + * caption = caption text. The text that should be shown as a caption under the image. + * link = hyperlink. A hyperlink (http://...). In the future, you can also use WikiPages?. + * border = integer. Size of the image border. + * style = style info. Any style markup you would like to apply to the table surrounding the image. + * class = class name. Redefine the default class for this image, which is "imageplugin". + */ + + String src = attributes.get("src"); + + if (src == null) { + return "<i>Image Plugin Error: \"src\" value has to be set !</i>"; + } + + if (!HTMLTranslatorParts.isExternalLink(src)) { + src = wikiSession.getAttribute("hostURL") + "/wiki/" + src; + } + + String align = attributes.get("align"); + String height = attributes.get("height"); + String width = attributes.get("width"); + String alt = attributes.get("alt"); + String caption = attributes.get("caption"); + String link = attributes.get("link"); + String border = attributes.get("border"); + String style = attributes.get("style"); + String classAtr = attributes.get("class"); + + StringBuffer imageLink = new StringBuffer(); + + imageLink.append((caption != null) ? "<table><tr><td>" : "") + .append((link != null) ? "<a href=\""+link+"\">" : "") + .append("<img ") + .append("src=\"") + .append(src) + .append("\" ") + .append((align != null) ? "align"+align+"\" " : "") + .append((height != null) ? "height=\""+height+"\" " : "") + .append((width != null) ? "width=\""+width+"\" " : "") + .append((alt != null) ? "alt=\""+alt+"\" " : "") + .append((border != null) ? "border=\""+border+"\" " : "") + .append((style != null) ? "style=\""+style+"\" " : "") + .append("class=\""+((classAtr != null) ? classAtr : "imageplugin") + "\" ") + .append((link != null) ? "</a>" : "") + .append((caption != null) ? "</td></tr><tr><td style=\"text-align: center\">"+caption+"</td></tr></table>" : ""); + + return imageLink.toString(); + } + + @Override + public void init() { + // TODO Auto-generated method stub + + } + + @Override + public boolean processContent() { + return false; + } + +} Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/InsidePluginExcecutor.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/InsidePluginExcecutor.java 2005-11-30 21:25:45 UTC (rev 1673) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/InsidePluginExcecutor.java 2005-11-30 22:12:16 UTC (rev 1674) @@ -9,6 +9,7 @@ import java.util.regex.Pattern; import org.jboss.logging.Logger; +import org.jboss.wiki.plugins.HTMLTranslatorParts; public class InsidePluginExcecutor { @@ -110,8 +111,8 @@ if (plugin != null) { HashMap<String, String> attributes = extractAttribs(localPluginLink); - return plugin.process(wikiPage, wikiSession, - attributes); + return (plugin.processContent() ? HTMLTranslatorParts.pagePartRegexStart : "") + plugin.process(wikiPage, wikiSession, + attributes) + (plugin.processContent() ? HTMLTranslatorParts.pagePartRegexEnd : ""); } else return "''INSIDE PLUGIN ERROR: There is no plugin: " + pluginLink Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiInsidePlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiInsidePlugin.java 2005-11-30 21:25:45 UTC (rev 1673) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiInsidePlugin.java 2005-11-30 22:12:16 UTC (rev 1674) @@ -122,6 +122,13 @@ this.name = name; } + /**Wheather to postprocess what WikiInsidePlugin producess. + * @return True if yes false if not + */ + public boolean processContent() { + return true; + } + protected Integer getNumericValue(HashMap<String, String> attributes, String valName) { String val = attributes.get(valName); 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-11-30 21:25:45 UTC (rev 1673) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiPage.java 2005-11-30 22:12:16 UTC (rev 1674) @@ -375,6 +375,9 @@ clonedPage.setViewRoles(viewRoles); clonedPage.setEditRoles(editRoles); + clonedPage.setTempVariables(tempVariables); + clonedPage.setPermVariables(permVariables); + clonedPage.setLength(getLength()); return clonedPage; @@ -476,7 +479,7 @@ } public boolean isEditable(Credentials user) { - log.info("Editable: "+user.isAdmin() + " " + editable + " " + checkRoles(user, editRoles)); + log.debug("Editable: "+user.isAdmin() + " " + editable + " " + checkRoles(user, editRoles)); return user.isAdmin() || (editable && checkRoles(user, editRoles)); } @@ -489,7 +492,7 @@ public boolean isViewable(Credentials user) { - log.info("Viewable: "+ user.isAdmin() + " " + viewable + " " + checkRoles(user, viewRoles)); + log.debug("Viewable: "+ user.isAdmin() + " " + viewable + " " + checkRoles(user, viewRoles)); return user.isAdmin() || (viewable && checkRoles(user, viewRoles)); } @@ -610,4 +613,12 @@ } } + + public void setPermVariables(HashMap<String, Object> permVariables) { + this.permVariables = permVariables; + } + + public void setTempVariables(HashMap<String, Object> tempVariables) { + this.tempVariables = tempVariables; + } } 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-11-30 21:25:45 UTC (rev 1673) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/HTMLTranslatorParts.java 2005-11-30 22:12:16 UTC (rev 1674) @@ -811,7 +811,7 @@ if (isPluginLink(link)) { //return null; // we do not include plugin links for now if (executePlugins ) { - return HTMLTranslatorParts.pagePartRegexStart+wikiEngine.executeInsidePlugin(link, wPage, wikiSession)+HTMLTranslatorParts.pagePartRegexEnd; + return wikiEngine.executeInsidePlugin(link, wPage, wikiSession); } else { return link; Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RefsManipulatingInsidePlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RefsManipulatingInsidePlugin.java 2005-11-30 21:25:45 UTC (rev 1673) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RefsManipulatingInsidePlugin.java 2005-11-30 22:12:16 UTC (rev 1674) @@ -5,6 +5,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jboss.logging.Logger; import org.jboss.wiki.Credentials; import org.jboss.wiki.SimpleCredentials; import org.jboss.wiki.WikiContext; @@ -12,14 +13,16 @@ import org.jboss.wiki.WikiPage; import org.jboss.wiki.WikiSession; +public abstract class RefsManipulatingInsidePlugin extends WikiInsidePlugin { -public abstract class RefsManipulatingInsidePlugin extends WikiInsidePlugin { - private static final String pattern1 = "\\[.+\\]"; + private static final String pattern2 = "\\[[\\w\\d]+\\|.+\\]"; - + private static final String refsWikiType = "refs"; + private Logger log = Logger.getLogger(this.getClass()); + protected String getLink(String pageName, Integer maxwidth) { if ((maxwidth != null) && (pageName.length() > maxwidth)) { return "[" + pageName.substring(0, maxwidth - 3) + "...|" @@ -28,46 +31,51 @@ return "[" + pageName + "]\\\\"; } } - - protected Set<String> getAllRefs(Credentials credentials, WikiSession wikiSession) { - + + protected Set<String> getAllRefs(Credentials credentials, + WikiSession wikiSession) { + Set<String> pageNames = wikiEngine.getAllPageNames(); - + Set<String> allRefs = new TreeSet<String>(); - WikiContext wikiContext = new WikiContext(credentials, wikiEngine.getWikiType("refs"), wikiSession); - + WikiContext wikiContext = new WikiContext(credentials, wikiEngine + .getWikiType("refs"), wikiSession); + for (String pageName : pageNames) { WikiPage page = wikiEngine.getByName(pageName, wikiContext); - Set<String> refs = (Set<String>)page.getPermVariable("refs"); - - allRefs.addAll(refs); + Set<String> refs = (Set<String>) page.getPermVariable("refs"); + + if (refs != null) + allRefs.addAll(refs); } return allRefs; } - - protected Set<String> getRefsFor(String uid, Integer max, Credentials credentials, WikiSession wikiSession) { - + + protected Set<String> getRefsFor(String uid, Integer max, + Credentials credentials, WikiSession wikiSession) { + Set<String> refsFor = new TreeSet<String>(); - + Set<String> pageNames = wikiEngine.getAllPageNames(); - - WikiContext wikiContext = new WikiContext(credentials, wikiEngine.getWikiType("refs"), wikiSession); - + + WikiContext wikiContext = new WikiContext(credentials, wikiEngine + .getWikiType("refs"), wikiSession); + for (String pageName : pageNames) { - + WikiPage page = wikiEngine.getByName(pageName, wikiContext); - - Set<String> refs = (Set<String>)page.getPermVariable("refs"); - - if (refs.contains(uid)) { + + Set<String> refs = (Set<String>) page.getPermVariable("refs"); + + if (refs != null && refs.contains(uid)) refsFor.add(page.getName()); - } + } - + return refsFor; } |
From: <jbo...@li...> - 2005-11-30 21:26:30
|
Author: wrzep Date: 2005-11-30 16:25:45 -0500 (Wed, 30 Nov 2005) New Revision: 1673 Modified: trunk/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/PodcastDescriptor.java Log: shold finally help with "enclosure disappeared" bug http://jira.jboss.com/jira/browse/JBLAB-540 Pawel Modified: trunk/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/PodcastDescriptor.java =================================================================== --- trunk/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/PodcastDescriptor.java 2005-11-30 20:57:30 UTC (rev 1672) +++ trunk/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/PodcastDescriptor.java 2005-11-30 21:25:45 UTC (rev 1673) @@ -52,7 +52,7 @@ if ((root.getNodeType() == Node.ELEMENT_NODE) && (root.getNodeName().equals(Podcast.PODCAST_ELEMENT))) { - podcast = new Podcast(portalName, root); + podcast = new Podcast(serverAdress, root); } fillContext(); |
From: <jbo...@li...> - 2005-11-30 20:57:36
|
Author: unibrew Date: 2005-11-30 15:57:30 -0500 (Wed, 30 Nov 2005) New Revision: 1672 Modified: trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DomToXmlTransformer.java trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java Log: [DOWNLOADCOUNTERS] counters.xml will look better now ;) Modified: trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DomToXmlTransformer.java =================================================================== --- trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DomToXmlTransformer.java 2005-11-30 20:48:34 UTC (rev 1671) +++ trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DomToXmlTransformer.java 2005-11-30 20:57:30 UTC (rev 1672) @@ -34,6 +34,7 @@ /** * @author adamw + * @author Ryszard Kozmik * A helper class to transform DOM nodes to their string representations * in XML. */ @@ -47,7 +48,8 @@ public String transformNode(Node root) throws TransformerException { TransformerFactory tFactory = TransformerFactory.newInstance(); Transformer transformer = tFactory.newTransformer();; - + transformer.setOutputProperty(OutputKeys.INDENT,"yes"); + transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "4"); transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes"); ByteArrayOutputStream bos = new ByteArrayOutputStream(); Modified: trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java =================================================================== --- trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java 2005-11-30 20:48:34 UTC (rev 1671) +++ trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java 2005-11-30 20:57:30 UTC (rev 1672) @@ -340,7 +340,7 @@ createDocument(doc); DomToXmlTransformer xht = new DomToXmlTransformer(); - + // Getting string containing whole xml. String xmlString = xht.transformNode(doc.getDocumentElement()); @@ -367,7 +367,7 @@ for (String link:keys) { temporary = downloadCounters.get(link); Node newCounter = doc.createElement(COUNTER); - + Node newLink = doc.createElement(LINK); Node newLinkText = doc.createTextNode(link); newLink.appendChild(newLinkText); @@ -379,7 +379,7 @@ Node newValue = doc.createElement(VALUE); Node newValueText = doc.createTextNode(Long.toString(temporary.getValue())); newValue.appendChild(newValueText); - + newCounter.appendChild(newLink); newCounter.appendChild(newProjectId); newCounter.appendChild(newValue); |
Author: szimano Date: 2005-11-30 15:48:34 -0500 (Wed, 30 Nov 2005) New Revision: 1671 Modified: trunk/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/ForgeConfWatcher.java trunk/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/Freezone.java trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/Credentials.java 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/JBossPortalCredentials.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/ShotokuDataSource.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/SimpleCredentials.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/exceptions/DataSourceException.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/exceptions/WikiException.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/test/java/org/jboss/wiki/test/WikiTest.java trunk/forge/portal-extensions/maven.xml Log: Roles for viewing/editing pages http://jira.jboss.com/jira/browse/JBWIKI-3 Modified login forcer to not to break if there is no forcelogin.xml Modified maven's help Modified: trunk/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/ForgeConfWatcher.java =================================================================== --- trunk/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/ForgeConfWatcher.java 2005-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/ForgeConfWatcher.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -7,8 +7,12 @@ import org.jboss.forge.common.service.NodeWatcher; import org.jboss.logging.Logger; +import org.jboss.shotoku.ContentManager; import org.jboss.shotoku.Node; +import org.jboss.shotoku.aop.Inject; import org.jboss.shotoku.aop.NodeInject; +import org.jboss.shotoku.exceptions.RepositoryException; +import org.jboss.shotoku.exceptions.ResourceDoesNotExist; import org.w3c.dom.Document; import org.w3c.dom.NodeList; @@ -22,17 +26,26 @@ private Logger log = Logger.getLogger(this.getClass()); - @NodeInject("/default/freezone/forcelogin.xml") + @Inject + private ContentManager contentManager; + private Node configuration; public Object init(String arg0) { - lastNodeModification = configuration.getLastModification(); + try { + configuration = contentManager.getRootDirectory().getNode("/default/freezone/forcelogin.xml"); + lastNodeModification = configuration.getLastModification(); + } catch (RepositoryException e) { + configuration = null; + } catch (ResourceDoesNotExist e) { + configuration = null; + } return parseConfiguration(); } public Object nodeUpdate(String arg0, Object arg1) { - if (lastNodeModification < configuration.getLastModification()) { + if (configuration != null && lastNodeModification < configuration.getLastModification()) { lastNodeModification = configuration.getLastModification(); return parseConfiguration(); } @@ -40,6 +53,9 @@ } private List<String> parseConfiguration() { + if (configuration == null) + return null; + try { List<String> loggedInOnly = new ArrayList<String>(); Modified: trunk/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/Freezone.java =================================================================== --- trunk/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/Freezone.java 2005-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/forge-freezone/src/java/org/jboss/forge/projects/freezone/Freezone.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -212,7 +212,7 @@ loggedInOnly = (List<String>) ForgeHelper.getForgeManagement() .getFromCache("", ForgeConfWatcher.class.getName()); - return (request.getUser() != null) || (!loggedInOnly.contains(cmsPath)); + return (request.getUser() != null) || (loggedInOnly != null && !loggedInOnly.contains(cmsPath)); } @SuppressWarnings("unchecked") 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-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -320,7 +320,7 @@ pageToShow = wikiEngine.getByName(wikiPage, editWikiContext); - if ((pageToShow != null) && (!pageToShow.isEditable())) { + if ((pageToShow != null) && (!pageToShow.isEditable(credentials))) { if (!credentials.isAdmin()) { showPage = true; } @@ -457,9 +457,9 @@ rReq.setAttribute("defaultPage", defaultPage); - rReq.setAttribute("isEditable", pageToShow.isEditable()); + rReq.setAttribute("isEditable", pageToShow.isEditable(credentials)); - rReq.setAttribute("isViewable", pageToShow.isViewable()); + rReq.setAttribute("isViewable", pageToShow.isViewable(credentials)); rReq.setAttribute("isAdmin", credentials.isAdmin()); Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/Credentials.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/Credentials.java 2005-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/Credentials.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -21,6 +21,8 @@ */ package org.jboss.wiki; +import java.util.Set; + import javax.portlet.ActionRequest; import javax.portlet.RenderRequest; @@ -61,4 +63,15 @@ * @param rReq ActionRequest to set. */ public abstract void setActionRequest(ActionRequest rReq); + + /**Checks if user is in given role. + * @param role to check + * @return True if is in role, false otherwise. + */ + public abstract boolean isUserInRole(String role); + + /**Get Set of ALL role names. + * @return Set of role names or empty Set if there are no roles + */ + public abstract Set<String> getAllRoles(); } 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-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/FileDataSource.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -34,6 +34,7 @@ import java.util.TreeSet; import org.jboss.logging.Logger; +import org.jboss.wiki.exceptions.DataSourceException; import org.jboss.wiki.exceptions.PageRenamingException; /** @@ -447,6 +448,87 @@ } } + + public void saveRolesSet(String uid, Set<String> roles, int action) throws DataSourceException { + File rolesFile; + try { + rolesFile = getRolesFile(uid, action); + + if (rolesFile == null) + throw new DataSourceException("Wrong action number"); + + } catch (IOException e) { + throw new DataSourceException(e); + } + + FileOutputStream fos = null; + try { + fos = new FileOutputStream(rolesFile); + + Properties roleProps = new Properties(); + + int i = 1; + + for (String roleName : roles) { + roleProps.setProperty("Role."+i++, roleName); + } + + roleProps.store(fos, SAVE_COMMENT); + + fos.close(); + } catch (FileNotFoundException e) { + throw new DataSourceException(e); + } catch (IOException e) { + try { + fos.close(); + } catch (IOException e1) { + throw new DataSourceException(e); + } + throw new DataSourceException(e); + } + + } + + private File getRolesFile(String uid, int action) throws IOException { + String fileName = (action == MediaDataSource.EDITABLE) ? "editRoles" : (action == MediaDataSource.VIEWABLE) ? "viewRoles" : null; + + if (fileName == null) + return null; + + File rolesFile = new File(pathToMedia + "/OLD/" + uid + "/" + fileName + ".properties"); + + if (!rolesFile.exists()) { + rolesFile.createNewFile(); + } + + return rolesFile; + } + + private Set<String> getRoles(String uid, int action) throws IOException { + Set<String> set = new TreeSet<String>(); + + File rolesFile = getRolesFile(uid, action); + + if (rolesFile == null) + return null; + + FileInputStream rolesFileIs = new FileInputStream(rolesFile); + + Properties roleProps = new Properties(); + + roleProps.load(rolesFileIs); + + int i = 1; + + while (roleProps.getProperty("Role."+i) != null) { + set.add(roleProps.getProperty("Role."+i)); + i++; + } + + rolesFileIs.close(); + + return set; + } public WikiPage getPage(String pageName) { // log.info("[WIKI:FileDataSource]: Getting new page: " + @@ -495,6 +577,17 @@ (pageMods & EDITABLE) == EDITABLE); page.setLength(pageFile.length()); + + try { + page.setEditRoles(getRoles(pageName, EDITABLE)); + } catch (IOException e) { + log.error("Couldn't read edit roles for page: "+pageName, e); + } + try { + page.setViewRoles(getRoles(pageName, VIEWABLE)); + } catch (IOException e) { + log.error("Couldn't read view roles for page: "+pageName, e); + } } } Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/JBossPortalCredentials.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/JBossPortalCredentials.java 2005-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/JBossPortalCredentials.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -22,9 +22,17 @@ package org.jboss.wiki; +import java.util.Set; +import java.util.TreeSet; + +import javax.naming.InitialContext; +import javax.naming.NamingException; import javax.portlet.ActionRequest; import javax.portlet.RenderRequest; +import org.jboss.portal.core.model.Role; +import org.jboss.portal.core.modules.ModuleException; +import org.jboss.portal.core.modules.RoleModule; import org.jboss.portlet.JBossActionRequest; import org.jboss.portlet.JBossRenderRequest; @@ -34,12 +42,17 @@ private String name = null; private boolean logedIn = false; private boolean isAdmin = false; + private Set<String> roles; + private Set<Role> allRoles; + private static final String roleModulesCtx = "java:portal/RoleModule"; + public JBossPortalCredentials() { } public void setRenderRequest(RenderRequest rReq) { + if (rReq instanceof JBossRenderRequest) { JBossRenderRequest jrReq = (JBossRenderRequest)rReq; @@ -47,10 +60,24 @@ name = jrReq.getUser().getUserName(); logedIn = true; isAdmin = jrReq.getUser().getRoleNames().contains(adminRoleName); + roles = jrReq.getUser().getRoleNames(); } else { name = "Unknown"; } + + InitialContext initialContext; + try { + initialContext = new InitialContext(); + RoleModule roleModule = (RoleModule)initialContext.lookup(roleModulesCtx); + allRoles = roleModule.findRoles(); + } catch (NamingException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } catch (ModuleException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } } else { @@ -66,6 +93,7 @@ name = jrReq.getUser().getUserName(); logedIn = true; isAdmin = jrReq.getUser().getRoleNames().contains(adminRoleName); + roles = jrReq.getUser().getRoleNames(); } } @@ -84,4 +112,23 @@ return logedIn; } + @Override + public boolean isUserInRole(String role) { + if (roles != null) + return roles.contains(role); + else + return false; + } + + @Override + public Set<String> getAllRoles() { + Set<String> roleNames = new TreeSet<String>(); + + for (Role role : allRoles) { + roleNames.add(role.getName()); + } + + return roleNames; + } + } 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-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/MediaDataSource.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -23,6 +23,8 @@ import java.util.Set; +import org.jboss.wiki.exceptions.DataSourceException; + /** * @author <a href="mailto:tom...@jb...">Tomasz Szymanski</a> * @@ -205,4 +207,11 @@ * @param wikiEngine */ public void setWikiEngine(WikiEngine wikiEngine); + + /**Saves roles for given page. + * @param uid Page uid to save roles to + * @param roles Roles to save + * @param action can be MediaDataSource.EDITABLE or MediaDataSource.VIEWABLE + */ + public void saveRolesSet(String uid, Set<String> roles, int action) throws DataSourceException; } Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/ShotokuDataSource.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/ShotokuDataSource.java 2005-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/ShotokuDataSource.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -38,6 +38,7 @@ import org.jboss.shotoku.exceptions.RepositoryException; import org.jboss.shotoku.exceptions.ResourceAlreadyExists; import org.jboss.shotoku.exceptions.ResourceDoesNotExist; +import org.jboss.wiki.exceptions.DataSourceException; import org.jboss.wiki.exceptions.PageRenamingException; /** @@ -1523,4 +1524,9 @@ saveDictionary(); } + + public void saveRolesSet(String uid, Set<String> roles, int action) throws DataSourceException { + // TODO Auto-generated method stub + + } } Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/SimpleCredentials.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/SimpleCredentials.java 2005-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/SimpleCredentials.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -21,6 +21,9 @@ */ package org.jboss.wiki; +import java.util.Set; +import java.util.TreeSet; + import javax.portlet.ActionRequest; import javax.portlet.RenderRequest; @@ -53,9 +56,18 @@ @Override public void setActionRequest(ActionRequest rReq) { - // TODO Auto-generated method stub - + // Do nothing } + @Override + public boolean isUserInRole(String role) { + return false; + } + @Override + public Set<String> getAllRoles() { + return new TreeSet<String>(); + } + + } 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-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiEngine.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -38,6 +38,8 @@ import javax.portlet.ActionRequest; import javax.portlet.RenderRequest; + +import org.jboss.wiki.exceptions.DataSourceException; import org.jboss.wiki.exceptions.PageNotEditedException; import org.jboss.wiki.exceptions.PageRenamingException; import org.jboss.wiki.exceptions.WikiException; @@ -186,8 +188,8 @@ } } - if ((wikiContext != null) && (ret != null) && (!ret.isViewable()) - && (!wikiContext.getUser().isAdmin())) { + if (((wikiContext != null) && (ret != null) && (!ret.isViewable(wikiContext.getUser())) + && (!wikiContext.getUser().isAdmin()))) { s.release(); return new WikiPage(realPageName, null, "I am sorry, but you are not allowed to see this page", 0, @@ -945,4 +947,8 @@ return cred; } + + public void saveRolesSet(WikiPage page, Set<String> roles, int action) throws DataSourceException { + mediaDataSource.saveRolesSet(getUid(page.getName()), roles, action); + } } 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-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiPage.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -28,8 +28,11 @@ import java.util.HashMap; import java.util.HashSet; import java.util.Set; +import java.util.TreeSet; + import org.jboss.logging.Logger; +import org.jboss.wiki.exceptions.DataSourceException; import org.jboss.wiki.exceptions.EditSessionExpired; import org.jboss.wiki.exceptions.PageNotEditedException; @@ -146,6 +149,10 @@ private boolean editable; private boolean viewable; + + private Set<String> editRoles; + + private Set<String> viewRoles; public WikiPage(String pageName, Credentials pageAuthor, String pageContent, int pageLastVersion, int thisVersion, @@ -155,6 +162,9 @@ tempVariables = new HashMap<String, Object>(); permVariables = new HashMap<String, Object>(); + editRoles = new TreeSet<String>(); + viewRoles = new TreeSet<String>(); + name = pageName; lastAuthor = pageAuthor; this.pageContent = pageContent; @@ -360,8 +370,11 @@ public Object clone() throws CloneNotSupportedException { WikiPage clonedPage = new WikiPage(getName(), getLastAuthor(), getPageContent(), getLastVersion(), getVersion(), - getEditDate(), wikiEngine,isViewable(),isEditable()); + getEditDate(), wikiEngine,viewable,editable); + clonedPage.setViewRoles(viewRoles); + clonedPage.setEditRoles(editRoles); + clonedPage.setLength(getLength()); return clonedPage; @@ -462,24 +475,37 @@ return wikiEngine.getAttachmentsSet(this); } - public boolean isEditable() { - return editable; + public boolean isEditable(Credentials user) { + log.info("Editable: "+user.isAdmin() + " " + editable + " " + checkRoles(user, editRoles)); + + return user.isAdmin() || (editable && checkRoles(user, editRoles)); } public void setEditable(boolean editable) { this.editable = editable; - wikiEngine.setPageMod(getName(), ((isViewable()) ? MediaDataSource.VIEWABLE : 0) + ((isEditable()) ? MediaDataSource.EDITABLE : 0)); + wikiEngine.setPageMod(getName(), ((viewable) ? MediaDataSource.VIEWABLE : 0) + ((editable) ? MediaDataSource.EDITABLE : 0)); } - public boolean isViewable() { + public boolean isViewable(Credentials user) { + + log.info("Viewable: "+ user.isAdmin() + " " + viewable + " " + checkRoles(user, viewRoles)); + + return user.isAdmin() || (viewable && checkRoles(user, viewRoles)); + } + + public boolean isViewableForAll() { return viewable; } + + public boolean isEditableForAll() { + return editable; + } public void setViewable(boolean viewable) { this.viewable = viewable; - wikiEngine.setPageMod(getName(), ((isViewable()) ? MediaDataSource.VIEWABLE : 0) + ((isEditable()) ? MediaDataSource.EDITABLE : 0)); + wikiEngine.setPageMod(getName(), ((viewable) ? MediaDataSource.VIEWABLE : 0) + ((editable) ? MediaDataSource.EDITABLE : 0)); } public void addExpiredSessionId(Integer id) throws PageNotEditedException { @@ -518,4 +544,70 @@ public void removePermVariable(String key) { permVariables.remove(key); } + + public void setEditRoles(Set<String> editRoles) { + this.editRoles = editRoles; + } + + public void setViewRoles(Set<String> viewRoles) { + this.viewRoles = viewRoles; + } + + public boolean containsEditRole(String role) { + return editRoles.contains(role); + } + + public boolean containsViewRole(String role) { + return viewRoles.contains(role); + } + + private boolean checkRoles(Credentials user, Set<String> roleSet) { + // if roles are empty - return true + if (roleSet == null || roleSet.isEmpty()) { + return true; + } + + // check if user is in any role + for (String role : roleSet) { + if (user.isUserInRole(role)) { + return true; + } + } + + //nothing found - return false + return false; + } + + public void switchEditRole(String role) { + if (editRoles.contains(role)) { + editRoles.remove(role); + } + else + editRoles.add(role); + + log.info("EDIT ROLES "+editRoles.isEmpty()); + + try { + wikiEngine.saveRolesSet(this, editRoles, MediaDataSource.EDITABLE); + } catch (DataSourceException e) { + log.error("Couldn't save edit roles for page: "+getName(), e); + } + } + + public void switchViewRole(String role) { + if (viewRoles.contains(role)) { + viewRoles.remove(role); + } + else + viewRoles.add(role); + + log.info("VIEW ROLES "+viewRoles.isEmpty()); + + try { + wikiEngine.saveRolesSet(this, viewRoles, MediaDataSource.VIEWABLE); + } catch (DataSourceException e) { + log.error("Couldn't save view roles for page: "+getName(), e); + } + + } } Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/exceptions/DataSourceException.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/exceptions/DataSourceException.java 2005-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/exceptions/DataSourceException.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -9,4 +9,8 @@ public DataSourceException(String msg) { super(msg); } + + public DataSourceException(Exception e) { + super(e); + } } Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/exceptions/WikiException.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/exceptions/WikiException.java 2005-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/exceptions/WikiException.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -30,4 +30,8 @@ public WikiException (String msg) { super(msg); } + + public WikiException(Exception e) { + super(e); + } } 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-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/AdminConsolePlugin.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -42,8 +42,8 @@ String actionURL = (String) wikiSession.getAttribute("actionURL"); String errorMsg = ""; - boolean editable = wikiPage.isEditable(); - boolean viewable = wikiPage.isViewable(); + boolean editable = wikiPage.isEditableForAll(); + boolean viewable = wikiPage.isViewableForAll(); if (wikiSession.getAttribute("var1") != null) { @@ -55,14 +55,18 @@ editingPage.setEditable(Boolean .valueOf((String) wikiSession .getAttribute("var2"))); - editable = editingPage.isEditable(); + editable = editingPage.isEditableForAll(); } if (wikiSession.getAttribute("var3") != null) { editingPage.setViewable(Boolean .valueOf((String) wikiSession .getAttribute("var3"))); - viewable = editingPage.isViewable(); + viewable = editingPage.isViewableForAll(); } + } else if (wikiSession.getAttribute("var1").equals("editRole") && wikiSession.getAttribute("var2") != null) { + wikiPage.switchEditRole((String)wikiSession.getAttribute("var2")); + } else if (wikiSession.getAttribute("var1").equals("viewRole") && wikiSession.getAttribute("var2") != null) { + wikiPage.switchViewRole((String)wikiSession.getAttribute("var2")); } else if ((SHOWDELETE) && (wikiSession.getAttribute("var1") .equals("deletePage"))) { @@ -161,6 +165,8 @@ .append( "\" >DELETE THIS PAGE WITH SUBPAGES</a><br />\n<br />\n"); } + + } // switch editable button adminConsole.append("This page ").append( @@ -182,8 +188,34 @@ .append("\" >SWITCH IT ").append((viewable) ? "NOT" : "") .append(" VIEWABLE</a><br />\n"); + adminConsole.append("<br />\n<table><tr><th>Role name</th><th colspan=\"2\">View Roles</th><th colspan=\"2\">Edit Roles</th></tr>"); + + // role set + + Set<String> allRoles = credentials.getAllRoles(); + + for (String role : allRoles) { + String roleEd = "<a href=\""+actionURL+"&page="+wikiPage.getName()+"&var1=editRole&var2="+role+"\">"+((wikiPage.containsEditRole(role)) ? "Remove this role" : " Add this role") + "</a>"; + String roleVi = "<a href=\""+actionURL+"&page="+wikiPage.getName()+"&var1=viewRole&var2="+role+"\">"+((wikiPage.containsViewRole(role)) ? "Remove this role" : " Add this role") + "</a>"; + + adminConsole.append("<tr><td>") + .append(role) + .append("</td><td>") + .append((wikiPage.containsViewRole(role)) ? "<b>*</b>" : "") + .append("</td><td>") + .append(roleVi) + .append("</td><td>") + .append((wikiPage.containsEditRole(role)) ? "<b>*</b>" : "") + .append("</td><td>") + .append(roleEd) + .append("</td></tr>\n"); + } + + adminConsole.append("</table>\n"); + wikiPage.setPageContent(adminConsole.toString()); } + return wikiPage; } 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-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/AttachementInfoPlugin.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -40,7 +40,7 @@ + wikiPage.getName() + "/file:"; String actionURL = (String) wikiSession.getAttribute("actionURL"); - if (((wikiPage.isEditable())||(credentials.isAdmin()))&&(rollbackToVer != null) + if (((wikiPage.isEditable(credentials))||(credentials.isAdmin()))&&(rollbackToVer != null) && (credentials.isLoggedIn()) && (Integer.valueOf((String) rollbackToVer) < wikiEngine.getLastAttachmentVersion( wikiPage.getName(), attachementName))) { @@ -74,13 +74,13 @@ if (i != lastVer) { history.append("<td>"); - if ((credentials.isLoggedIn())&&((wikiPage.isEditable())||(credentials.isAdmin()))) + if ((credentials.isLoggedIn())&&((wikiPage.isEditable(credentials))||(credentials.isAdmin()))) history.append("<a href=\"").append(actionURL).append( "&type=fileInfo&page=").append(wikiPage.getName()) .append("&var1=").append(attachementName).append( "&var2=").append(i).append("\" >"); - if (wikiPage.isEditable()) { + if (wikiPage.isEditable(credentials)) { history.append((!credentials.isLoggedIn()) ? "<i>" : "").append( "Rollback version ").append(i).append( (!credentials.isLoggedIn()) ? " (after login)</i>" : ""); @@ -89,7 +89,7 @@ history.append("<i>This page IS NOT editable</i>"); } - if ((credentials.isLoggedIn())&&((wikiPage.isEditable())||(credentials.isAdmin()))) + if ((credentials.isLoggedIn())&&((wikiPage.isEditable(credentials))||(credentials.isAdmin()))) history.append("</a>"); history.append("<td>"); Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/test/java/org/jboss/wiki/test/WikiTest.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/test/java/org/jboss/wiki/test/WikiTest.java 2005-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/test/java/org/jboss/wiki/test/WikiTest.java 2005-11-30 20:48:34 UTC (rev 1671) @@ -25,6 +25,7 @@ import java.util.HashMap; import java.util.HashSet; import java.util.Set; +import java.util.TreeSet; import javax.portlet.ActionRequest; import javax.portlet.RenderRequest; @@ -156,6 +157,20 @@ // Do nothing } + + @Override + public boolean isUserInRole(String role) { + return logedIn; + } + + @Override + public Set<String> getAllRoles() { + Set<String> roles = new TreeSet<String>(); + + roles.add("TestRole"); + + return roles; + } } Modified: trunk/forge/portal-extensions/maven.xml =================================================================== --- trunk/forge/portal-extensions/maven.xml 2005-11-30 20:48:36 UTC (rev 1670) +++ trunk/forge/portal-extensions/maven.xml 2005-11-30 20:48:34 UTC (rev 1671) @@ -130,7 +130,7 @@ 4. forge-login/to-copy/portal-login-ds.xml 5. federation-register/src/web/WEB-INF/faces-config (only for the JOSF portal). 6. jbosswiki/wiki-common/src/etc/org/jboss/wiki/filedatasource.properties -7. shotoku/shotoku-svn-service/src/etc/repositories.xml +7. shotoku/shotoku-base/src/etc/shotoku.properties Available goals: - help - prints this info |
From: <jbo...@li...> - 2005-11-30 20:48:44
|
Author: wrzep Date: 2005-11-30 15:48:36 -0500 (Wed, 30 Nov 2005) New Revision: 1670 Modified: trunk/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/Podcast.java Log: enclosure disappeared bug http://jira.jboss.com/jira/browse/JBLAB-540 Pawel Modified: trunk/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/Podcast.java =================================================================== --- trunk/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/Podcast.java 2005-11-30 15:14:53 UTC (rev 1669) +++ trunk/forge/portal-extensions/forge-podcast/src/java/org/jboss/forge/podcast/Podcast.java 2005-11-30 20:48:36 UTC (rev 1670) @@ -161,14 +161,16 @@ // filling the context with enclosure information ItemEnclosureIF enclosure = item.getEnclosure(); - if (enclosure != null) { - nodeContext.put("enclosure-type", enclosure.getType()); - nodeContext.put("enclosure-size", Math.round(enclosure.getLength() / BYTES_IN_MB)); - - URL enclosureLocation = enclosure.getLocation(); - if (enclosureLocation != null) { + URL enclosureLocation = null; + + if (enclosure != null) { + enclosureLocation = enclosure.getLocation(); + } + + if (enclosureLocation != null) { nodeContext.put("enclosure-link", enclosureLocation.toString()); - } + nodeContext.put("enclosure-type", enclosure.getType()); + nodeContext.put("enclosure-size", Math.round(enclosure.getLength() / BYTES_IN_MB)); } // filling the context with channel information |
From: <jbo...@li...> - 2005-11-30 15:14:59
|
Author: unibrew Date: 2005-11-30 10:14:53 -0500 (Wed, 30 Nov 2005) New Revision: 1669 Modified: trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java Log: [DOWNLOADCOUNTERS] Security update. Modified: trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java =================================================================== --- trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java 2005-11-30 14:02:16 UTC (rev 1668) +++ trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java 2005-11-30 15:14:53 UTC (rev 1669) @@ -131,11 +131,6 @@ DownloadCountersDescriptor desc = (DownloadCountersDescriptor) ForgeHelper .getForgeManagement().getFromCache(portalName, DownloadCountersDescriptor.class.getName()); - if (desc == null) - desc = (DownloadCountersDescriptor) ForgeHelper.getForgeManagement() - .addNodeWatcher(portalName, - DownloadCountersDescriptor.class.getName(), - new DownloadCountersWatcher(contentManager)); return desc; } |
Author: unibrew Date: 2005-11-30 09:02:16 -0500 (Wed, 30 Nov 2005) New Revision: 1668 Modified: trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java trunk/forge/portal-extensions/forge-file-access/src/java/org/jboss/forge/fileaccess/FileAccessFilter.java Log: [DOWNLOADCOUNTERS] Security update. Modified: trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java =================================================================== --- trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java 2005-11-29 19:02:55 UTC (rev 1667) +++ trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCounterTools.java 2005-11-30 14:02:16 UTC (rev 1668) @@ -90,7 +90,7 @@ DelegateContext ctx = new DelegateContext(); // Getting the DownloadCountersDescriptor object containing counters. - DownloadCountersDescriptor desc = getDesc(portalName); + DownloadCountersDescriptor desc = getDesc(portalName,contentManager); // If there isn't a descriptor in cache, return empty context. if (desc==null) { @@ -127,10 +127,15 @@ * @param portalName * @return DownloadCountersDescriptor object. */ - public static DownloadCountersDescriptor getDesc(final String portalName) { + public static DownloadCountersDescriptor getDesc(final String portalName,final ContentManager contentManager) { DownloadCountersDescriptor desc = (DownloadCountersDescriptor) ForgeHelper .getForgeManagement().getFromCache(portalName, DownloadCountersDescriptor.class.getName()); + if (desc == null) + desc = (DownloadCountersDescriptor) ForgeHelper.getForgeManagement() + .addNodeWatcher(portalName, + DownloadCountersDescriptor.class.getName(), + new DownloadCountersWatcher(contentManager)); return desc; } Modified: trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java =================================================================== --- trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java 2005-11-29 19:02:55 UTC (rev 1667) +++ trunk/forge/portal-extensions/forge-common/src/java/org/jboss/forge/common/projects/DownloadCountersDescriptor.java 2005-11-30 14:02:16 UTC (rev 1668) @@ -128,6 +128,7 @@ synchronizeCounters(descriptors); } catch (Exception e) { + System.out.println ("[DOWNLOADCOUNTERS] Failed to initialize downloadCounters."); e.printStackTrace(); } } @@ -288,6 +289,8 @@ private synchronized Set<String> getTrackedProjects () { Set<String> projects = new HashSet<String>(); + if (downloadCounters==null) + return projects; for (String link:downloadCounters.keySet()) { projects.add(downloadCounters.get(link).getProjectId()); } @@ -393,7 +396,7 @@ * Counter value for this <code>link</code> will be incremented. */ synchronized public void increment (final String link) { - if (downloadCounters.get(link)!=null) { + if (downloadCounters!=null && downloadCounters.get(link)!=null) { // Status change to inform about counters modification. changeStatus=true; downloadCounters.get(link).increment(); Modified: trunk/forge/portal-extensions/forge-file-access/src/java/org/jboss/forge/fileaccess/FileAccessFilter.java =================================================================== --- trunk/forge/portal-extensions/forge-file-access/src/java/org/jboss/forge/fileaccess/FileAccessFilter.java 2005-11-29 19:02:55 UTC (rev 1667) +++ trunk/forge/portal-extensions/forge-file-access/src/java/org/jboss/forge/fileaccess/FileAccessFilter.java 2005-11-30 14:02:16 UTC (rev 1668) @@ -145,7 +145,8 @@ // Sending the request link to the DownloadCounter to increment // counter for this link if it's one of the tracked links. - downloadCounters.increment(File.separator+requestedRes); + if (downloadCounters!=null) + downloadCounters.increment(File.separator+requestedRes); } |
From: <jbo...@li...> - 2005-11-29 19:03:20
|
Author: szimano Date: 2005-11-29 14:02:55 -0500 (Tue, 29 Nov 2005) New Revision: 1667 Added: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CounterPlugin.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiTypeLoader.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/GetRefsFromPagePlugin.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/UpdateRefs.java Removed: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiTypeHandler.java Modified: trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/PortletWikiSession.java trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ServletWikiSession.java trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiInsidePlugins.xml trunk/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiTypes.xml trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ReferringPagesPlugin.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UndefinedPagesPlugin.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UnusedPagesPlugin.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/InsidePluginExcecutor.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/WikiSession.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiType.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/RefsManipulatingInsidePlugin.java trunk/forge/portal-extensions/jbosswiki/wiki-common/src/test/java/org/jboss/wiki/test/WikiTest.java Log: temp, perm variables, new plugins, new wikitype parser http://jira.jboss.com/jira/browse/JBWIKI-73 http://jira.jboss.com/jira/browse/JBWIKI-72 Modified: trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/PortletWikiSession.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/PortletWikiSession.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/PortletWikiSession.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -44,4 +44,8 @@ this.portletSession = portletSession; } + public String getId() { + return portletSession.getId(); + } + } Modified: trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ServletWikiSession.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ServletWikiSession.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/ServletWikiSession.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -43,5 +43,9 @@ public ServletWikiSession(HttpSession httpSession) { this.httpSession = httpSession; } + + public String getId() { + return httpSession.getId(); + } } 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-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/forge-wiki/src/java/org/jboss/wiki/WikiPortlet.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -202,7 +202,7 @@ } if (rReq.getParameter("editAction") != null) { - log.info("EDITING PAGE"); + log.debug("EDITING PAGE"); // unlock page WikiPage edPage = wikiEngine.getByName((String) rReq Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiInsidePlugins.xml =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiInsidePlugins.xml 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiInsidePlugins.xml 2005-11-29 19:02:55 UTC (rev 1667) @@ -6,4 +6,5 @@ <entry key="InsertPage">org.jboss.wiki.plugins.InsertPageInsidePlugin</entry> <entry key="IndexPlugin">org.jboss.wiki.plugins.IndexInsidePlugin</entry> <entry key="CurrentTimePlugin">com.ecyrd.jspwiki.plugin.CurrentTimePlugin</entry> +<entry key="Counter">com.ecyrd.jspwiki.plugin.CounterPlugin</entry> </properties> \ No newline at end of file Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiTypes.xml =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiTypes.xml 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/etc/WikiTypes.xml 2005-11-29 19:02:55 UTC (rev 1667) @@ -94,6 +94,14 @@ </plugin> </wikiType> <wikiType> + <name>refs</name> + <class>org.jboss.wiki.plugins.DirectReferenceWikiType</class> + <plugin> + <name>getRefsForPage</name> + <class>org.jboss.wiki.plugins.GetRefsFromPagePlugin</class> + </plugin> + </wikiType> + <wikiType> <name>recentChanges</name> <class>org.jboss.wiki.plugins.DefaultWikiType</class> <plugin> @@ -124,6 +132,10 @@ <name>reTranslateUids</name> <class>org.jboss.wiki.plugins.ReTranslateUids</class> </plugin> + <plugin> + <name>updateRefs</name> + <class>org.jboss.wiki.plugins.UpdateRefs</class> + </plugin> </wikiType> <wikiType> <name>admin</name> Added: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CounterPlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CounterPlugin.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/CounterPlugin.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -0,0 +1,39 @@ +package com.ecyrd.jspwiki.plugin; + +import java.util.HashMap; + +import org.jboss.wiki.WikiInsidePlugin; +import org.jboss.wiki.WikiPage; +import org.jboss.wiki.WikiSession; + +public class CounterPlugin extends WikiInsidePlugin { + + @Override + public String process(WikiPage wikiPage, WikiSession wikiSession, + HashMap<String, String> attributes) { + + String name = attributes.get("name"); + + String counterName = "counter"+((name == null) ? "" : "-"+name); + + Integer counter = (Integer)wikiPage.getTempVariable(counterName, wikiSession); + + if (counter != null) { + counter++; + } + else { + counter = new Integer(1); + } + + wikiPage.addTempVariable(counterName, counter, wikiSession); + + return counter.toString(); + } + + @Override + public void init() { + // TODO Auto-generated method stub + + } + +} Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ReferringPagesPlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ReferringPagesPlugin.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/ReferringPagesPlugin.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -4,22 +4,21 @@ import java.util.Set; +import org.jboss.wiki.Credentials; import org.jboss.wiki.WikiPage; import org.jboss.wiki.WikiSession; import org.jboss.wiki.plugins.RefsManipulatingInsidePlugin; public class ReferringPagesPlugin extends RefsManipulatingInsidePlugin { - - //FIXME : FAQJBossIIOP - - @Override public String process(WikiPage wikiPage, WikiSession wikiSession, HashMap<String, String> attributes) { Integer max = getNumericValue(attributes, "max"); Integer maxwidth = getNumericValue(attributes, "maxwidth"); + Credentials credentials = (Credentials)wikiSession.getAttribute("credentials"); + if (max == null) max = 10; @@ -31,7 +30,7 @@ String uid = wikiEngine.getUid(wikiPage.getName()); - Set<String> refsFor = getRefsFor(uid, max); + Set<String> refsFor = getRefsFor(uid, max, credentials, wikiSession); for (String ref : refsFor) { stringBuffer.append(getLink(ref, maxwidth)); Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UndefinedPagesPlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UndefinedPagesPlugin.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UndefinedPagesPlugin.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -3,6 +3,7 @@ import java.util.HashMap; import java.util.Set; +import org.jboss.wiki.Credentials; import org.jboss.wiki.WikiPage; import org.jboss.wiki.WikiSession; import org.jboss.wiki.plugins.RefsManipulatingInsidePlugin; @@ -14,18 +15,20 @@ HashMap<String, String> attributes) { Integer maxwidth = getNumericValue(attributes, "maxwidth"); + Credentials credentials = (Credentials)wikiSession.getAttribute("credentials"); + if ((maxwidth != null) && (maxwidth < 4)) { maxwidth = 4; } StringBuffer stringBuffer = new StringBuffer(); - Set<String> allRefs = getAllRefs(); + Set<String> allRefs = getAllRefs(credentials, wikiSession); for (String pageName : allRefs) { if (!wikiEngine.pageExists(pageName)) { - stringBuffer.append(getLink(pageName, maxwidth)); + stringBuffer.append(getLink(wikiEngine.getUid(pageName), maxwidth)); } } Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UnusedPagesPlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UnusedPagesPlugin.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/com/ecyrd/jspwiki/plugin/UnusedPagesPlugin.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -3,6 +3,7 @@ import java.util.HashMap; import java.util.Set; +import org.jboss.wiki.Credentials; import org.jboss.wiki.WikiPage; import org.jboss.wiki.WikiSession; import org.jboss.wiki.plugins.RefsManipulatingInsidePlugin; @@ -14,6 +15,8 @@ HashMap<String, String> attributes) { Integer maxwidth = getNumericValue(attributes, "maxwidth"); + Credentials credentials = (Credentials)wikiSession.getAttribute("credentials"); + if ((maxwidth != null) && (maxwidth < 4)) { maxwidth = 4; } @@ -22,12 +25,12 @@ Set<String> pageNames = wikiEngine.getAllPageNames(); - Set<String> allRefs = getAllRefs(); + Set<String> allRefs = getAllRefs(credentials, wikiSession); for (String pageName : pageNames) { - if (!allRefs.contains(pageName)) { - stringBuffer.append(getLink(pageName, maxwidth)); + if (!allRefs.contains(wikiEngine.getUid(pageName))) { + stringBuffer.append(getLink(wikiEngine.getUid(pageName), maxwidth)); } } Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/InsidePluginExcecutor.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/InsidePluginExcecutor.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/InsidePluginExcecutor.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -40,7 +40,7 @@ Properties props = new Properties(); try { - props.loadFromXML(WikiTypeHandler.class + props.loadFromXML(WikiTypeLoader.class .getResourceAsStream("/WikiInsidePlugins.xml")); } catch (InvalidPropertiesFormatException e) { log.error("WikiInsidePlugins.xml has bad format !", e); @@ -96,7 +96,7 @@ WikiInsidePlugin plugin = null; - log.info("executing plugin: "+pluginLink); + log.debug("executing plugin: "+pluginLink); if (!localPluginLink.matches(insidePluginRegex)) { // this is not a proper inside plugin link @@ -139,7 +139,7 @@ pluginDef = pluginDef.substring(className.length()).trim(); - log.info("Plugin name: "+className); + log.debug("Plugin name: "+className); if (className.indexOf('.') != -1) { // full class name @@ -191,7 +191,7 @@ attributes.put(attribName, attribValue); - log.info("new attribute: "+attribName+" "+attribValue); + log.debug("new attribute: "+attribName+" "+attribValue); } private void getAttrib2(String attrib, HashMap<String,String> attributes) { @@ -202,6 +202,6 @@ attributes.put(attribName, attribValue); - log.info("new attribute: "+attribName+" "+attribValue); + log.debug("new attribute: "+attribName+" "+attribValue); } } 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-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiEngine.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -28,8 +28,6 @@ import java.util.Date; import java.util.HashMap; import java.util.HashSet; -import java.util.InvalidPropertiesFormatException; -import java.util.Iterator; import java.util.LinkedHashMap; import java.util.Map; import java.util.Properties; @@ -37,22 +35,15 @@ import java.util.TreeSet; import java.util.Map.Entry; import java.util.concurrent.Semaphore; -import java.util.regex.Matcher; -import java.util.regex.Pattern; import javax.portlet.ActionRequest; import javax.portlet.RenderRequest; -import javax.xml.parsers.SAXParser; -import javax.xml.parsers.SAXParserFactory; - import org.jboss.wiki.exceptions.PageNotEditedException; import org.jboss.wiki.exceptions.PageRenamingException; import org.jboss.wiki.exceptions.WikiException; import org.jboss.logging.Logger; -import java.io.File; - /** * * @author <a href="mailto:ds...@jb...">Damon Sicore</a> @@ -430,10 +421,11 @@ try { wikiTypes.clear(); - SAXParser sp = (SAXParserFactory.newInstance()).newSAXParser(); - sp.parse(WikiTypeHandler.class - .getResourceAsStream("/WikiTypes.xml"), - new WikiTypeHandler(this)); + WikiTypeLoader wikiTypeLoader = new WikiTypeLoader(this); + + wikiTypeLoader.parse(WikiTypeLoader.class + .getResourceAsStream("/WikiTypes.xml")); + } catch (Exception se) { log.error("Error while parsing WikiType configuration: " , se); 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-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiPage.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -21,7 +21,6 @@ */ package org.jboss.wiki; -import java.io.File; import java.io.InputStream; import java.io.Serializable; import java.util.Calendar; @@ -64,6 +63,17 @@ private Set<Integer> expiredSessionIds; private HashMap<Integer, EditSessionWatcher> editSessionWatchers; + + + /** + * Temp variables (cleaned after every process ends) + */ + private HashMap<String, Object> tempVariables; + + /** + * Permanent variables - lives untiles JBoss Wiki is up + */ + private HashMap<String, Object> permVariables; /** * <p> @@ -141,6 +151,10 @@ String pageContent, int pageLastVersion, int thisVersion, Date editDate, WikiEngine wikiEngine, boolean viewable, boolean editable) { + + tempVariables = new HashMap<String, Object>(); + permVariables = new HashMap<String, Object>(); + name = pageName; lastAuthor = pageAuthor; this.pageContent = pageContent; @@ -354,7 +368,7 @@ } public void unlock(Credentials user, Integer editSessionId) { - log.info("UNLOCK: " + user.getName() + " save user: " + log.debug("UNLOCK: " + user.getName() + " save user: " + lockUser); if (editSessionWatchers.get(editSessionId) != null) { @@ -370,7 +384,7 @@ } if ((user.getName()).equals(lockUser)) { - log.info("Unlocking page"); + log.debug("Unlocking page"); lockTime = null; lockUser = null; } @@ -397,12 +411,12 @@ } if (this.lockTime == null) { - log.info("LOCK: " + user.getName()); + log.debug("LOCK: " + user.getName()); // page isn't locked or lock expired. Lets lock it. this.lockTime = now; this.lockUser = user.getName(); - log.info("LOCK: " + lockUser); + log.debug("LOCK: " + lockUser); retDate = null; } @@ -472,4 +486,36 @@ expiredSessionIds.add(id); wikiEngine.endEditing(id); } + + public void addTempVariable(String key, Object value, WikiSession wikiSession) { + tempVariables.put(wikiSession.getId()+key, value); + } + + public Object getTempVariable(String key, WikiSession wikiSession) { + return tempVariables.get(wikiSession.getId()+key); + } + + public void removeTempVariable(String key, WikiSession wikiSession) { + tempVariables.remove(wikiSession.getId()+key); + } + + public void clearTempVariables(WikiSession wikiSession) { + for (String key : tempVariables.keySet()) { + if (key.startsWith(wikiSession.getId())) { + tempVariables.remove(key); + } + } + } + + public void addPermVariable(String key, Object value) { + permVariables.put(key, value); + } + + public Object getPermVariable(String key) { + return permVariables.get(key); + } + + public void removePermVariable(String key) { + permVariables.remove(key); + } } Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiSession.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiSession.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiSession.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -27,4 +27,6 @@ public void setAttribute(String attributeName, Object attribute); public void removeAttribute(String attributeName); + + public String getId(); } Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiType.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiType.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiType.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -125,6 +125,9 @@ i++; } + // remove ALL temp variables for this session (as they are RELLLY temp) + newPage.clearTempVariables(wikiSession); + return newPage; } Deleted: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiTypeHandler.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiTypeHandler.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiTypeHandler.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -1,195 +0,0 @@ -/* - * JBoss, Home of Professional Open Source - * Copyright 2005, JBoss Inc., and individual contributors as indicated - * by the @authors tag. See the copyright.txt in the distribution for a - * full listing of individual contributors. - * - * This is free software; you can redistribute it and/or modify it - * under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation; either version 2.1 of - * the License, or (at your option) any later version. - * - * This software 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 - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this software; if not, write to the Free - * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA - * 02110-1301 USA, or see the FSF site: http://www.fsf.org. - */ -package org.jboss.wiki; - -import java.util.Stack; - -import org.jboss.logging.Logger; -import org.xml.sax.Attributes; -import org.xml.sax.SAXException; -import org.xml.sax.SAXParseException; -import org.xml.sax.helpers.DefaultHandler; - -/** - * The WikiTypeHandler for parsing WikiType xml file. - * <p> - * - * @author <a href="mailto:ds...@jb...">Damon Sicore</a> - * @author <a href="mailto:tom...@jb...">Tomasz Szimanski</a> - * @version $Id$ - */ - -public class WikiTypeHandler extends DefaultHandler { - - private Stack<String> elements = new Stack<String>(); - - private boolean isInsidePlugin = false; - - private WikiEngine wikiEngine; - - private WikiType wikiType; - - private String wikiTypeName; - - private String pluginName = "", pluginClass = ""; - - private Logger log = Logger.getLogger(WikiTypeHandler.class); - - @Override - public void endDocument() throws SAXException { - super.endDocument(); - - log.info("WikiType configuration file parsed."); - } - - @Override - public void endElement(String uri, String localName, String qName) - throws SAXException { - super.endElement(uri, localName, qName); - - if (qName.equals("plugin")) { - isInsidePlugin = false; - } else if ((qName.equals("wikiType")) && (wikiType != null)) { - // add WikiType - - wikiEngine.addWikiType(wikiType.getName(), wikiType); - wikiType = null; - wikiTypeName = null; - } - - // log.info("End element: "+uri+" "+localName+" "+qName); - } - - @Override - public void error(SAXParseException e) throws SAXException { - super.error(e); - log.error("ERROR", e); - } - - @Override - public void fatalError(SAXParseException e) throws SAXException { - super.fatalError(e); - log.error("FATAL ERROR" , e); - } - - @Override - public void startDocument() throws SAXException { - super.startDocument(); - log.info("Parsing the WikiType configuration file..."); - } - - @Override - public void startElement(String uri, String localName, String qName, - Attributes attributes) throws SAXException { - super.startElement(uri, localName, qName, attributes); - /* - * log.info("Element: uri: "+uri+" lname: "+localName+" qname: - * "+qName); for (int i = 0; i < attributes.getLength(); i++) { - * log.info("Attr "+i+": "+attributes.getQName(i)+" = - * "+attributes.getIndex(attributes.getQName(i))); } - */ - if (qName.equals("plugin")) { - isInsidePlugin = true; - } else if (qName.equals("wikiType")) { - // start building new WikiType - - //wikiType = new WikiType(); - } - - elements.push(qName); - } - - @Override - public void warning(SAXParseException e) throws SAXException { - super.warning(e); - log.warn(e); - } - - public WikiTypeHandler(WikiEngine wikiEngine) { - this.wikiEngine = wikiEngine; - } - - @Override - public void characters(char[] ch, int start, int length) - throws SAXException { - super.characters(ch, start, length); - String element; - - String s = (new String(ch)).substring(start, start + length); - - if (((int) s.charAt(0) != 9) - && ((int) s.charAt(0) != 10) - && (!elements.isEmpty())) { - - element = elements.pop(); - - if ((element.equals("class")) && (!isInsidePlugin)) { - // class for wikiType - - try { - wikiType = (WikiType)Class.forName(s).newInstance(); - wikiType.setWikiEngine(wikiEngine); - } - catch(Exception e) { - log.error("Cannot load WikiType class: ",e); - } - - if (wikiTypeName != null) { - wikiType.setName(wikiTypeName); - - wikiTypeName = null; - } - - } else if ((element.equals("name")) || (element.equals("class"))) { - if (isInsidePlugin) { - // set name and class - if we have them both - add plugin to - // wikitype - - if (element.equals("class")) { - pluginClass = s; - } else { - pluginName = s; - } - - - if ((pluginName.length() > 0) && (pluginClass.length() > 0)) { - // we have em both - add a plugin - - wikiType.addPlugin(pluginName, pluginClass); - - pluginClass = pluginName = ""; - } - - - } else { - // here only if found name of WikiType (see prev. if clause) - if (wikiType != null) { - wikiType.setName(s); - } - else { - wikiTypeName = s; - } - } - } - } - } -} Added: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiTypeLoader.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiTypeLoader.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/WikiTypeLoader.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -0,0 +1,106 @@ +package org.jboss.wiki; + +import java.io.IOException; +import java.io.InputStream; + +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; + +import org.jboss.logging.Logger; +import org.jboss.wiki.exceptions.WikiException; +import org.w3c.dom.DOMException; +import org.w3c.dom.Document; +import org.w3c.dom.Node; +import org.w3c.dom.NodeList; +import org.xml.sax.SAXException; + +public class WikiTypeLoader { + + private WikiEngine wikiEngine; + + private Logger log = Logger.getLogger(this.getClass()); + + public WikiTypeLoader(WikiEngine wikiEngine) { + this.wikiEngine = wikiEngine; + } + + public void parse(InputStream xmlFile) throws ParserConfigurationException, SAXException, IOException, DOMException, InstantiationException, IllegalAccessException, ClassNotFoundException { + DocumentBuilder db = DocumentBuilderFactory.newInstance().newDocumentBuilder(); + + Document doc = db.parse(xmlFile); + + NodeList wikiTypes = doc.getElementsByTagName("wikiType"); + + for (int i = 0; i < wikiTypes.getLength(); i++) { + WikiType wikiType = null; + + String wikiTypeName = null; + + Node wikiTypeNode = wikiTypes.item(i); + + NodeList wikiTypeElements = wikiTypeNode.getChildNodes(); + + for (int j = 0; j < wikiTypeElements.getLength(); j++) { + + Node elem = wikiTypeElements.item(j); + + if (elem.getNodeName().equals("name")) { + if (wikiType != null) + wikiType.setName(unmarshallText(elem)); + else + wikiTypeName = unmarshallText(elem); + } + else if (elem.getNodeName().equals("class")) { + wikiType = (WikiType)Class.forName(unmarshallText(elem)).newInstance(); + wikiType.setWikiEngine(wikiEngine); + + if (wikiTypeName != null) + wikiType.setName(wikiTypeName); + } + else if (elem.getNodeName().equals("plugin")) { + NodeList pluginElems = elem.getChildNodes(); + + String pluginName = null; + String pluginClass = null; + + for (int k = 0; k < pluginElems.getLength(); k++) { + Node pluginElem = pluginElems.item(k); + + if (pluginElem.getNodeName().equals("name")) { + pluginName = unmarshallText(pluginElem); + } + else if (pluginElem.getNodeName().equals("class")) { + pluginClass = unmarshallText(pluginElem); + } + } + + if (pluginName != null && pluginClass != null) + wikiType.addPlugin(pluginName, pluginClass); + else + log.error("Cannot read plugin: name: "+pluginName+" class: "+pluginClass+" in WikiType: "+wikiType.getName()); + } + } + + wikiEngine.addWikiType(wikiType.getName(), wikiType); + log.info("Added WikiType: "+wikiType.getName()); + } + } + + private String unmarshallText(Node textNode) { + StringBuffer buf = new StringBuffer(); + + Node n; + NodeList nodes = textNode.getChildNodes(); + + for (int i = 0; i < nodes.getLength(); i++) { + n = nodes.item(i); + + if (n.getNodeType() == Node.TEXT_NODE) { + buf.append(n.getNodeValue()); + } + } + + return buf.toString(); + } +} Added: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/GetRefsFromPagePlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/GetRefsFromPagePlugin.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/GetRefsFromPagePlugin.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -0,0 +1,82 @@ +package org.jboss.wiki.plugins; + +import java.util.Set; +import java.util.TreeSet; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import org.jboss.wiki.WikiPage; +import org.jboss.wiki.WikiPlugin; +import org.jboss.wiki.WikiSession; + +public class GetRefsFromPagePlugin extends WikiPlugin { + + private static final String pattern1 = "\\[.+\\]"; + + private static final String pattern2 = "\\[[\\w\\d\\s]+\\|.+\\]"; + + @Override + public WikiPage process(WikiPage wikiPage, WikiSession wikiSession) { + + Set<String> refs = (Set<String>) wikiPage.getPermVariable("refs"); + + if (refs == null || updateRefs()) { + refs = getRefsFrom(wikiPage.getContent()); + wikiPage.addPermVariable("refs", refs); + } + + return wikiPage; + } + + @Override + public void init() { + + } + + protected boolean updateRefs() { + return false; + } + + private Set<String> getRefsFrom(String pageContent) { + + Set<String> refs = new TreeSet<String>(); + + Matcher matcher = Pattern.compile(pattern1).matcher(pageContent); + + while (matcher.find()) { + String pageUid = pageContent.substring(matcher.start(), matcher + .end()); + + pageUid = pageUid.substring(1, pageUid.indexOf(']')); + + if (!HTMLTranslatorParts.isExternalLink(pageUid) && !HTMLTranslatorParts.isNumber(pageUid)) { + pageUid = HTMLTranslatorParts.cleanLink(pageUid); + + if (pageUid != null) { + refs.add(pageUid); + } + } + } + + matcher = Pattern.compile(pattern2).matcher(pageContent); + + while (matcher.find()) { + String pageUid = pageContent.substring(matcher.start(), matcher + .end()); + + pageUid = pageUid.substring(pageUid.indexOf('|') + 1, pageUid + .indexOf(']')); + + if (!HTMLTranslatorParts.isExternalLink(pageUid) && !HTMLTranslatorParts.isNumber(pageUid)) { + pageUid = HTMLTranslatorParts.cleanLink(pageUid); + + if (pageUid != null) { + refs.add(pageUid); + } + } + } + + return refs; + } + +} 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-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/HTMLTranslatorParts.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -978,7 +978,7 @@ * NOT a number. */ - private boolean isNumber(String s) { + public static boolean isNumber(String s) { if (s == null) return false; Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RefsManipulatingInsidePlugin.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RefsManipulatingInsidePlugin.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/RefsManipulatingInsidePlugin.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -5,8 +5,12 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.jboss.wiki.Credentials; +import org.jboss.wiki.SimpleCredentials; +import org.jboss.wiki.WikiContext; import org.jboss.wiki.WikiInsidePlugin; import org.jboss.wiki.WikiPage; +import org.jboss.wiki.WikiSession; public abstract class RefsManipulatingInsidePlugin extends WikiInsidePlugin { @@ -14,6 +18,8 @@ private static final String pattern1 = "\\[.+\\]"; private static final String pattern2 = "\\[[\\w\\d]+\\|.+\\]"; + private static final String refsWikiType = "refs"; + protected String getLink(String pageName, Integer maxwidth) { if ((maxwidth != null) && (pageName.length() > maxwidth)) { return "[" + pageName.substring(0, maxwidth - 3) + "...|" @@ -23,113 +29,43 @@ } } - protected Set<String> getAllRefs() { + protected Set<String> getAllRefs(Credentials credentials, WikiSession wikiSession) { Set<String> pageNames = wikiEngine.getAllPageNames(); Set<String> allRefs = new TreeSet<String>(); + WikiContext wikiContext = new WikiContext(credentials, wikiEngine.getWikiType("refs"), wikiSession); + for (String pageName : pageNames) { - WikiPage page = wikiEngine.getByName(pageName, null); + WikiPage page = wikiEngine.getByName(pageName, wikiContext); - Matcher matcher = Pattern.compile(pattern1).matcher( - page.getContent()); - - while (matcher.find()) { - String pageUid = page.getContent().substring(matcher.start(), - matcher.end()); - - pageUid = pageUid.substring(1, pageUid.indexOf(']')); - - if (!HTMLTranslatorParts.isExternalLink(pageUid)) { - pageUid = HTMLTranslatorParts.cleanLink(pageUid); - - if (pageUid != null) { - allRefs.add(wikiEngine.getRealName(pageUid)); - } - } - } - - matcher = Pattern.compile(pattern2).matcher(page.getContent()); - - while (matcher.find()) { - String pageUid = page.getContent().substring(matcher.start(), - matcher.end()); - - pageUid = pageUid.substring(pageUid.indexOf('|'), pageUid - .indexOf(']')); - - if (!HTMLTranslatorParts.isExternalLink(pageUid)) { - pageUid = HTMLTranslatorParts.cleanLink(pageUid); - - if (pageUid != null) { - allRefs.add(wikiEngine.getRealName(pageUid)); - } - } - } - + Set<String> refs = (Set<String>)page.getPermVariable("refs"); + + allRefs.addAll(refs); } return allRefs; } - protected Set<String> getRefsFor(String uid, Integer max) { + protected Set<String> getRefsFor(String uid, Integer max, Credentials credentials, WikiSession wikiSession) { Set<String> refsFor = new TreeSet<String>(); Set<String> pageNames = wikiEngine.getAllPageNames(); + WikiContext wikiContext = new WikiContext(credentials, wikiEngine.getWikiType("refs"), wikiSession); + for (String pageName : pageNames) { - if (max == 0) { - // escape for - break; - } - - WikiPage page = wikiEngine.getByName(pageName, null); - - boolean fits = false; - - Matcher matcher = Pattern.compile(pattern1).matcher( - page.getContent()); - - while (matcher.find() && (!fits)) { - String pageUid = page.getContent().substring(matcher.start(), - matcher.end()); - - pageUid = pageUid.substring(1, pageUid - .indexOf(']')); - - pageUid = HTMLTranslatorParts.cleanLink(pageUid); - - if (pageUid != null && pageUid.equals(uid)) { - fits = true; - } - } - - if (!fits) { - matcher = Pattern.compile(pattern2).matcher(page.getContent()); - - while (matcher.find() && (!fits)) { - String pageUid = page.getContent().substring( - matcher.start(), matcher.end()); - - pageUid = pageUid.substring(pageUid.indexOf('|')+1, pageUid - .indexOf(']')); - - pageUid = HTMLTranslatorParts.cleanLink(pageUid); - - if (pageUid != null && pageUid.equals(uid)) { - fits = true; - } - } - } - - if (fits) { + + WikiPage page = wikiEngine.getByName(pageName, wikiContext); + + Set<String> refs = (Set<String>)page.getPermVariable("refs"); + + if (refs.contains(uid)) { refsFor.add(page.getName()); - max--; } - } return refsFor; Added: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/UpdateRefs.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/UpdateRefs.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/java/org/jboss/wiki/plugins/UpdateRefs.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -0,0 +1,10 @@ +package org.jboss.wiki.plugins; + +public class UpdateRefs extends GetRefsFromPagePlugin { + + @Override + protected boolean updateRefs() { + return true; + } + +} Modified: trunk/forge/portal-extensions/jbosswiki/wiki-common/src/test/java/org/jboss/wiki/test/WikiTest.java =================================================================== --- trunk/forge/portal-extensions/jbosswiki/wiki-common/src/test/java/org/jboss/wiki/test/WikiTest.java 2005-11-29 18:41:40 UTC (rev 1666) +++ trunk/forge/portal-extensions/jbosswiki/wiki-common/src/test/java/org/jboss/wiki/test/WikiTest.java 2005-11-29 19:02:55 UTC (rev 1667) @@ -178,5 +178,9 @@ public void removeAttribute(String attributeName) { attributes.remove(attributeName); } + + public String getId() { + return toString(); + } } \ No newline at end of file |