| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- package subscriptionmanager
- import "github.com/v2fly/v2ray-core/v5/app/subscription"
- func (s *SubscriptionManagerImpl) AddTrackedSubscriptionFromImportSource(importSource *subscription.ImportSource) error {
- s.Lock()
- defer s.Unlock()
- return s.addTrackedSubscriptionFromImportSource(importSource)
- }
- func (s *SubscriptionManagerImpl) RemoveTrackedSubscription(name string) error {
- s.Lock()
- defer s.Unlock()
- return s.removeTrackedSubscription(name)
- }
- func (s *SubscriptionManagerImpl) ListTrackedSubscriptions() []string {
- s.Lock()
- defer s.Unlock()
- var names []string
- for name := range s.trackedSubscriptions {
- names = append(names, name)
- }
- return names
- }
- func (s *SubscriptionManagerImpl) GetTrackedSubscriptionStatus(name string) (*subscription.TrackedSubscriptionStatus, error) {
- s.Lock()
- defer s.Unlock()
- if trackedSubscriptionItem, ok := s.trackedSubscriptions[name]; ok {
- result := &subscription.TrackedSubscriptionStatus{}
- if err := trackedSubscriptionItem.fillStatus(result); err != nil {
- return nil, newError("failed to fill status").Base(err)
- }
- result.ImportSource = trackedSubscriptionItem.importSource
- return result, nil
- } else {
- return nil, newError("unable to locate")
- }
- }
|