weaver 2004/05/11 11:35:56
Modified: components/profiler/src/java/org/apache/jetspeed/profiler/impl
Tag: NANOCONTAINER_DEPLOYER JetspeedProfiler.java
Log:
added constructor delegation
Revision Changes Path
No revision
No revision
1.1.2.2 +381 -373
jakarta-jetspeed-2/components/profiler/src/java/org/apache/jetspeed/profiler/impl/Attic/JetspeedProfiler.java
Index: JetspeedProfiler.java
===================================================================
RCS file:
/home/cvs/jakarta-jetspeed-2/components/profiler/src/java/org/apache/jetspeed/profiler/impl/Attic/JetspeedProfiler.java,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- JetspeedProfiler.java 20 Apr 2004 03:08:47 -0000 1.1.2.1
+++ JetspeedProfiler.java 11 May 2004 18:35:56 -0000 1.1.2.2
@@ -1,373 +1,381 @@
-/*
- * Copyright 2000-2001,2004 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.jetspeed.profiler.impl;
-
-import org.apache.jetspeed.profiler.Profiler;
-import org.picocontainer.Startable;
-
-import java.security.Principal;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.Properties;
-
-import javax.security.auth.Subject;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.jetspeed.components.persistence.store.Filter;
-import org.apache.jetspeed.components.persistence.store.PersistenceStore;
-import org.apache.jetspeed.components.persistence.store.PersistenceStoreContainer;
-import org.apache.jetspeed.components.persistence.store.Transaction;
-
-import org.apache.jetspeed.om.desktop.Desktop;
-import org.apache.jetspeed.om.page.Fragment;
-import org.apache.jetspeed.om.page.Page;
-
-import org.apache.jetspeed.profiler.ProfileLocator;
-import org.apache.jetspeed.profiler.ProfilerException;
-import org.apache.jetspeed.profiler.rules.PrincipalRule;
-import org.apache.jetspeed.profiler.rules.ProfilingRule;
-import org.apache.jetspeed.profiler.rules.impl.AbstractProfilingRule;
-import org.apache.jetspeed.profiler.rules.impl.PrincipalRuleImpl;
-import org.apache.jetspeed.request.RequestContext;
-import org.apache.jetspeed.security.SecurityHelper;
-import org.apache.jetspeed.security.UserPrincipal;
-import org.apache.jetspeed.page.PageManager;
-
-
-/**
- * JetspeedProfilerService
- *
- * @author <a href="mailto:[EMAIL PROTECTED]">David Sean Taylor</a>
- * @version $Id$
- */
-public class JetspeedProfiler implements Profiler, Startable
-{
- /** Commons logging */
- protected final static Log log = LogFactory.getLog(JetspeedProfiler.class);
-
- private PersistenceStoreContainer pContainer;
- private String storeName = "jetspeed";
-
- PageManager pageManager;
-
- /** The default locator class implementation */
- private Class locatorClass = JetspeedProfileLocator.class;
- /** The default principalRule association class implementation */
- private Class principalRuleClass = PrincipalRuleImpl.class;
- /** The base (abstract) profilingRule class implementation */
- private Class profilingRuleClass = AbstractProfilingRule.class;
-
- /** The configured default rule for this portal */
- private String defaultRule = "j1";
-
- private String anonymousUser = "anon";
-
- public JetspeedProfiler(PersistenceStoreContainer pContainer, PageManager
pageManager, String storeName)
- {
- this.pContainer = pContainer;
- this.pageManager = pageManager;
- this.storeName = storeName;
- }
-
- /**
- * Create a JetspeedProfiler with properties. Expected properties are:
- *
- * defaultRule = the default profiling rule
- * anonymousUser = the name of the anonymous user
- * storeName = The name of the persistence store component to connect to
- * services.profiler.locator.impl = the pluggable Profile Locator impl
- * services.profiler.principalRule.impl = the pluggable Principal Rule impl
- * services.profiler.profilingRule.impl = the pluggable Profiling Rule impl
- *
- * @param pContainer The persistence store container
- * @param properties Properties for this component described above
- */
- public JetspeedProfiler(PersistenceStoreContainer pContainer, PageManager
pageManager, Properties properties)
- {
- this.pContainer = pContainer;
- this.pageManager = pageManager;
- this.storeName = properties.getProperty("storeName", "jetspeed");
- this.defaultRule = properties.getProperty("defaultRule", "j1");
- this.anonymousUser = properties.getProperty("anonymousUser", "anon");
- initModelClasses(properties); // TODO: move this to start()
- }
-
- public JetspeedProfiler(PersistenceStoreContainer pContainer, PageManager
pageManager)
- {
- this.pageManager = pageManager;
- this.pContainer = pContainer;
- }
-
- private void initModelClasses(Properties properties)
- {
- String modelName = "";
- try
- {
- if ((modelName = properties.getProperty("locator.impl")) != null)
- {
- locatorClass = Class.forName(modelName);
- }
- if ((modelName = properties.getProperty("principalRule.impl")) != null)
- {
- principalRuleClass = Class.forName(modelName);
- }
- if ((modelName = properties.getProperty("profilingRule.impl")) != null)
- {
- profilingRuleClass = Class.forName(modelName);
- }
- }
- catch (ClassNotFoundException e)
- {
- log.error("Model class not found: " + modelName);
- }
- }
-
- public void start()
- {
- }
-
- public void stop()
- {
- }
-
- /* (non-Javadoc)
- * @see
org.apache.jetspeed.profiler.ProfilerService#getProfile(org.apache.jetspeed.request.RequestContext)
- */
- public ProfileLocator getProfile(RequestContext context)
- throws ProfilerException
- {
- // get the principal representing the currently logged on user
- Subject subject = context.getSubject();
- if (subject == null)
- {
- String msg = "Invalid (null) Subject in request pipeline";
- log.error(msg);
- throw new ProfilerException(msg);
- }
- // get the UserPrincipal, finding the first UserPrincipal, or
- // find the first principal if no UserPrincipal isn't available
- Principal principal = SecurityHelper.getBestPrincipal(subject,
UserPrincipal.class);
- if (principal == null)
- {
- String msg = "Could not find a principle for subject in request
pipeline";
- log.error(msg);
- throw new ProfilerException(msg);
- }
-
- // find a profiling rule for this principal
- ProfilingRule rule = getRuleForPrincipal(principal);
- if (null == rule)
- {
- log.warn("Could not find profiling rule for principal: " + principal);
- rule = this.getDefaultRule();
- }
-
- if (null == rule)
- {
- String msg = "Couldn't find any profiling rules including default rule
for principal " + principal;
- log.error(msg);
- throw new ProfilerException(msg);
- }
- // create a profile locator for given rule
- return rule.apply(context, this);
- }
-
- /* (non-Javadoc)
- * @see
org.apache.jetspeed.profiler.ProfilerService#getProfile(org.apache.jetspeed.request.RequestContext,
org.apache.jetspeed.profiler.rules.ProfilingRule)
- */
- public ProfileLocator getProfile(RequestContext context, ProfilingRule rule)
- {
- // create a profile locator for given rule
- return rule.apply(context, this);
- }
-
- /* (non-Javadoc)
- * @see org.apache.jetspeed.profiler.ProfilerService#getDefaultRule()
- */
- public ProfilingRule getDefaultRule()
- {
- return lookupProfilingRule(this.defaultRule);
- }
-
- /* (non-Javadoc)
- * @see
org.apache.jetspeed.profiler.ProfilerService#getRuleForPrincipal(java.security.Principal)
- */
- public ProfilingRule getRuleForPrincipal(Principal principal)
- {
- // lookup the rule for the given principal in our user/rule table
- PrincipalRule pr = lookupPrincipalRule(principal.getName());
-
- // if not found, fallback to the system wide rule
- if (pr == null)
- {
- return getDefaultRule();
- }
-
- // Now get the associated rule
- return pr.getProfilingRule();
- }
-
- /**
- * Helper function to lookup principal rule associations by principal
- *
- * @param principal The string representation of the principal name.
- * @return The found PrincipalRule associated with the principal key or null if
not found.
- */
- private PrincipalRule lookupPrincipalRule(String principal)
- {
- // TODO: implement caching
- PersistenceStore store = getPersistenceStore();
- Filter filter = store.newFilter();
- filter.addEqualTo("principalName", principal);
- Object query = store.newQuery(principalRuleClass, filter);
- PrincipalRule pr = (PrincipalRule) store.getObjectByQuery(query);
- return pr;
- }
-
- /**
- * Helper function to lookup a profiling rule by rule id
- *
- * @param ruleid The unique identifier for a rule.
- * @return The found ProfilingRule associated with the rule id or null if not
found.
- */
- private ProfilingRule lookupProfilingRule(String ruleid)
- {
- // TODO: implement caching
- PersistenceStore store = getPersistenceStore();
- Filter filter = store.newFilter();
- Object query = store.newQuery(profilingRuleClass, filter);
- ProfilingRule rule = (ProfilingRule) store.getObjectByQuery(query);
- return rule;
- }
-
- /* (non-Javadoc)
- * @see
org.apache.jetspeed.profiler.ProfilerService#getDesktop(org.apache.jetspeed.profiler.ProfileLocator)
- */
- public Desktop getDesktop(ProfileLocator locator)
- {
- Desktop desktop = null;
- Iterator fallback = locator.iterator();
- while (fallback.hasNext())
- {
- // desktop = PageManager.getDesktop((String)locator.next());
- if (desktop != null)
- {
- break;
- }
- }
- return desktop;
- }
-
- /* (non-Javadoc)
- * @see
org.apache.jetspeed.profiler.ProfilerService#getPage(org.apache.jetspeed.profiler.ProfileLocator)
- */
- public Page getPage(ProfileLocator locator)
- {
- // TODO: under construction, for now use the name
-
- return pageManager.getPage(locator);
-
- /*
- Page page = null;
- Iterator fallback = locator.iterator();
- while (fallback.hasNext())
- {
- page = PageManager.getPage((String)fallback.next());
- if (page != null)
- {
- break;
- }
- }
- return page;
- */
- }
-
- /* (non-Javadoc)
- * @see
org.apache.jetspeed.profiler.ProfilerService#getFragment(org.apache.jetspeed.profiler.ProfileLocator)
- */
- public Fragment getFragment(ProfileLocator locator)
- {
- Fragment fragment = null;
- Iterator fallback = locator.iterator();
- while (fallback.hasNext())
- {
- // fragment = PageManager.getFragment((String)fallback.next());
- if (fragment != null)
- {
- break;
- }
- }
- return fragment;
- }
-
- /* (non-Javadoc)
- * @see org.apache.jetspeed.profiler.ProfilerService#createLocator()
- */
- public ProfileLocator createLocator()
- {
- try
- {
- return (ProfileLocator)locatorClass.newInstance();
- }
- catch (Exception e)
- {
- log.error("Failed to create locator for " + locatorClass);
- }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.apache.jetspeed.profiler.ProfilerService#getRules()
- */
- public Collection getRules()
- {
- PersistenceStore store = getPersistenceStore();
- return store.getExtent(profilingRuleClass);
- }
-
- /* (non-Javadoc)
- * @see org.apache.jetspeed.profiler.ProfilerService#getRule(java.lang.String)
- */
- public ProfilingRule getRule(String id)
- {
- PersistenceStore store = getPersistenceStore();
- Filter filter = store.newFilter();
- filter.addEqualTo("id", id);
- Object query = store.newQuery(profilingRuleClass, filter);
- return (ProfilingRule) store.getObjectByQuery(query);
- }
-
- /* (non-Javadoc)
- * @see org.apache.jetspeed.profiler.ProfilerService#getAnonymousUser()
- */
- public String getAnonymousUser()
- {
- return this.anonymousUser;
- }
-
- protected PersistenceStore getPersistenceStore()
- {
- PersistenceStore store = pContainer.getStoreForThread(storeName);
- Transaction tx = store.getTransaction();
- if (!tx.isOpen())
- {
- tx.begin();
- }
- return store;
- }
-
-}
+/*
+ * Copyright 2000-2001,2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.jetspeed.profiler.impl;
+
+import org.apache.jetspeed.profiler.Profiler;
+import org.picocontainer.Startable;
+
+import java.security.Principal;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.Properties;
+
+import javax.security.auth.Subject;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.jetspeed.components.persistence.store.Filter;
+import org.apache.jetspeed.components.persistence.store.PersistenceStore;
+import org.apache.jetspeed.components.persistence.store.PersistenceStoreContainer;
+import org.apache.jetspeed.components.persistence.store.Transaction;
+
+import org.apache.jetspeed.om.desktop.Desktop;
+import org.apache.jetspeed.om.page.Fragment;
+import org.apache.jetspeed.om.page.Page;
+
+import org.apache.jetspeed.profiler.ProfileLocator;
+import org.apache.jetspeed.profiler.ProfilerException;
+import org.apache.jetspeed.profiler.rules.PrincipalRule;
+import org.apache.jetspeed.profiler.rules.ProfilingRule;
+import org.apache.jetspeed.profiler.rules.impl.AbstractProfilingRule;
+import org.apache.jetspeed.profiler.rules.impl.PrincipalRuleImpl;
+import org.apache.jetspeed.request.RequestContext;
+import org.apache.jetspeed.security.SecurityHelper;
+import org.apache.jetspeed.security.UserPrincipal;
+import org.apache.jetspeed.page.PageManager;
+
+
+/**
+ * JetspeedProfilerService
+ *
+ * @author <a href="mailto:[EMAIL PROTECTED]">David Sean Taylor</a>
+ * @version $Id$
+ */
+public class JetspeedProfiler implements Profiler, Startable
+{
+ /** Commons logging */
+ protected final static Log log = LogFactory.getLog(JetspeedProfiler.class);
+
+ private PersistenceStoreContainer pContainer;
+ private String storeName = "jetspeed";
+
+ PageManager pageManager;
+
+ /** The default locator class implementation */
+ private Class locatorClass = JetspeedProfileLocator.class;
+ /** The default principalRule association class implementation */
+ private Class principalRuleClass = PrincipalRuleImpl.class;
+ /** The base (abstract) profilingRule class implementation */
+ private Class profilingRuleClass = AbstractProfilingRule.class;
+
+ /** The configured default rule for this portal */
+ private String defaultRule = "j1";
+
+ private String anonymousUser = "anon";
+
+ public JetspeedProfiler(PersistenceStoreContainer pContainer, PageManager
pageManager, String storeName)
+ {
+ this(pContainer, pageManager);
+ this.storeName = storeName;
+ }
+
+ /**
+ * Create a JetspeedProfiler with properties. Expected properties are:
+ *
+ * defaultRule = the default profiling rule
+ * anonymousUser = the name of the anonymous user
+ * storeName = The name of the persistence store component to connect to
+ * services.profiler.locator.impl = the pluggable Profile Locator impl
+ * services.profiler.principalRule.impl = the pluggable Principal Rule impl
+ * services.profiler.profilingRule.impl = the pluggable Profiling Rule impl
+ *
+ * @param pContainer The persistence store container
+ * @param properties Properties for this component described above
+ */
+ public JetspeedProfiler(PersistenceStoreContainer pContainer, PageManager
pageManager, Properties properties)
+ {
+ this(pContainer, pageManager, properties.getProperty("storeName",
"jetspeed"));
+ this.defaultRule = properties.getProperty("defaultRule", "j1");
+ this.anonymousUser = properties.getProperty("anonymousUser", "anon");
+ initModelClasses(properties); // TODO: move this to start()
+ }
+
+ public JetspeedProfiler(PersistenceStoreContainer pContainer, PageManager
pageManager)
+ {
+
+ if(pageManager == null)
+ {
+ throw new IllegalArgumentException("JetspeedProfiler requires a
non-null PageManager instance.");
+ }
+
+ if(pContainer == null)
+ {
+ throw new IllegalArgumentException("JetspeedProfiler requires a
non-null PersistenceStoreContainer instance.");
+ }
+
+ this.pageManager = pageManager;
+ this.pContainer = pContainer;
+ }
+
+ private void initModelClasses(Properties properties)
+ {
+ String modelName = "";
+ try
+ {
+ if ((modelName = properties.getProperty("locator.impl")) != null)
+ {
+ locatorClass = Class.forName(modelName);
+ }
+ if ((modelName = properties.getProperty("principalRule.impl")) != null)
+ {
+ principalRuleClass = Class.forName(modelName);
+ }
+ if ((modelName = properties.getProperty("profilingRule.impl")) != null)
+ {
+ profilingRuleClass = Class.forName(modelName);
+ }
+ }
+ catch (ClassNotFoundException e)
+ {
+ log.error("Model class not found: " + modelName);
+ }
+ }
+
+ public void start()
+ {
+ }
+
+ public void stop()
+ {
+ }
+
+ /* (non-Javadoc)
+ * @see
org.apache.jetspeed.profiler.ProfilerService#getProfile(org.apache.jetspeed.request.RequestContext)
+ */
+ public ProfileLocator getProfile(RequestContext context)
+ throws ProfilerException
+ {
+ // get the principal representing the currently logged on user
+ Subject subject = context.getSubject();
+ if (subject == null)
+ {
+ String msg = "Invalid (null) Subject in request pipeline";
+ log.error(msg);
+ throw new ProfilerException(msg);
+ }
+ // get the UserPrincipal, finding the first UserPrincipal, or
+ // find the first principal if no UserPrincipal isn't available
+ Principal principal = SecurityHelper.getBestPrincipal(subject,
UserPrincipal.class);
+ if (principal == null)
+ {
+ String msg = "Could not find a principle for subject in request
pipeline";
+ log.error(msg);
+ throw new ProfilerException(msg);
+ }
+
+ // find a profiling rule for this principal
+ ProfilingRule rule = getRuleForPrincipal(principal);
+ if (null == rule)
+ {
+ log.warn("Could not find profiling rule for principal: " + principal);
+ rule = this.getDefaultRule();
+ }
+
+ if (null == rule)
+ {
+ String msg = "Couldn't find any profiling rules including default rule
for principal " + principal;
+ log.error(msg);
+ throw new ProfilerException(msg);
+ }
+ // create a profile locator for given rule
+ return rule.apply(context, this);
+ }
+
+ /* (non-Javadoc)
+ * @see
org.apache.jetspeed.profiler.ProfilerService#getProfile(org.apache.jetspeed.request.RequestContext,
org.apache.jetspeed.profiler.rules.ProfilingRule)
+ */
+ public ProfileLocator getProfile(RequestContext context, ProfilingRule rule)
+ {
+ // create a profile locator for given rule
+ return rule.apply(context, this);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.profiler.ProfilerService#getDefaultRule()
+ */
+ public ProfilingRule getDefaultRule()
+ {
+ return lookupProfilingRule(this.defaultRule);
+ }
+
+ /* (non-Javadoc)
+ * @see
org.apache.jetspeed.profiler.ProfilerService#getRuleForPrincipal(java.security.Principal)
+ */
+ public ProfilingRule getRuleForPrincipal(Principal principal)
+ {
+ // lookup the rule for the given principal in our user/rule table
+ PrincipalRule pr = lookupPrincipalRule(principal.getName());
+
+ // if not found, fallback to the system wide rule
+ if (pr == null)
+ {
+ return getDefaultRule();
+ }
+
+ // Now get the associated rule
+ return pr.getProfilingRule();
+ }
+
+ /**
+ * Helper function to lookup principal rule associations by principal
+ *
+ * @param principal The string representation of the principal name.
+ * @return The found PrincipalRule associated with the principal key or null if
not found.
+ */
+ private PrincipalRule lookupPrincipalRule(String principal)
+ {
+ // TODO: implement caching
+ PersistenceStore store = getPersistenceStore();
+ Filter filter = store.newFilter();
+ filter.addEqualTo("principalName", principal);
+ Object query = store.newQuery(principalRuleClass, filter);
+ PrincipalRule pr = (PrincipalRule) store.getObjectByQuery(query);
+ return pr;
+ }
+
+ /**
+ * Helper function to lookup a profiling rule by rule id
+ *
+ * @param ruleid The unique identifier for a rule.
+ * @return The found ProfilingRule associated with the rule id or null if not
found.
+ */
+ private ProfilingRule lookupProfilingRule(String ruleid)
+ {
+ // TODO: implement caching
+ PersistenceStore store = getPersistenceStore();
+ Filter filter = store.newFilter();
+ Object query = store.newQuery(profilingRuleClass, filter);
+ ProfilingRule rule = (ProfilingRule) store.getObjectByQuery(query);
+ return rule;
+ }
+
+ /* (non-Javadoc)
+ * @see
org.apache.jetspeed.profiler.ProfilerService#getDesktop(org.apache.jetspeed.profiler.ProfileLocator)
+ */
+ public Desktop getDesktop(ProfileLocator locator)
+ {
+ Desktop desktop = null;
+ Iterator fallback = locator.iterator();
+ while (fallback.hasNext())
+ {
+ // desktop = PageManager.getDesktop((String)locator.next());
+ if (desktop != null)
+ {
+ break;
+ }
+ }
+ return desktop;
+ }
+
+ /* (non-Javadoc)
+ * @see
org.apache.jetspeed.profiler.ProfilerService#getPage(org.apache.jetspeed.profiler.ProfileLocator)
+ */
+ public Page getPage(ProfileLocator locator)
+ {
+ // TODO: under construction, for now use the name
+
+ return pageManager.getPage(locator);
+
+ /*
+ Page page = null;
+ Iterator fallback = locator.iterator();
+ while (fallback.hasNext())
+ {
+ page = PageManager.getPage((String)fallback.next());
+ if (page != null)
+ {
+ break;
+ }
+ }
+ return page;
+ */
+ }
+
+ /* (non-Javadoc)
+ * @see
org.apache.jetspeed.profiler.ProfilerService#getFragment(org.apache.jetspeed.profiler.ProfileLocator)
+ */
+ public Fragment getFragment(ProfileLocator locator)
+ {
+ Fragment fragment = null;
+ Iterator fallback = locator.iterator();
+ while (fallback.hasNext())
+ {
+ // fragment = PageManager.getFragment((String)fallback.next());
+ if (fragment != null)
+ {
+ break;
+ }
+ }
+ return fragment;
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.profiler.ProfilerService#createLocator()
+ */
+ public ProfileLocator createLocator()
+ {
+ try
+ {
+ return (ProfileLocator)locatorClass.newInstance();
+ }
+ catch (Exception e)
+ {
+ log.error("Failed to create locator for " + locatorClass);
+ }
+ return null;
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.profiler.ProfilerService#getRules()
+ */
+ public Collection getRules()
+ {
+ PersistenceStore store = getPersistenceStore();
+ return store.getExtent(profilingRuleClass);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.profiler.ProfilerService#getRule(java.lang.String)
+ */
+ public ProfilingRule getRule(String id)
+ {
+ PersistenceStore store = getPersistenceStore();
+ Filter filter = store.newFilter();
+ filter.addEqualTo("id", id);
+ Object query = store.newQuery(profilingRuleClass, filter);
+ return (ProfilingRule) store.getObjectByQuery(query);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.jetspeed.profiler.ProfilerService#getAnonymousUser()
+ */
+ public String getAnonymousUser()
+ {
+ return this.anonymousUser;
+ }
+
+ protected PersistenceStore getPersistenceStore()
+ {
+ PersistenceStore store = pContainer.getStoreForThread(storeName);
+ Transaction tx = store.getTransaction();
+ if (!tx.isOpen())
+ {
+ tx.begin();
+ }
+ return store;
+ }
+
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]