From 27ea6dfce913ae3ee6bf23052130081a824af465 Mon Sep 17 00:00:00 2001 From: weiyang Date: Mon, 21 Aug 2017 18:22:49 +0800 Subject: [PATCH] [g_docs] Redefine 'swagger.Definitions' Signed-off-by: weiyang --- generate/swaggergen/g_docs.go | 28 ++++++++-------------------- 1 file changed, 8 insertions(+), 20 deletions(-) diff --git a/generate/swaggergen/g_docs.go b/generate/swaggergen/g_docs.go index e737196..de114dd 100644 --- a/generate/swaggergen/g_docs.go +++ b/generate/swaggergen/g_docs.go @@ -47,28 +47,21 @@ const ( aform = "multipart/form-data" ) +// Swagger redefines definitions +type Swagger struct { + swagger.Swagger + Definitions spec.Definitions `json:"definitions,omitempty" yaml:"definitions,omitempty"` +} + var pkgCache map[string]struct{} //pkg:controller:function:comments comments: key:value var controllerComments map[string]string var importlist map[string]string var controllerList map[string]map[string]*swagger.Item //controllername Paths items -var rootapi swagger.Swagger +var rootapi Swagger var tparser *tspec.Parser var controllerPkg *ast.Package -func convertSpecDefinitions(specDefs spec.Definitions) (defs map[string]swagger.Schema, err error) { - bytes, err := json.Marshal(specDefs) - if err != nil { - return - } - defs = make(map[string]swagger.Schema) - err = json.Unmarshal(bytes, &defs) - if err != nil { - return - } - return -} - func parseModel(pkg *ast.Package, typeStr string) (typeTitle string, err error) { if pkg == nil { panic("pkg can not be nil") @@ -278,12 +271,7 @@ func GenerateDocs(curpath string) { } } } - defs, err := convertSpecDefinitions(tparser.Definitions()) - if err != nil { - msg := fmt.Sprintf("failed to convert spec definitions into swagger definitions: %s", err) - panic(msg) - } - rootapi.Definitions = defs + rootapi.Definitions = tparser.Definitions() os.Mkdir(path.Join(curpath, "swagger"), 0755) fd, err := os.Create(path.Join(curpath, "swagger", "swagger.json"))