RunTimeBase.cs 971 B

1234567891011121314151617181920212223242526272829303132333435
  1. using System;
  2. using Abp.Dependency;
  3. using WeEngine.Module.Runner;
  4. using WeEngine.Packages;
  5. namespace WeEngine.Functions
  6. {
  7. public class RunTimeBase: ITransientDependency
  8. {
  9. protected PackageInfo Rp { get; set; }
  10. protected PackageRunnerModuleContext RunnerModule { get; set; }
  11. public PackageInfo GetPackage(string runId)
  12. {
  13. Rp = PackageCache.Instance.GetCache(runId);
  14. CheckPackage();
  15. return Rp;
  16. }
  17. public void SetPackage(PackageInfo runPackageInfo=null)
  18. {
  19. runPackageInfo = runPackageInfo ?? Rp;
  20. PackageCache.Instance.AddCache(runPackageInfo.Id + "", runPackageInfo);
  21. }
  22. protected virtual bool CheckPackage()
  23. {
  24. if (Rp == null)
  25. {
  26. throw new Exception("未查询到运行态方案包");
  27. }
  28. RunnerModule = Rp.RunnerModule;
  29. return true;
  30. }
  31. }
  32. }