You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by si...@apache.org on 2008/12/09 13:52:04 UTC
svn commit: r724678 -
/labs/magma/trunk/website-administration-inline/src/main/java/org/apache/magma/website/admin/InterceptWebMethods.aj
Author: simoneg
Date: Tue Dec 9 04:52:04 2008
New Revision: 724678
URL: http://svn.apache.org/viewvc?rev=724678&view=rev
Log:
Optimized
Modified:
labs/magma/trunk/website-administration-inline/src/main/java/org/apache/magma/website/admin/InterceptWebMethods.aj
Modified: labs/magma/trunk/website-administration-inline/src/main/java/org/apache/magma/website/admin/InterceptWebMethods.aj
URL: http://svn.apache.org/viewvc/labs/magma/trunk/website-administration-inline/src/main/java/org/apache/magma/website/admin/InterceptWebMethods.aj?rev=724678&r1=724677&r2=724678&view=diff
==============================================================================
--- labs/magma/trunk/website-administration-inline/src/main/java/org/apache/magma/website/admin/InterceptWebMethods.aj (original)
+++ labs/magma/trunk/website-administration-inline/src/main/java/org/apache/magma/website/admin/InterceptWebMethods.aj Tue Dec 9 04:52:04 2008
@@ -17,19 +17,24 @@
import org.apache.magma.website.producers.ParametrizableProducer;
import org.apache.magma.website.producers.ProducerParameters;
-public aspect InterceptWebMethods {
+public aspect InterceptWebMethods percflow(HandlerSetup.inRequest()) {
declare precedence : HandlerSetup, InterceptWebMethods;
pointcut domethod() : execution(public Producer+ WebHandler+.do*(..));
pointcut handlemethod() : execution(public Producer+ WebHandler+.handle*(..));
+ private Boolean isAdmin = null;
+
Object around () :
(domethod() || handlemethod())
{
Object ret = proceed();
- AdminWebHandler awe = RootWebHandler.getInstance().handleAdministration();
- if (!awe.isAdministrator()) return ret;
+ if (isAdmin == null) {
+ AdminWebHandler awe = RootWebHandler.getInstance().handleAdministration();
+ isAdmin = awe.isAdministrator();
+ }
+ if (!isAdmin) return ret;
if (ret == null) return ret;
if (ret instanceof HtmlProducer) {
if (InlineMenuHelper.isFromAdmin((HtmlProducer)ret)) return ret;
@@ -49,6 +54,7 @@
InlineMenuHelper.findActions(parameters.values(), founds);
}
if (founds.size() > 0) {
+ AdminWebHandler awe = RootWebHandler.getInstance().handleAdministration();
return new CompoundHtmlProducer((HtmlProducer)ret, awe.hiddenInlineMenu(founds));
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org