func CovertSwaggerMethordToLocalMethord()

in proxy/protocol/dubbo/schema/schema.go [135:176]


func CovertSwaggerMethordToLocalMethord(schema *registry.SchemaContent, src *registry.MethodInfo, dst *DefMethod) {
	dst.OperaID = src.OperationID
	tmpParas := make([]MethParam, len(src.Parameters))
	i := 0
	for _, para := range src.Parameters {
		var defPara MethParam
		defPara.Name = para.Name
		if para.Type == "" {
			if para.Schema.Type != "" {
				defPara.Dtype = para.Schema.Type
			} else {
				defPara.Dtype = "object"
				if para.Schema.Reference != "" {
					defPara.ObjRef = GetDefTypeFromDef(schema.Definition, para.Schema.Reference)
				}
			}
		} else {
			defPara.Dtype = para.Type
		}
		defPara.Required = para.Required
		defPara.Where = para.In
		defPara.Indx = i
		tmpParas[i] = defPara
		i++
	}
	dst.Paras = tmpParas
	tmpRsps := make(map[string]*MethRespond)
	for key, rsp := range src.Response {
		var defRsp MethRespond
		if dtype, ok := rsp.Schema["type"]; ok {
			defRsp.DType = dtype
		} else {
			defRsp.DType = "object"
			if dRef, ok := rsp.Schema["$ref"]; ok {
				defRsp.ObjRef = GetDefTypeFromDef(schema.Definition, dRef)
			}
		}
		defRsp.Status = key
		tmpRsps[key] = &defRsp
	}
	dst.Responds = tmpRsps
}