github.com/Axway/agent-sdk@v1.1.101/pkg/apic/provisioning/accessrequestdata.go (about)

     1  package provisioning
     2  
     3  // AccessData - holds the details about the access data to send to platform
     4  type AccessData interface {
     5  	GetData() map[string]interface{}
     6  }
     7  
     8  type accessData struct {
     9  	AccessData
    10  	data map[string]interface{}
    11  }
    12  
    13  func (c accessData) GetData() map[string]interface{} {
    14  	return c.data
    15  }
    16  
    17  // AccessDataBuilder - builder to create new access data to send to Central
    18  type AccessDataBuilder interface {
    19  	SetData(data map[string]interface{}) AccessData
    20  }
    21  
    22  type accessDataBuilder struct {
    23  	access *accessData
    24  }
    25  
    26  // NewAccessDataBuilder - create a access data builder
    27  func NewAccessDataBuilder() AccessDataBuilder {
    28  	return &accessDataBuilder{
    29  		access: &accessData{},
    30  	}
    31  }
    32  
    33  // SetCredential - set the access data
    34  func (a *accessDataBuilder) SetData(data map[string]interface{}) AccessData {
    35  	a.access.data = data
    36  	return a.access
    37  }