@@ -12,6 +12,7 @@ import (
1212
1313const timeout = 10 * time .Second
1414
15+ // CodacyApiBase is the base URL for the Codacy API
1516var CodacyApiBase = "https://app.codacy.com"
1617
1718func getRequest (url string , apiToken string ) ([]byte , error ) {
@@ -113,17 +114,17 @@ func parsePatternConfigurations(response []byte) ([]domain.PatternConfiguration,
113114 return nil , "" , fmt .Errorf ("failed to unmarshal response: %w" , err )
114115 }
115116
116- var patterns []domain.PatternDefinition
117- if err := json .Unmarshal (objmap ["data" ], & patterns ); err != nil {
117+ var patternResponses []domain.PatternResponse
118+ if err := json .Unmarshal (objmap ["data" ], & patternResponses ); err != nil {
118119 return nil , "" , fmt .Errorf ("failed to unmarshal patterns: %w" , err )
119120 }
120121
121- patternConfigurations := make ([]domain.PatternConfiguration , len (patterns ))
122- for i , pattern := range patterns {
122+ patternConfigurations := make ([]domain.PatternConfiguration , len (patternResponses ))
123+ for i , patternResp := range patternResponses {
123124 patternConfigurations [i ] = domain.PatternConfiguration {
124- PatternDefinition : pattern ,
125- Parameters : pattern .Parameters ,
126- Enabled : pattern .Enabled ,
125+ PatternDefinition : patternResp . PatternDefinition ,
126+ Parameters : patternResp .Parameters ,
127+ Enabled : patternResp .Enabled ,
127128 }
128129 }
129130
@@ -137,21 +138,26 @@ func parsePatternConfigurations(response []byte) ([]domain.PatternConfiguration,
137138 return patternConfigurations , pagination .Cursor , nil
138139}
139140
141+ // GetDefaultToolPatternsConfig fetches the default patterns for a tool
140142func GetDefaultToolPatternsConfig (initFlags domain.InitFlags , toolUUID string ) ([]domain.PatternConfiguration , error ) {
141143 baseURL := fmt .Sprintf ("%s/api/v3/tools/%s/patterns?enabled=true" , CodacyApiBase , toolUUID )
142144 return getAllPages (baseURL , initFlags , parsePatternConfigurations )
143145}
144146
147+ // GetRepositoryToolPatterns fetches the patterns for a tool in a repository
145148func GetRepositoryToolPatterns (initFlags domain.InitFlags , toolUUID string ) ([]domain.PatternConfiguration , error ) {
146149 baseURL := fmt .Sprintf ("%s/api/v3/analysis/organizations/%s/%s/repositories/%s/tools/%s/patterns?enabled=true" ,
147150 CodacyApiBase ,
148151 initFlags .Provider ,
149152 initFlags .Organization ,
150153 initFlags .Repository ,
151154 toolUUID )
152- return getAllPages (baseURL , initFlags , parsePatternConfigurations )
155+
156+ result , err := getAllPages (baseURL , initFlags , parsePatternConfigurations )
157+ return result , err
153158}
154159
160+ // GetRepositoryTools fetches the tools for a repository
155161func GetRepositoryTools (initFlags domain.InitFlags ) ([]domain.Tool , error ) {
156162 baseURL := fmt .Sprintf ("%s/api/v3/analysis/organizations/%s/%s/repositories/%s/tools" ,
157163 CodacyApiBase ,
@@ -175,6 +181,7 @@ func GetRepositoryTools(initFlags domain.InitFlags) ([]domain.Tool, error) {
175181 return toolsResponse .Data , nil
176182}
177183
184+ // GetToolsVersions fetches the tools versions
178185func GetToolsVersions () ([]domain.Tool , error ) {
179186 baseURL := fmt .Sprintf ("%s/api/v3/tools" , CodacyApiBase )
180187
@@ -192,6 +199,7 @@ func GetToolsVersions() ([]domain.Tool, error) {
192199 return toolsResponse .Data , nil
193200}
194201
202+ // GetRepositoryLanguages fetches the languages for a repository
195203func GetRepositoryLanguages (initFlags domain.InitFlags ) ([]domain.Language , error ) {
196204 baseURL := fmt .Sprintf ("%s/api/v3/organizations/%s/%s/repositories/%s/settings/languages" ,
197205 CodacyApiBase ,
0 commit comments