Skip to content

Commit 08c0e72

Browse files
Added CodePath parameter to code and documentation generation
1 parent eeb9720 commit 08c0e72

File tree

1 file changed

+17
-10
lines changed

1 file changed

+17
-10
lines changed

cli/cli.go

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ func (c *Cli) parseGenerateArgs() {
7676
generateDocsCmd := flag.NewFlagSet("generateCode", flag.ExitOnError)
7777
lang := generateDocsCmd.String("language", "", "Programming language: JavaScript, Java, Kotlin")
7878
replace := generateDocsCmd.Bool("replace", false, "Determines if the existing code is replaced")
79+
codePath := generateDocsCmd.String("codepath", "", "The codepath to match.")
7980

8081
err := generateDocsCmd.Parse(os.Args[3:])
8182
if err != nil {
@@ -98,14 +99,15 @@ func (c *Cli) parseGenerateArgs() {
9899
cl := c.createClient(*config)
99100
files := generateDocsCmd.Args()[0:]
100101

101-
if err := c.generateCode(cl, lang, replace, files); err != nil {
102+
if err := c.generateCode(cl, lang, replace, codePath, files); err != nil {
102103
c.logger.Errorf("Could not generate the code %v", err)
103104
}
104105
break
105106
case "docs":
106107
generateDocsCmd := flag.NewFlagSet("generateDocs", flag.ExitOnError)
107108
lang := generateDocsCmd.String("language", "", "Programming language: JavaScript, Java, Kotlin")
108109
replace := generateDocsCmd.Bool("replace", false, "Determines if the existing documentations are replaced")
110+
codePath := generateDocsCmd.String("codepath", "", "The codepath to match.")
109111

110112
err := generateDocsCmd.Parse(os.Args[3:])
111113
if err != nil {
@@ -128,7 +130,7 @@ func (c *Cli) parseGenerateArgs() {
128130
cl := c.createClient(*config)
129131
files := generateDocsCmd.Args()[0:]
130132

131-
if err := c.generateDocumentation(cl, lang, replace, files); err != nil {
133+
if err := c.generateDocumentation(cl, lang, replace, codePath, files); err != nil {
132134
c.logger.Errorf("Could not generate the documentation %v", err)
133135
}
134136
break
@@ -251,7 +253,7 @@ func (c *Cli) parseRefactorArgs() {
251253
}
252254
}
253255

254-
func (c *Cli) generateCode(cl client.Client, lang *string, replace *bool, files []string) error {
256+
func (c *Cli) generateCode(cl client.Client, lang *string, replace *bool, codePath *string, files []string) error {
255257
return c.walkPath(files, func(file string) error {
256258
if lang == nil || len(*lang) == 0 {
257259
actLang, err := languageFromExtension(filepath.Ext(file))
@@ -267,7 +269,7 @@ func (c *Cli) generateCode(cl client.Client, lang *string, replace *bool, files
267269
return err
268270
}
269271

270-
output, err := c.process(cl, client.ModeCode, *lang, *replace, "", source)
272+
output, err := c.process(cl, client.ModeCode, *lang, *replace, codePath, "", source)
271273
if err != nil {
272274
return err
273275
}
@@ -280,7 +282,7 @@ func (c *Cli) generateCode(cl client.Client, lang *string, replace *bool, files
280282
})
281283
}
282284

283-
func (c *Cli) generateDocumentation(cl client.Client, lang *string, replace *bool, files []string) error {
285+
func (c *Cli) generateDocumentation(cl client.Client, lang *string, replace *bool, codePath *string, files []string) error {
284286
return c.walkPath(files, func(file string) error {
285287
if lang == nil || len(*lang) == 0 {
286288
actLang, err := languageFromExtension(filepath.Ext(file))
@@ -296,7 +298,7 @@ func (c *Cli) generateDocumentation(cl client.Client, lang *string, replace *boo
296298
return err
297299
}
298300

299-
output, err := c.process(cl, client.ModeDocument, *lang, *replace, "", source)
301+
output, err := c.process(cl, client.ModeDocument, *lang, *replace, codePath, "", source)
300302
if err != nil {
301303
return err
302304
}
@@ -327,7 +329,7 @@ func (c *Cli) generateTests(cl client.Client, lang *string, files []string, outp
327329
return err
328330
}
329331

330-
output, err := c.process(cl, client.ModeUnitTest, *lang, false, "", source)
332+
output, err := c.process(cl, client.ModeUnitTest, *lang, false, nil, "", source)
331333
if err != nil {
332334
c.logger.Errorf("failed to generate documentation for file %s %v", file, err)
333335
return err
@@ -376,7 +378,7 @@ func (c *Cli) migrateSyntax(cl client.Client, lang *string, langVer *string, fil
376378
return nil
377379
}
378380

379-
output, err := c.process(cl, client.ModeMigrateSyntax, *lang, false, *langVer, source)
381+
output, err := c.process(cl, client.ModeMigrateSyntax, *lang, false, nil, *langVer, source)
380382
if err != nil {
381383
c.logger.Errorf("failed to migrate syntax in file %s %v", file, err)
382384
return nil
@@ -408,7 +410,7 @@ func (c *Cli) refactorNaming(cl client.Client, lang *string, files []string) err
408410
return nil
409411
}
410412

411-
output, err := c.process(cl, client.ModeRefactorNaming, *lang, false, "", source)
413+
output, err := c.process(cl, client.ModeRefactorNaming, *lang, false, nil, "", source)
412414
if err != nil {
413415
c.logger.Errorf("failed to rename variables in file %s %v", file, err)
414416
return nil
@@ -422,12 +424,16 @@ func (c *Cli) refactorNaming(cl client.Client, lang *string, files []string) err
422424
})
423425
}
424426

425-
func (c *Cli) process(cl client.Client, mode string, lang string, replace bool, langVer string, source string) (*string, error) {
427+
func (c *Cli) process(cl client.Client, mode string, lang string, replace bool, codePath *string, langVer string, source string) (*string, error) {
426428
modify := client.ModifyNone
427429
if replace {
428430
modify = client.ModifyReplace
429431
}
430432

433+
if codePath == nil || len(*codePath) == 0 {
434+
codePath = nil
435+
}
436+
431437
process, err := cl.CreateProcess(&client.CreateProcessRequest{
432438
Process: client.Process{
433439
Mode: mode,
@@ -438,6 +444,7 @@ func (c *Cli) process(cl client.Client, mode string, lang string, replace bool,
438444
Options: &client.Options{
439445
LanguageVersion: &langVer,
440446
Modify: &modify,
447+
CodePath: codePath,
441448
},
442449
},
443450
})

0 commit comments

Comments
 (0)