github.com/kyma-incubator/compass/components/director@v0.0.0-20230623144113-d764f56ff805/pkg/adapters/adapters.go (about)

     1  package pkg
     2  
     3  import "sync"
     4  
     5  // Adapters contains pairing adapters configuration mapping between integration system and adapter URL
     6  type Adapters struct {
     7  	mutex   sync.RWMutex
     8  	Mapping map[string]string
     9  }
    10  
    11  // NewAdapters return empty Adapters struct
    12  func NewAdapters() *Adapters {
    13  	return &Adapters{}
    14  }
    15  
    16  // Get return pairing adapter mapping configuration
    17  func (a *Adapters) Get() map[string]string {
    18  	a.mutex.RLock()
    19  	defer a.mutex.RUnlock()
    20  
    21  	return a.Mapping
    22  }
    23  
    24  // Update updates pairing adapter mapping with the given value
    25  func (a *Adapters) Update(mapping map[string]string) {
    26  	a.mutex.Lock()
    27  	defer a.mutex.Unlock()
    28  
    29  	a.Mapping = mapping
    30  }