Publisher Flow
This is what happens when you integrate with uSync.Publisher.
1.User Right Clicks on a Tree Item
-
uSync.Publisher will attempt to locate the correct Item Manager for the tree based on the tree alias (using the TreeAliases property of all item managers).
-
Publisher will then ask the item manager what type of SyncTree the item uses (almost always Settings).
-
Publisher will then ask the item manager for the LocalSyncItem via the
GetEntity
method. -
Publisher will load up the relevant SyncHandler for the local item.
-
Publisher will add the relevant push/pull items to the Context menu in Umbraco.
2. User Selects Push/Pull From the Context Menu
- uSync displays the Push/Pull dialog (js) and the user selects the server.
- uSync displays the relevant options (these are driven by the TreeType from above).
When the options are picked the process starts, uSync will then call the methods to build the package for export/push/pull.
- uSync will call SyncItemManager to get the Items for export.
- uSync will then call the dependency checkers for each item, to ensure all the dependencies are calculated.
- uSync will use the relevant SyncHandler to perform an export of all the dependent items.
- The exported items are zipped up and sent across the network to the target server.
- The target server extracts the uSync files and performs a report to see the changes (it is important that the target server also has the same handlers so it can import the exported items).
- The report is sent back to the source server.
3. User Reviews the Report and Selects Push/Pull/Import
- uSync will tell the target server to import the changes.
- Any required files and media are calculated between the target and the source.
- Required files are sent over and put in the correct locations.
- The uSync import is ran and all changes are imported.
- The changes are returned to the source as a report.
4. User Closes Dialog
- uSync will clean up any temporary files on both the source and target server.