cocoon-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From cziege...@apache.org
Subject svn commit: r451196 - in /cocoon/trunk/blocks/cocoon-portal: cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/coplet/impl/ cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/event/impl/ cocoon-portal-impl/src/main/java/org/apache/cocoon...
Date Fri, 29 Sep 2006 09:35:40 GMT
Author: cziegeler
Date: Fri Sep 29 02:35:39 2006
New Revision: 451196

URL: http://svn.apache.org/viewvc?view=rev&rev=451196
Log:
Fix bugs in profile and event handling

Removed:
    cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/coplet/impl/
Modified:
    cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/event/impl/InternalEventReceiver.java
    cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/AbstractCIncludeAspect.java
    cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/CIncludeCopletAspect.java
    cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/TabContentAspect.java
    cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/WindowAspect.java
    cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java
    cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/GroupBasedProfileManager.java
    cocoon/trunk/blocks/cocoon-portal/cocoon-portal-portlet-impl/src/main/java/org/apache/cocoon/portal/pluto/TestProfileManager.java

Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/event/impl/InternalEventReceiver.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/event/impl/InternalEventReceiver.java?view=diff&rev=451196&r1=451195&r2=451196
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/event/impl/InternalEventReceiver.java
(original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/event/impl/InternalEventReceiver.java
Fri Sep 29 02:35:39 2006
@@ -76,6 +76,27 @@
                 CopletInstanceSizingEvent e = new CopletInstanceSizingEvent((CopletInstance)target,
newSize);
                 this.inform(e, service);
             } else {
+                // special handling of attributes as maps might be unmodifiable atm
+                if ( event.getPath().startsWith("attributes/") && event.getPath().indexOf('/',
12 ) == -1 ) {
+                    final String key = event.getPath().substring(11);
+                    if ( target instanceof CopletInstance ) {
+                        ((CopletInstance)target).setAttribute(key, event.getValue());
+                        return;
+                    } else if ( target instanceof LayoutInstance ) {
+                        ((LayoutInstance)target).setAttribute(key, event.getValue());
+                        return;
+                    }
+                }
+                if ( event.getPath().startsWith("temporaryAttributes/") && event.getPath().indexOf('/',
21 ) == -1 ) {
+                    final String key = event.getPath().substring(20);
+                    if ( target instanceof CopletInstance ) {
+                        ((CopletInstance)target).setTemporaryAttribute(key, event.getValue());
+                        return;
+                    } else if ( target instanceof LayoutInstance ) {
+                        ((LayoutInstance)target).setTemporaryAttribute(key, event.getValue());
+                        return;
+                    }
+                }
                 final JXPathContext jxpathContext = JXPathContext.newContext(target);
                 jxpathContext.setValue(event.getPath(), event.getValue());
             }

Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/AbstractCIncludeAspect.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/AbstractCIncludeAspect.java?view=diff&rev=451196&r1=451195&r2=451196
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/AbstractCIncludeAspect.java
(original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/AbstractCIncludeAspect.java
Fri Sep 29 02:35:39 2006
@@ -45,7 +45,7 @@
     protected void createCInclude(String source, ContentHandler handler)
     throws SAXException {
         handler.startPrefixMapping(PREFIX, NAMESPACE);
-        AttributesImpl attributes = new AttributesImpl();
+        final AttributesImpl attributes = new AttributesImpl();
         attributes.addCDATAAttribute(ATTRIBUTE, source);
         handler.startElement(NAMESPACE, ELEMENT, QELEMENT, attributes);
         handler.endElement(NAMESPACE, ELEMENT, QELEMENT);

Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/CIncludeCopletAspect.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/CIncludeCopletAspect.java?view=diff&rev=451196&r1=451195&r2=451196
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/CIncludeCopletAspect.java
(original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/CIncludeCopletAspect.java
Fri Sep 29 02:35:39 2006
@@ -79,7 +79,7 @@
             XMLUtils.startElement(handler, config.tagName);
         }
 
-        if ( rendererContext.getPortalService().getConfigurationAsBoolean(Constants.CONFIGURATION_USE_AJAX,
Constants.DEFAULT_CONFIGURATION_USE_AJAX) ) {
+        if ( config.useAjax ) {
             // TODO something else to do
             this.createCInclude("coplet://" + cid.getId(), handler);
         } else {
@@ -97,10 +97,12 @@
 
         public String tagName;
         public boolean rootTag;
+        public boolean useAjax;
 
         public void takeValues(PreparedConfiguration from) {
             this.tagName = from.tagName;
             this.rootTag = from.rootTag;
+            this.useAjax = from.useAjax;
         }
     }
 
@@ -112,6 +114,7 @@
         PreparedConfiguration pc = new PreparedConfiguration();
         pc.tagName = configuration.getProperty("tag-name", "content");
         pc.rootTag = BooleanUtils.toBoolean(configuration.getProperty("root-tag", "true"));
+        pc.useAjax = this.portalService.getConfigurationAsBoolean(Constants.CONFIGURATION_USE_AJAX,
Constants.DEFAULT_CONFIGURATION_USE_AJAX);
         return pc;
     }
 }

Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/TabContentAspect.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/TabContentAspect.java?view=diff&rev=451196&r1=451195&r2=451196
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/TabContentAspect.java
(original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/TabContentAspect.java
Fri Sep 29 02:35:39 2006
@@ -113,18 +113,17 @@
     extends CompositeContentAspect {
 
     /**
-     * @see org.apache.cocoon.portal.layout.renderer.aspect.RendererAspect#toSAX(org.apache.cocoon.portal.layout.renderer.aspect.RendererAspectContext,
org.apache.cocoon.portal.om.Layout, org.apache.cocoon.portal.PortalService, org.xml.sax.ContentHandler)
+     * @see org.apache.cocoon.portal.layout.renderer.aspect.impl.CompositeContentAspect#toSAX(org.apache.cocoon.portal.layout.renderer.aspect.RendererAspectContext,
org.apache.cocoon.portal.om.Layout, org.xml.sax.ContentHandler)
      */
     public void toSAX(RendererAspectContext rendererContext,
                       Layout                layout,
-                      PortalService         service,
                       ContentHandler        handler)
     throws SAXException, LayoutException {
         LayoutFeatures.checkLayoutClass(layout, CompositeLayout.class, true);
         final CompositeLayout tabLayout = (CompositeLayout) layout;
-        final LayoutInstance layoutInstance = LayoutFeatures.getLayoutInstance(service, tabLayout,
true);
+        final LayoutInstance layoutInstance = LayoutFeatures.getLayoutInstance(rendererContext.getPortalService(),
tabLayout, true);
         // check for maximized information
-    	final RenderInfo maximizedInfo = LayoutFeatures.getRenderInfo(service, layout);
+    	final RenderInfo maximizedInfo = LayoutFeatures.getRenderInfo(rendererContext.getPortalService(),
layout);
 
         final TabPreparedConfiguration config = (TabPreparedConfiguration)rendererContext.getAspectConfiguration();
 
@@ -135,7 +134,7 @@
         final AttributesImpl attributes = new AttributesImpl();
 
         // selected tab
-        String selectedTabName = LayoutFeatures.getSelectedTab(service, tabLayout);
+        String selectedTabName = LayoutFeatures.getSelectedTab(rendererContext.getPortalService(),
tabLayout);
         int selectedTabIndex = 0;
         if ( selectedTabName != null && !config.useNames) {
             selectedTabIndex = Integer.valueOf(selectedTabName).intValue();
@@ -167,7 +166,7 @@
             }
             final LayoutInstanceChangeAttributeEvent event;
             event = new ChangeTabEvent(layoutInstance, tab, config.useNames);
-            attributes.addCDATAAttribute("parameter", service.getLinkService().getLinkURI(event));

+            attributes.addCDATAAttribute("parameter", rendererContext.getPortalService().getLinkService().getLinkURI(event));

 
             // add parameters
             final Iterator iter = tab.getParameters().entrySet().iterator();
@@ -179,19 +178,19 @@
             XMLUtils.startElement(handler, "named-item", attributes);
             if (selected) {
             	if ( maximizedInfo != null && maximizedInfo.item.equals(tab) ) {
-            		this.processLayout(maximizedInfo.layout, service, handler);
+            		this.processLayout(maximizedInfo.layout, rendererContext.getPortalService(),
handler);
             	} else {
-                    this.processLayout(tab.getLayout(), service, handler);
+                    this.processLayout(tab.getLayout(), rendererContext.getPortalService(),
handler);
             	}
                 if (config.includeSelected) {
                     List events = new ArrayList();
                     events.add(event);
-                    this.processNavigation(tab.getLayout(), service, handler, events, config);
+                    this.processNavigation(tab.getLayout(), rendererContext.getPortalService(),
handler, events, config);
                 }
             } else if (config.showAllNav) {
                 List events = new ArrayList();
                 events.add(event);
-                this.processNavigation(tab.getLayout(), service, handler, events, config);
+                this.processNavigation(tab.getLayout(), rendererContext.getPortalService(),
handler, events, config);
             }
 
             // close named-item tag

Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/WindowAspect.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/WindowAspect.java?view=diff&rev=451196&r1=451195&r2=451196
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/WindowAspect.java
(original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/layout/renderer/aspect/impl/WindowAspect.java
Fri Sep 29 02:35:39 2006
@@ -111,27 +111,27 @@
                       ContentHandler        contenthandler)
     throws SAXException, LayoutException {
         final PreparedConfiguration config = (PreparedConfiguration)rendererContext.getAspectConfiguration();
-        final CopletInstance copletInstanceData = this.getCopletInstance(((CopletLayout)layout).getCopletInstanceId());
+        final CopletInstance copletInstance = this.getCopletInstance(((CopletLayout)layout).getCopletInstanceId());
 
         if ( config.rootTag ) {
             XMLUtils.startElement(contenthandler, config.tagName);
         }
-        final CopletAdapter adapter = rendererContext.getPortalService().getCopletAdapter(copletInstanceData.getCopletDefinition().getCopletType().getCopletAdapterName());
+        final CopletAdapter adapter = rendererContext.getPortalService().getCopletAdapter(copletInstance.getCopletDefinition().getCopletType().getCopletAdapterName());
 
         // stream some general infos about the copet instance data
-        this.streamCopletInstanceDataInfos(copletInstanceData, adapter, layout, contenthandler);
+        this.streamCopletInstanceDataInfos(copletInstance, adapter, layout, contenthandler);
         
         // stream the title
-        this.streamTitle(copletInstanceData, adapter, layout, contenthandler);
+        this.streamTitle(copletInstance, adapter, layout, contenthandler);
 
         // stream portlet modes if the coplet type supports this
-        this.streamCopletModes(copletInstanceData, adapter, layout, contenthandler);
+        this.streamCopletModes(copletInstance, adapter, layout, contenthandler);
 
         // stream remove button
-        this.streamRemoveButton(copletInstanceData, adapter, layout, contenthandler);
+        this.streamRemoveButton(copletInstance, adapter, layout, contenthandler);
 
         // stream the window states and determine if we should invoke the next aspect
-        boolean invokeNext = this.streamWindowStates(copletInstanceData, adapter, layout,
contenthandler);
+        boolean invokeNext = this.streamWindowStates(copletInstance, adapter, layout, contenthandler);
         if ( invokeNext ) {
             rendererContext.invokeNext( layout, contenthandler );
         }

Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java?view=diff&rev=451196&r1=451195&r2=451196
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java
(original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/AbstractProfileManager.java
Fri Sep 29 02:35:39 2006
@@ -23,8 +23,6 @@
 import org.apache.avalon.framework.configuration.Configurable;
 import org.apache.avalon.framework.configuration.Configuration;
 import org.apache.avalon.framework.configuration.ConfigurationException;
-import org.apache.avalon.framework.service.ServiceException;
-import org.apache.avalon.framework.service.ServiceManager;
 import org.apache.cocoon.portal.LayoutException;
 import org.apache.cocoon.portal.PortalException;
 import org.apache.cocoon.portal.coplet.adapter.CopletAdapter;
@@ -55,20 +53,10 @@
     extends AbstractComponent 
     implements ProfileManager, Receiver, Configurable, Ordered {
 
-    /** The configuration. */
-    protected Configuration configuration;
-
     /** The chain for the configured profile manager aspects. */
     protected AspectChain chain;
 
     /**
-     * @see org.apache.avalon.framework.service.Serviceable#service(org.apache.avalon.framework.service.ServiceManager)
-     */
-    public void service(ServiceManager aManager) throws ServiceException {
-        super.service(aManager);
-    }
-
-    /**
      * @see org.apache.avalon.framework.activity.Disposable#dispose()
      */
     public void dispose() {
@@ -85,7 +73,6 @@
      */
     public void configure(Configuration config) throws ConfigurationException {
         try {
-            this.configuration = config;
             this.chain = new AspectChain(ProfileManagerAspect.class);
             this.chain.configure(this.manager, config);
         } catch (PortalException pe) {
@@ -156,16 +143,9 @@
     }
 
     /**
-     * @see org.apache.cocoon.portal.profile.ProfileManager#getProfile(java.lang.String)
-     */
-    public Profile getProfile(String profileName) {
-        return null;
-    }
-
-    /**
      * Prepares the object by using the specified factory.
      */
-    protected void prepareObject(Object object)
+    protected void prepareObject(Profile profile, Object object)
     throws LayoutException {
         if ( object != null ) {
             Object preparableObject = object;
@@ -173,7 +153,7 @@
                 preparableObject = ((Map)object).values();
             }
             if (object instanceof Layout) {
-                preparableObject = this.checkAvailability((Layout)object);
+                preparableObject = this.checkAvailability(profile, (Layout)object);
             } else if (object instanceof Collection) {
                 final Iterator iterator = ((Collection)preparableObject).iterator();
                 while (iterator.hasNext()) {
@@ -194,23 +174,23 @@
         }
     }
 
-    protected Layout checkAvailability(Layout layout) {
+    protected Layout checkAvailability(Profile profile, Layout layout) {
         // is the coplet instance available?
         if ( layout instanceof CopletLayout ) {
             final CopletLayout cl = (CopletLayout)layout;
             if ( cl.getCopletInstanceId() == null ) {
                 return null;
-            }/*
-            final CopletInstance instance = this.getCopletInstance(cl.getCopletInstanceId());
+            }
+            final CopletInstance instance = profile.searchCopletInstance(cl.getCopletInstanceId());
             if ( instance == null || instance.getCopletDefinition() == null ) {
                 return null;
-            }*/
+            }
         } else if ( layout instanceof CompositeLayout ) {
             final CompositeLayout cl = (CompositeLayout)layout;
             final Iterator i = cl.getItems().iterator();
             while ( i.hasNext() ) {
                 Layout current = ((Item)i.next()).getLayout();
-                if ( this.checkAvailability(current) == null ) {
+                if ( this.checkAvailability(profile, current) == null ) {
                     // coplet or instance is not available: remove layout
                     // FIXME: We could display a dummy coplet instead?
                     i.remove();

Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/GroupBasedProfileManager.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/GroupBasedProfileManager.java?view=diff&rev=451196&r1=451195&r2=451196
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/GroupBasedProfileManager.java
(original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-impl/src/main/java/org/apache/cocoon/portal/profile/impl/GroupBasedProfileManager.java
Fri Sep 29 02:35:39 2006
@@ -329,7 +329,7 @@
         ProfileImpl profile = new ProfileImpl(layoutKey);
 
         // first "load" the global data
-        profile.setCopletTypes( this.getGlobalBaseDatas(layoutKey) );
+        profile.setCopletTypes( this.getGlobalCopletTypes(layoutKey) );
         profile.setCopletDefinitions( this.getGlobalDatas(info, profile, layoutKey) );
 
         // now load the user/group specific data
@@ -354,7 +354,7 @@
         return processedProfile;
     }
 
-    protected Map getGlobalBaseDatas(final String     layoutKey)
+    protected Map getGlobalCopletTypes(final String     layoutKey)
     throws Exception {
         // if we already have loaded the profile and don't check
         // for changes, just return the profile
@@ -399,7 +399,7 @@
             this.copletTypes.validity = newValidity;
             this.copletDefinitions.objects = null;
             this.copletDefinitions.validity = null;
-            this.prepareObject(this.copletTypes.objects);
+            this.prepareObject(null, this.copletTypes.objects);
             return this.copletTypes.objects;
         }
     }
@@ -454,7 +454,7 @@
                 newValidity = loader.getValidity(key, ProfileLS.PROFILETYPE_COPLETDEFINITION);
             }
             this.copletDefinitions.validity = newValidity;
-            this.prepareObject(this.copletDefinitions.objects);
+            this.prepareObject(profile, this.copletDefinitions.objects);
             return this.copletDefinitions.objects;
         }
     }
@@ -482,7 +482,7 @@
         try {
             Collection cidm = (Collection)loader.loadProfile(key, ProfileLS.PROFILETYPE_COPLETINSTANCE,
profile.getCopletDefinitionsMap());
             profile.setCopletInstances(cidm);
-            this.prepareObject(profile.getCopletInstancesMap());
+            this.prepareObject(profile, profile.getCopletInstancesMap());
 
             return true;
         } catch (Exception e) {
@@ -505,7 +505,7 @@
                                       layoutKey);
         try {
             Layout l = (Layout)loader.loadProfile(key, ProfileLS.PROFILETYPE_LAYOUT, profile.getCopletInstancesMap());
-            this.prepareObject(l);
+            this.prepareObject(profile, l);
             profile.setRootLayout(l);
 
             return true;
@@ -610,7 +610,7 @@
         if ( this.copletTypes.objects == null ) {
             try {
                 // first "load" the global data
-                this.getGlobalBaseDatas(this.portalService.getUserService().getDefaultLayoutKey());
+                this.getGlobalCopletTypes(this.portalService.getUserService().getDefaultLayoutKey());
             } catch (Exception e) {
                 throw new ProfileException("Unable to load global base datas.", e);
             }            

Modified: cocoon/trunk/blocks/cocoon-portal/cocoon-portal-portlet-impl/src/main/java/org/apache/cocoon/portal/pluto/TestProfileManager.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-portal/cocoon-portal-portlet-impl/src/main/java/org/apache/cocoon/portal/pluto/TestProfileManager.java?view=diff&rev=451196&r1=451195&r2=451196
==============================================================================
--- cocoon/trunk/blocks/cocoon-portal/cocoon-portal-portlet-impl/src/main/java/org/apache/cocoon/portal/pluto/TestProfileManager.java
(original)
+++ cocoon/trunk/blocks/cocoon-portal/cocoon-portal-portlet-impl/src/main/java/org/apache/cocoon/portal/pluto/TestProfileManager.java
Fri Sep 29 02:35:39 2006
@@ -74,7 +74,7 @@
             final ProfileImpl profile = new ProfileImpl(layoutKey);
 
             // first "load" the global data
-            profile.setCopletTypes( this.getGlobalBaseDatas( layoutKey) );
+            profile.setCopletTypes( this.getGlobalCopletTypes( layoutKey) );
             profile.setCopletDefinitions( this.getGlobalDatas( info, profile, layoutKey)
);
 
             // create root layout
@@ -101,9 +101,9 @@
                 }
             }
             profile.setCopletInstances(instances);
-            this.prepareObject(instances);
+            this.prepareObject(profile, instances);
 
-            this.prepareObject(rootLayout);
+            this.prepareObject(profile, rootLayout);
             profile.setRootLayout(rootLayout);
 
             final Profile processedProfile = this.processProfile(profile);
@@ -148,7 +148,7 @@
                             item.setLayout(copletLayout);
                             rootLayout.addItem(item);
                             try {
-                                 this.prepareObject(copletLayout);
+                                 this.prepareObject(this.getUserProfile(null), copletLayout);
                             } catch (LayoutException le) {
                                 // ignore this
                             }



Mime
View raw message