svnno****@sourc*****
svnno****@sourc*****
2009年 3月 4日 (水) 15:25:04 JST
Revision: 1789 http://svn.sourceforge.jp/view?root=pal&view=rev&rev=1789 Author: sone Date: 2009-03-04 15:25:04 +0900 (Wed, 04 Mar 2009) Log Message: ----------- applied patch 'r727527: DB Page Manager Distributed Cache' Modified Paths: -------------- pal-portal/branches/pal-portal-1.x/portal/jetspeed-2/components/page-manager/src/java/org/apache/jetspeed/page/impl/DatabasePageManager.java pal-portal/branches/pal-portal-1.x/portal/jetspeed-2/components/page-manager/src/java/org/apache/jetspeed/page/impl/DatabasePageManagerCache.java pal-portal/branches/pal-portal-1.x/portal/jetspeed-2/jetspeed-api/src/java/org/apache/jetspeed/page/PageManager.java -------------- next part -------------- Modified: pal-portal/branches/pal-portal-1.x/portal/jetspeed-2/components/page-manager/src/java/org/apache/jetspeed/page/impl/DatabasePageManager.java =================================================================== --- pal-portal/branches/pal-portal-1.x/portal/jetspeed-2/components/page-manager/src/java/org/apache/jetspeed/page/impl/DatabasePageManager.java 2009-03-04 05:38:03 UTC (rev 1788) +++ pal-portal/branches/pal-portal-1.x/portal/jetspeed-2/components/page-manager/src/java/org/apache/jetspeed/page/impl/DatabasePageManager.java 2009-03-04 06:25:04 UTC (rev 1789) @@ -87,6 +87,7 @@ import org.apache.jetspeed.page.document.DocumentNotFoundException; import org.apache.jetspeed.page.document.FailedToDeleteDocumentException; import org.apache.jetspeed.page.document.FailedToUpdateDocumentException; +import org.apache.jetspeed.page.document.Node; import org.apache.jetspeed.page.document.NodeException; import org.apache.jetspeed.page.document.NodeSet; import org.apache.jetspeed.page.document.impl.NodeImpl; @@ -2210,4 +2211,14 @@ { return DatabasePageManagerCache.isDistributed(); } + + /* (non-Javadoc) + * @see org.apache.jetspeed.page.PageManager#notifyUpdatedNode(org.apache.jetspeed.page.document.Node) + */ + public void notifyUpdatedNode(Node node) + { + // notify page manager listeners + delegator.notifyUpdatedNode(node); + } + } Modified: pal-portal/branches/pal-portal-1.x/portal/jetspeed-2/components/page-manager/src/java/org/apache/jetspeed/page/impl/DatabasePageManagerCache.java =================================================================== --- pal-portal/branches/pal-portal-1.x/portal/jetspeed-2/components/page-manager/src/java/org/apache/jetspeed/page/impl/DatabasePageManagerCache.java 2009-03-04 05:38:03 UTC (rev 1788) +++ pal-portal/branches/pal-portal-1.x/portal/jetspeed-2/components/page-manager/src/java/org/apache/jetspeed/page/impl/DatabasePageManagerCache.java 2009-03-04 06:25:04 UTC (rev 1789) @@ -219,6 +219,8 @@ { ((FolderImpl) node).resetAll(false); } + // notify page manager of update + pageManager.notifyUpdatedNode(node); // remove from cache oidCache.removeQuiet(oid); } @@ -236,7 +238,7 @@ { ((FolderImpl) parentNode).resetAll(false); } - // remove from cache + // ensure remove from cache pathCache.removeQuiet(path); } } @@ -283,9 +285,7 @@ { final DatabasePageManagerCacheObject cacheObject = (DatabasePageManagerCacheObject) pathElement .getContent(); - final NodeImpl node = (NodeImpl) cacheLookup(cacheObject - .getId()); - return node; + return (NodeImpl) cacheLookup(cacheObject.getId()); } } Modified: pal-portal/branches/pal-portal-1.x/portal/jetspeed-2/jetspeed-api/src/java/org/apache/jetspeed/page/PageManager.java =================================================================== --- pal-portal/branches/pal-portal-1.x/portal/jetspeed-2/jetspeed-api/src/java/org/apache/jetspeed/page/PageManager.java 2009-03-04 05:38:03 UTC (rev 1788) +++ pal-portal/branches/pal-portal-1.x/portal/jetspeed-2/jetspeed-api/src/java/org/apache/jetspeed/page/PageManager.java 2009-03-04 06:25:04 UTC (rev 1789) @@ -40,6 +40,7 @@ import org.apache.jetspeed.page.document.DocumentNotFoundException; import org.apache.jetspeed.page.document.FailedToDeleteDocumentException; import org.apache.jetspeed.page.document.FailedToUpdateDocumentException; +import org.apache.jetspeed.page.document.Node; import org.apache.jetspeed.page.document.NodeException; import org.apache.jetspeed.page.document.NodeSet; import org.apache.jetspeed.page.document.UnsupportedDocumentTypeException; @@ -790,4 +791,10 @@ */ public boolean isDistributed(); + /** + * Notify page manager listeners that node modification was externally detected. + * + * @param node updated managed node if known + */ + public void notifyUpdatedNode(Node node); }