Added PluginJamfDeviceSync class between the computer and mobile device sync classes and the base PluginJamfSync class
The base sync class may be used for non-device item syncing in the future. Better to add that abstraction now.
Some mobile device and computer sync logic is shared and doesn't make sense outside of the context of device syncing. This is a good place to add it.
Renamed some variables in the sync engines to clarify they refer to the class/itemtype in the plugin and not Jamf.
Should reduce confusion if two-way syncing is supported in the future
Drop repeated dummySync flag checks in each device sync function. It should no longer be possible to call any sync function when the engine is constructed without valid parameters.
Sync is a static function that makes its own sync engine instance.
Any non-device sync engine is expected to implement syncing the same way or check the flag in the main sync function.
Added PluginJamfDeviceSync class between the computer and mobile device sync classes and the base PluginJamfSync class
Renamed some variables in the sync engines to clarify they refer to the class/itemtype in the plugin and not Jamf.
Drop repeated dummySync flag checks in each device sync function. It should no longer be possible to call any sync function when the engine is constructed without valid parameters.