github.com/TBD54566975/ftl@v0.219.0/internal/modulecontext/to_proto.go (about)

     1  package modulecontext
     2  
     3  import (
     4  	ftlv1 "github.com/TBD54566975/ftl/backend/protos/xyz/block/ftl/v1"
     5  )
     6  
     7  // ToProto converts a ModuleContext to a proto response.
     8  func (m ModuleContext) ToProto() *ftlv1.ModuleContextResponse {
     9  	databases := make([]*ftlv1.ModuleContextResponse_DSN, 0, len(m.databases))
    10  	for name, entry := range m.databases {
    11  		databases = append(databases, &ftlv1.ModuleContextResponse_DSN{
    12  			Name: name,
    13  			Type: ftlv1.ModuleContextResponse_DBType(entry.DBType),
    14  			Dsn:  entry.DSN,
    15  		})
    16  	}
    17  	return &ftlv1.ModuleContextResponse{
    18  		Module:    m.module,
    19  		Configs:   m.configs,
    20  		Secrets:   m.secrets,
    21  		Databases: databases,
    22  	}
    23  }