mirror of https://github.com/go-gitea/gitea.git
54 lines
1.7 KiB
Go
54 lines
1.7 KiB
Go
// Copyright 2015 go-swagger maintainers
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
package generate
|
|
|
|
import (
|
|
"errors"
|
|
"log"
|
|
)
|
|
|
|
// Model the generate model file command
|
|
type Model struct {
|
|
shared
|
|
Name []string `long:"name" short:"n" description:"the model to generate"`
|
|
NoStruct bool `long:"skip-struct" description:"when present will not generate the model struct"`
|
|
DumpData bool `long:"dump-data" description:"when present dumps the json for the template generator instead of generating files"`
|
|
SkipValidation bool `long:"skip-validation" description:"skips validation of spec prior to generation"`
|
|
}
|
|
|
|
// Execute generates a model file
|
|
func (m *Model) Execute(args []string) error {
|
|
|
|
if m.DumpData && len(m.Name) > 1 {
|
|
return errors.New("only 1 model at a time is supported for dumping data")
|
|
}
|
|
|
|
if m.ExistingModels != "" {
|
|
log.Println("warning: Ignoring existing-models flag when generating models.")
|
|
}
|
|
s := &Server{
|
|
shared: m.shared,
|
|
Models: m.Name,
|
|
DumpData: m.DumpData,
|
|
ExcludeMain: true,
|
|
ExcludeSpec: true,
|
|
SkipSupport: true,
|
|
SkipOperations: true,
|
|
SkipModels: m.NoStruct,
|
|
SkipValidation: m.SkipValidation,
|
|
}
|
|
return s.Execute(args)
|
|
}
|