using UnityEditor; using UnityEngine; using System; using System.Collections.Generic; using System.Linq; using System.Text; using log4net; namespace P4Connect { /// <summary> /// This class hooks onto the Asset Save/Delete/Move process and makes sure that /// Perforce is updated accordingly. It uses the perforce connection class /// (which internally uses Config to retrieve the connection settings) /// to open a connection to the server and add the required changes (add/checkout/delete/move). /// </summary> public class AssetPostProcessor : UnityEditor.AssetPostprocessor { private static readonly ILog log = LogManager.GetLogger(typeof(AssetPostProcessor)); public static void OnPostprocessAllAssets ( String [] aImportedAssets, String [] aDeletedAssets, String [] aMovedAssets, String [] aMovedFromAssetPaths) { if (!Config.ValidConfiguration) // Should I queue up this stuff until the configuration is valid? return; #if DEBUG log.DebugFormat("import: {0} delete: {1} move: {2} moveTo: {3}", Logger.StringArrayToString(aImportedAssets), Logger.StringArrayToString(aDeletedAssets), Logger.StringArrayToString(aMovedAssets), Logger.StringArrayToString(aMovedFromAssetPaths)); #endif if (aImportedAssets.Length > 0) { Engine.CreateAssets(aImportedAssets); } if (aDeletedAssets.Length > 0) { Engine.DeleteAssets(aDeletedAssets); } if (aMovedAssets.Length > 0) { Engine.MoveAssets(aMovedFromAssetPaths, aMovedAssets); } #if DEBUG log.Debug("... Complete"); #endif } } }
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 12585 | dbarbee |
Populate -o //guest/perforce_software/p4connect/... //guest/dbarbee/dev/p4connect/.... |
||
//guest/perforce_software/p4connect/src/P4Connect/P4Connect/P4Connect.AssetPostProcessor.cs | |||||
#4 | 12553 | Norman Morse |
integrate from internal main Build fixes for EC. Major changes to Configuration and re-initialization code. Bug fixes |
||
#3 | 12512 | Norman Morse | Integrate from Dev branch, preparing for Beta3 release | ||
#2 | 12362 | Norman Morse |
Added Debug Logging for p4log Fixed some path comparison issues. Created a CaseSensitivity test |
||
#1 | 10940 | Norman Morse |
Inital Workshop release of P4Connect. Released under BSD-2 license |