You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
913 B

  1. using System;
  2. using UnityEngine;
  3. using UnityEditor.PackageManager.Requests;
  4. namespace UnityEditor.PackageManager.UI
  5. {
  6. internal class UpmRemoveOperation : UpmBaseOperation, IRemoveOperation
  7. {
  8. [SerializeField]
  9. private PackageInfo _package;
  10. public event Action<PackageInfo> OnOperationSuccess = delegate { };
  11. public void RemovePackageAsync(PackageInfo package, Action<PackageInfo> doneCallbackAction = null, Action<Error> errorCallbackAction = null)
  12. {
  13. _package = package;
  14. OnOperationError += errorCallbackAction;
  15. OnOperationSuccess += doneCallbackAction;
  16. Start();
  17. }
  18. protected override Request CreateRequest()
  19. {
  20. return Client.Remove(_package.Name);
  21. }
  22. protected override void ProcessData()
  23. {
  24. OnOperationSuccess(_package);
  25. }
  26. }
  27. }