. Big and juicy application/WCM model refactoring

- WARNING: this change requires a new DB as the WCM model has changed significantly, yes I have probably broken a few WCM things :)

Previously the following statements were true:
 - Most of the model constants were defined in the ContentModel class - including web-client Application specific model items
 - WCMModel class was a mix of WCM repository and WCM application model constants
 - The applicationModel.xml definition file contained both web-client Application and WCM application model definitions
 - The wcmModel.xml definition file contained both WCM repository and WCM application model definitions

The following statements are now true:
 - All web-client application specific model constants have been moved from ContentModel to a new model constants class ApplicationModel
 - A new WCM application model has been defined with the prefix "wca" and URI: http://www.alfresco.org/model/wcmappmodel/1.0
 - All WCM application specific model constants have been renamed/moved from ContentModel/WCMModel to a new model constants class WCMAppModel
 - The mix of WCM application specific model definitions in contentModel.xml and applicationModel.xml has been moved to a new definition file wcmAppModel.xml
 - A patch is not required for standard Alfresco as only WCM definitions have actually changed

. Fix to issue created during workflow id/name refactor
. Fix to allow forms in the Available Content Forms panel to have correct sandbox/username context for action dialog

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/WCM-DEV2/root@4448 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Kevin Roast
2006-11-27 15:03:12 +00:00
parent 8cc57fe41e
commit 6027f1c17d
44 changed files with 323 additions and 222 deletions

View File

@@ -31,7 +31,7 @@ import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;
import javax.transaction.UserTransaction;
import org.alfresco.model.ContentModel;
import org.alfresco.model.WCMAppModel;
import org.alfresco.repo.avm.AVMNodeConverter;
import org.alfresco.repo.avm.actions.AVMRevertStoreAction;
import org.alfresco.repo.avm.actions.AVMUndoSandboxListAction;
@@ -290,7 +290,7 @@ public class AVMBrowseBean implements IContextListener
FacesContext fc = FacesContext.getCurrentInstance();
ResourceBundle msg = Application.getBundle(fc);
Node websiteNode = this.navigator.getCurrentNode();
String storeRoot = (String)websiteNode.getProperties().get(ContentModel.PROP_AVMSTORE);
String storeRoot = (String)websiteNode.getProperties().get(WCMAppModel.PROP_AVMSTORE);
String stagingStore = getStagingStore();
AVMStoreDescriptor store = this.avmService.getAVMStore(stagingStore);
if (store != null)
@@ -319,7 +319,7 @@ public class AVMBrowseBean implements IContextListener
public String getStagingStore()
{
Node websiteNode = this.navigator.getCurrentNode();
String storeRoot = (String)websiteNode.getProperties().get(ContentModel.PROP_AVMSTORE);
String storeRoot = (String)websiteNode.getProperties().get(WCMAppModel.PROP_AVMSTORE);
return AVMConstants.buildAVMStagingStoreName(storeRoot);
}
@@ -511,7 +511,7 @@ public class AVMBrowseBean implements IContextListener
{
if (this.currentPath == null)
{
String webapp = (String)getWebsite().getProperties().get(ContentModel.PROP_DEFAULTWEBAPP);
String webapp = (String)getWebsite().getProperties().get(WCMAppModel.PROP_DEFAULTWEBAPP);
this.currentPath = AVMConstants.buildAVMStoreWebappPath(getSandbox(), webapp);
}
return this.currentPath;
@@ -582,12 +582,12 @@ public class AVMBrowseBean implements IContextListener
String currentUser = user.getUserName();
Node websiteNode = this.navigator.getCurrentNode();
List<ChildAssociationRef> userInfoRefs = this.nodeService.getChildAssocs(
websiteNode.getNodeRef(), ContentModel.ASSOC_WEBUSER, RegexQNamePattern.MATCH_ALL);
websiteNode.getNodeRef(), WCMAppModel.ASSOC_WEBUSER, RegexQNamePattern.MATCH_ALL);
for (ChildAssociationRef ref : userInfoRefs)
{
NodeRef userInfoRef = ref.getChildRef();
String username = (String)nodeService.getProperty(userInfoRef, ContentModel.PROP_WEBUSERNAME);
String userrole = (String)nodeService.getProperty(userInfoRef, ContentModel.PROP_WEBUSERROLE);
String username = (String)nodeService.getProperty(userInfoRef, WCMAppModel.PROP_WEBUSERNAME);
String userrole = (String)nodeService.getProperty(userInfoRef, WCMAppModel.PROP_WEBUSERROLE);
if (currentUser.equals(username) && ROLE_CONTENT_MANAGER.equals(userrole))
{
isManager = true;
@@ -732,7 +732,7 @@ public class AVMBrowseBean implements IContextListener
{
// get the staging store from the current website node
setSandbox(AVMConstants.buildAVMStagingStoreName(
(String)getWebsite().getProperties().get(ContentModel.PROP_AVMSTORE)));
(String)getWebsite().getProperties().get(WCMAppModel.PROP_AVMSTORE)));
}
this.sandboxTitle = null;
@@ -1087,6 +1087,9 @@ public class AVMBrowseBean implements IContextListener
Map<String, String> params = link.getParameterMap();
String id = params.get(UIUserSandboxes.PARAM_FORM_ID);
// setup the correct sandbox for the create action
setupSandboxAction(event);
// pass form ID to the wizard - to be picked up in init()
FacesContext fc = FacesContext.getCurrentInstance();
WizardManager manager = (WizardManager)FacesHelper.getManagedBean(fc, "WizardManager");