You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by at...@apache.org on 2008/09/17 03:45:21 UTC
svn commit: r696132 - in
/portals/jetspeed-2/portal/branches/security-refactoring:
components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/
jetspeed-portal-resources/src/main/resources/assembly/
Author: ate
Date: Tue Sep 16 18:45:21 2008
New Revision: 696132
URL: http://svn.apache.org/viewvc?rev=696132&view=rev
Log:
- also storing portlet preferences when storage of the PortletDefinitionImpl itself using the OJB PersistenceBrokerAware lifecycle
- reinstate static references for Spring managed bean through the (also Spring managed) static initializer
Modified:
portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/PortletDefinitionImpl.java
portals/jetspeed-2/portal/branches/security-refactoring/jetspeed-portal-resources/src/main/resources/assembly/static-bean-references.xml
Modified: portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/PortletDefinitionImpl.java
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/PortletDefinitionImpl.java?rev=696132&r1=696131&r2=696132&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/PortletDefinitionImpl.java (original)
+++ portals/jetspeed-2/portal/branches/security-refactoring/components/jetspeed-registry/src/main/java/org/apache/jetspeed/om/portlet/impl/PortletDefinitionImpl.java Tue Sep 16 18:45:21 2008
@@ -28,7 +28,6 @@
import javax.portlet.PreferencesValidator;
-import org.apache.jetspeed.Jetspeed;
import org.apache.jetspeed.components.portletpreferences.PortletPreferencesProvider;
import org.apache.jetspeed.components.portletregistry.PortletRegistry;
import org.apache.jetspeed.components.portletregistry.RegistryException;
@@ -56,6 +55,9 @@
import org.apache.jetspeed.om.impl.SecurityRoleRefSetImpl;
import org.apache.jetspeed.util.HashCodeBuilder;
import org.apache.jetspeed.util.JetspeedLongObjectID;
+import org.apache.ojb.broker.PersistenceBroker;
+import org.apache.ojb.broker.PersistenceBrokerAware;
+import org.apache.ojb.broker.PersistenceBrokerException;
import org.apache.pluto.om.common.Description;
import org.apache.pluto.om.common.DescriptionSet;
import org.apache.pluto.om.common.DisplayName;
@@ -82,11 +84,11 @@
* @version $Id$
*
*/
-public class PortletDefinitionImpl implements PortletDefinitionComposite, PreferencesValidatorFactory, Serializable, Support
+public class PortletDefinitionImpl implements PortletDefinitionComposite, PreferencesValidatorFactory, Serializable, Support, PersistenceBrokerAware
{
- private PortletRegistry registry;
- private PortletFactory portletFactory;
- private PortletPreferencesProvider portletPreferencesProvider;
+ private static PortletRegistry registry;
+ private static PortletFactory portletFactory;
+ private static PortletPreferencesProvider portletPreferencesProvider;
private Long id;
private JetspeedLongObjectID oid;
@@ -218,7 +220,6 @@
{
throw new IllegalStateException("Portlet Application must be defined before preferences can be accessed");
}
- retrievePortletPreferencesProvider();
preferenceSet = portletPreferencesProvider.getPreferenceSet(this);
}
return preferenceSet;
@@ -271,7 +272,6 @@
*/
public ClassLoader getPortletClassLoader()
{
- retrievePortletFactory();
return portletFactory.getPortletApplicationClassLoader(app);
}
@@ -713,7 +713,6 @@
*/
public void store() throws IOException
{
- retrievePortletRegistry();
try
{
registry.savePortletDefinition(this);
@@ -729,7 +728,6 @@
{
if (preferenceSet != null)
{
- retrievePortletPreferencesProvider();
portletPreferencesProvider.savePreferenceSet(this, preferenceSet);
}
}
@@ -916,7 +914,6 @@
public PreferencesValidator getPreferencesValidator()
{
- retrievePortletFactory();
return portletFactory.getPreferencesValidator(this);
}
@@ -935,28 +932,52 @@
{
this.jetspeedSecurityConstraint = constraint;
}
+
+ //
+ /// PersistenceBrokerAware interface implementation
+ public void afterDelete(PersistenceBroker arg0) throws PersistenceBrokerException
+ {
+ }
- private void retrievePortletRegistry()
+ public void afterInsert(PersistenceBroker arg0) throws PersistenceBrokerException
{
- if (registry == null)
- {
- registry = (PortletRegistry)Jetspeed.getComponentManager().getComponent("portletRegistry");
- }
+ storeChildren();
}
- private void retrievePortletFactory()
+ public void afterLookup(PersistenceBroker arg0) throws PersistenceBrokerException
{
- if (portletFactory == null)
- {
- portletFactory = (PortletFactory)Jetspeed.getComponentManager().getComponent("portletFactory");
- }
}
- private void retrievePortletPreferencesProvider()
+ public void afterUpdate(PersistenceBroker arg0) throws PersistenceBrokerException
{
- if (portletPreferencesProvider == null)
- {
- portletPreferencesProvider = (PortletPreferencesProvider)Jetspeed.getComponentManager().getComponent("org.apache.jetspeed.components.portletpreferences.PortletPreferencesProvider");
- }
+ storeChildren();
+ }
+
+ public void beforeDelete(PersistenceBroker arg0) throws PersistenceBrokerException
+ {
+ }
+
+ public void beforeInsert(PersistenceBroker arg0) throws PersistenceBrokerException
+ {
+ }
+
+ public void beforeUpdate(PersistenceBroker arg0) throws PersistenceBrokerException
+ {
+ }
+
+
+ public static void setPortletRegistry(PortletRegistry registry)
+ {
+ PortletDefinitionImpl.registry = registry;
+ }
+
+ public static void setPortletFactory(PortletFactory portletFactory)
+ {
+ PortletDefinitionImpl.portletFactory = portletFactory;
+ }
+
+ public static void setPortletPreferencesProvider(PortletPreferencesProvider portletPreferencesProvider)
+ {
+ PortletDefinitionImpl.portletPreferencesProvider = portletPreferencesProvider;
}
}
Modified: portals/jetspeed-2/portal/branches/security-refactoring/jetspeed-portal-resources/src/main/resources/assembly/static-bean-references.xml
URL: http://svn.apache.org/viewvc/portals/jetspeed-2/portal/branches/security-refactoring/jetspeed-portal-resources/src/main/resources/assembly/static-bean-references.xml?rev=696132&r1=696131&r2=696132&view=diff
==============================================================================
--- portals/jetspeed-2/portal/branches/security-refactoring/jetspeed-portal-resources/src/main/resources/assembly/static-bean-references.xml (original)
+++ portals/jetspeed-2/portal/branches/security-refactoring/jetspeed-portal-resources/src/main/resources/assembly/static-bean-references.xml Tue Sep 16 18:45:21 2008
@@ -18,6 +18,30 @@
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
+ <bean id="_portletDefinitionImplPortletRegistryInitializer" class="org.apache.jetspeed.components.LifecycleAwareStaticClassInitializer" >
+ <meta key="j2:cat" value="default,registry"/>
+ <property name="className" value="org.apache.jetspeed.om.portlet.impl.PortletDefinitionImpl"/>
+ <property name="methodName" value="setPortletRegistry"/>
+ <property name="typeName" value="org.apache.jetspeed.components.portletregistry.PortletRegistry"/>
+ <property name="value"><ref bean="portletRegistry"/></property>
+ </bean>
+
+ <bean id="_portletDefinitionImplPortletFactoryInitializer" class="org.apache.jetspeed.components.LifecycleAwareStaticClassInitializer" >
+ <meta key="j2:cat" value="default,registry"/>
+ <property name="className" value="org.apache.jetspeed.om.portlet.impl.PortletDefinitionImpl"/>
+ <property name="methodName" value="setPortletFactory"/>
+ <property name="typeName" value="org.apache.jetspeed.factory.PortletFactory"/>
+ <property name="value"><ref bean="portletFactory"/></property>
+ </bean>
+
+ <bean id="_portletDefinitionImplPortletPreferencesProviderInitializer" class="org.apache.jetspeed.components.LifecycleAwareStaticClassInitializer">
+ <meta key="j2:cat" value="default,registry"/>
+ <property name="className" value="org.apache.jetspeed.om.portlet.impl.PortletDefinitionImpl"/>
+ <property name="methodName" value="setPortletPreferencesProvider"/>
+ <property name="typeName" value="org.apache.jetspeed.components.portletpreferences.PortletPreferencesProvider"/>
+ <property name="value"><ref bean="org.apache.jetspeed.components.portletpreferences.PortletPreferencesProvider"/></property>
+ </bean>
+
<bean id="_portletEntityImplPortletRegistryInitializer" class="org.apache.jetspeed.components.LifecycleAwareStaticClassInitializer" >
<meta key="j2:cat" value="default,registry"/>
<property name="className" value="org.apache.jetspeed.components.portletentity.PortletEntityImpl"/>
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org