init.go 911 B

12345678910111213141516171819202122232425262728293031323334353637
  1. package dependencies
  2. import (
  3. "sync"
  4. "github.com/langgenius/dify-sandbox/internal/core/runner/types"
  5. )
  6. var preload_script_map = map[string]string{}
  7. var preload_script_map_lock = &sync.RWMutex{}
  8. func SetupDependency(package_name string, version string) {
  9. preload_script_map_lock.Lock()
  10. defer preload_script_map_lock.Unlock()
  11. preload_script_map[package_name] = version
  12. }
  13. func GetDependency(package_name string, version string) string {
  14. preload_script_map_lock.RLock()
  15. defer preload_script_map_lock.RUnlock()
  16. return preload_script_map[package_name]
  17. }
  18. func ListDependencies() []types.Dependency {
  19. dependencies := []types.Dependency{}
  20. preload_script_map_lock.RLock()
  21. defer preload_script_map_lock.RUnlock()
  22. for package_name, version := range preload_script_map {
  23. dependencies = append(dependencies, types.Dependency{
  24. Name: package_name,
  25. Version: version,
  26. })
  27. }
  28. return dependencies
  29. }