Bug 793002 (JBEPP-82)

Summary: Avoid creating dashboard objects if dashboard isn't used
Product: [JBoss] JBoss Enterprise Portal Platform 4 Reporter: Martin Weiler <mweiler>
Component: PortalAssignee: Default User <jbpapp-maint>
Status: CLOSED NEXTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: 4.3.0.GA_CP1   
Target Milestone: ---   
Target Release: 4.3.0.GA_CP2   
Hardware: Unspecified   
OS: Unspecified   
URL: http://jira.jboss.org/jira/browse/JBEPP-82
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-07-22 10:08:03 UTC Type: Feature Request
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 793014    

Description Martin Weiler 2009-05-14 13:58:23 UTC
Date of First Response: 2009-05-19 05:25:10
Help Desk Ticket Reference: https://enterprise.redhat.com/issue-tracker/291300
project_key: JBEPP

Dashboard portal objects are created even if a user never uses his dashboard.

Comment 1 Martin Weiler 2009-05-14 13:59:25 UTC
Link: Added: This issue depends JBPORTAL-2384


Comment 2 Thomas Heute 2009-05-19 09:25:10 UTC
The current fix in the project requires a change in the API which would not be welcome in EPP.

In fact it was accidentally included in the current EPP branch and should be removed. (no release has been issued)

Comment 3 Chris Laprun 2009-05-19 12:18:49 UTC
What do you mean by API change? I'd argue that the changes to CustomizationManager are fair as CustomizationManager was never part of the supported API...

Comment 4 Thomas Heute 2009-05-19 12:38:37 UTC
Correct that it's not part of public API. 
But we've made it easy to customize :-/

We should look for another way to fix this without breaking potential implementations. (might not be possible)


Comment 5 Prabhat Jha 2009-07-08 14:24:53 UTC
Link: Added: This issue is a dependency of JBEPP-94


Comment 6 Thomas Heute 2009-07-22 10:08:03 UTC
Solved but with a modification in a non-public API. 
Customers who would have implement their CustomizationManager would need to update their implementation to add the following method:

/**
 * Retrieves the identifier for the specified user's dashboard. Note that this doesn't imply that the dashboard
 * actually exists. In particular, this allows for creation of URLs targeting the user's dashboard without having to
 * actually create the associated dashboard until it is really needed.
 *
 * @param user the user whose dashboard we want to get the id
 * @return the identifier for the specified user's dashboard (whether that dashboard exists or not)
 */
 PortalObjectId getDashboardIdFor(User user);