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); } |