Steps in the Project Create method
Invoking the Project Create method results in a number of steps being performed.
Here are the steps that the
Project Create method executes when invoked:
- Verify that the user has enough privileges to create the project.
- Validate all incoming parameters by verifying the following:
- All required parameters are present.
- No system fields have been supplied.
- Only project metadata has been supplied.
- All values are valid.
- Start the transaction.
- Initialize project (in memory):
- Check the initial status.
- Verify that the publication version is not used on another project.
- Set all provided metadata.
- Create assignees:
- If one or more user names have been provided, create an assignee for each user name.
- Alternatively, if no user names have been provided, create an assignee for the current user.
- Set the newly created assignees on the project (in memory).
- Initialize the plugin engine:
- Find the Plugin Configuration Xml.
- Conditionally filter the Plugin Configuration Xml using the following conditions:
ConditionName Condition on... Example ISHTypeThe InfoSharetype of the objectISHProjectISHUserGroupThe element name of the usergroup VUSERGROUPSYSTEMMANAGEMENTCurrentActionThe current action CreateISHLevelThe level project - Initialize the plugins.
- Run the plugins in the order specified in the Plugin Configuration Xml.
- Verify that the status is still valid after running the plugins.
- Update the project in the database.
- Start the background tasks from the plugins.
- Commit the transaction.