Skip to content

Commit

Permalink
fix: same package for self
Browse files Browse the repository at this point in the history
  • Loading branch information
FGYFFFF committed Sep 1, 2022
1 parent ea63799 commit 63ec262
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 8 deletions.
13 changes: 9 additions & 4 deletions cmd/hz/internal/protobuf/resolver.go
Original file line number Diff line number Diff line change
Expand Up @@ -69,17 +69,22 @@ type PackageReference struct {
func getReferPkgMap(pkgMap map[string]string, incs []*descriptorpb.FileDescriptorProto) (map[string]*PackageReference, error) {
var err error
out := make(map[string]*PackageReference, len(pkgMap))
pkgAliasMap := make(map[string]string, len(incs))
for _, inc := range incs {
pkg := getGoPackage(inc, pkgMap)
path := inc.GetName()
base := util.BaseName(path, ".proto")
fileName := inc.GetName()
pkgName := util.BaseName(pkg, "")
pkgName, err = util.GetPackageUniqueName(pkgName)
if err != nil {
return nil, fmt.Errorf("get package unique name failed, err: %v", err)
if pn, exist := pkgAliasMap[pkg]; exist {
pkgName = pn
} else {
pkgName, err = util.GetPackageUniqueName(pkgName)
pkgAliasMap[pkg] = pkgName
if err != nil {
return nil, fmt.Errorf("get package unique name failed, err: %v", err)
}
}

out[fileName] = &PackageReference{base, path, &model.Model{
FilePath: path,
Package: pkg,
Expand Down
13 changes: 9 additions & 4 deletions cmd/hz/internal/thrift/resolver.go
Original file line number Diff line number Diff line change
Expand Up @@ -57,16 +57,21 @@ type PackageReference struct {
func getReferPkgMap(pkgMap map[string]string, incs []*parser.Include) (map[string]*PackageReference, error) {
var err error
out := make(map[string]*PackageReference, len(pkgMap))
pkgAliasMap := make(map[string]string, len(incs))
for _, inc := range incs {
pkg := getGoPackage(inc.Reference, pkgMap)
impt := inc.GetPath()
base := util.BaseNameAndTrim(impt)
pkgName := util.SplitPackageName(pkg, "")
pkgName, err = util.GetPackageUniqueName(pkgName)
if err != nil {
return nil, fmt.Errorf("get package unique name failed, err: %v", err)
if pn, exist := pkgAliasMap[pkg]; exist {
pkgName = pn
} else {
pkgName, err = util.GetPackageUniqueName(pkgName)
pkgAliasMap[pkg] = pkgName
if err != nil {
return nil, fmt.Errorf("get package unique name failed, err: %v", err)
}
}

out[base] = &PackageReference{base, impt, &model.Model{
FilePath: inc.Path,
Package: pkg,
Expand Down

0 comments on commit 63ec262

Please sign in to comment.