diff --git a/accounts/go.mod b/accounts/go.mod index 6b8978e64..a13239f3c 100644 --- a/accounts/go.mod +++ b/accounts/go.mod @@ -10,6 +10,7 @@ require ( github.com/gofrs/uuid v3.3.0+incompatible github.com/golang/protobuf v1.4.2 github.com/gopherjs/gopherjs v0.0.0-20190910122728-9d188e94fb99 // indirect + github.com/iancoleman/strcase v0.1.2 github.com/mennanov/fieldmask-utils v0.3.2 github.com/micro/cli/v2 v2.1.2 github.com/micro/go-micro/v2 v2.9.1 diff --git a/accounts/go.sum b/accounts/go.sum index 7f68192cb..07f8c42a2 100644 --- a/accounts/go.sum +++ b/accounts/go.sum @@ -613,6 +613,8 @@ github.com/huandu/xstrings v1.2.0 h1:yPeWdRnmynF7p+lLYz0H2tthW9lqhMJrQV/U7yy4wX0 github.com/huandu/xstrings v1.2.0/go.mod h1:DvyZB1rfVYsBIigL8HwpZgxHwXozlTgGqn63UyNX5k4= github.com/huandu/xstrings v1.3.0 h1:gvV6jG9dTgFEncxo+AF7PH6MZXi/vZl25owA/8Dg8Wo= github.com/huandu/xstrings v1.3.0/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= +github.com/iancoleman/strcase v0.1.2 h1:gnomlvw9tnV3ITTAxzKSgTF+8kFWcU/f+TgttpXGz1U= +github.com/iancoleman/strcase v0.1.2/go.mod h1:SK73tn/9oHe+/Y0h39VT4UCxmurVJkR5NA7kMEAOgSE= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/iij/doapi v0.0.0-20190504054126-0bbf12d6d7df/go.mod h1:QMZY7/J/KSQEhKWFeDesPjMj+wCHReeknARU3wqlyN4= github.com/imdario/mergo v0.3.7/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= diff --git a/accounts/pkg/indexer/indexer.go b/accounts/pkg/indexer/indexer.go index 9edbc2b0a..efb5388b5 100644 --- a/accounts/pkg/indexer/indexer.go +++ b/accounts/pkg/indexer/indexer.go @@ -5,6 +5,7 @@ import ( "fmt" "path" + "github.com/iancoleman/strcase" "github.com/owncloud/ocis/accounts/pkg/config" "github.com/owncloud/ocis/accounts/pkg/indexer/errors" "github.com/owncloud/ocis/accounts/pkg/indexer/index" @@ -106,7 +107,7 @@ func (i Indexer) FindBy(t interface{}, field string, val string) ([]string, erro typeName := getTypeFQN(t) resultPaths := make([]string, 0) if fields, ok := i.indices[typeName]; ok { - for _, idx := range fields.IndicesByField[field] { + for _, idx := range fields.IndicesByField[strcase.ToCamel(field)] { idxVal := val res, err := idx.Lookup(idxVal) if err != nil { @@ -155,7 +156,7 @@ func (i Indexer) FindByPartial(t interface{}, field string, pattern string) ([]s typeName := getTypeFQN(t) resultPaths := make([]string, 0) if fields, ok := i.indices[typeName]; ok { - for _, idx := range fields.IndicesByField[field] { + for _, idx := range fields.IndicesByField[strcase.ToCamel(field)] { res, err := idx.Search(pattern) if err != nil { if errors.IsNotFoundErr(err) { diff --git a/ocis/go.sum b/ocis/go.sum index 3cbe3bd16..9e06452f8 100644 --- a/ocis/go.sum +++ b/ocis/go.sum @@ -743,6 +743,8 @@ github.com/huandu/xstrings v1.3.1/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq github.com/huandu/xstrings v1.3.2 h1:L18LIDzqlW6xN2rEkpdV8+oL/IXWJ1APd+vsdYy4Wdw= github.com/huandu/xstrings v1.3.2/go.mod h1:y5/lhBue+AyNmUVz9RLU9xbLR0o4KIIExikq4ovT0aE= github.com/iancoleman/strcase v0.0.0-20180726023541-3605ed457bf7/go.mod h1:SK73tn/9oHe+/Y0h39VT4UCxmurVJkR5NA7kMEAOgSE= +github.com/iancoleman/strcase v0.1.2 h1:gnomlvw9tnV3ITTAxzKSgTF+8kFWcU/f+TgttpXGz1U= +github.com/iancoleman/strcase v0.1.2/go.mod h1:SK73tn/9oHe+/Y0h39VT4UCxmurVJkR5NA7kMEAOgSE= github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= github.com/iij/doapi v0.0.0-20190504054126-0bbf12d6d7df/go.mod h1:QMZY7/J/KSQEhKWFeDesPjMj+wCHReeknARU3wqlyN4= github.com/ijc/Gotty v0.0.0-20170406111628-a8b993ba6abd/go.mod h1:3LVOLeyx9XVvwPgrt2be44XgSqndprz1G18rSk8KD84=