enum.go 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. package java
  2. const enumConstTpl = `{{ $ctx := . }}{{ $f := .Field }}{{ $r := .Rules -}}
  3. {{- if $r.In }}
  4. private final {{ javaTypeFor . }}[] {{ constantName . "In" }} = new {{ javaTypeFor . }}[]{
  5. {{- range $r.In }}
  6. {{ javaTypeFor $ctx }}.forNumber({{- sprintf "%v" . -}}),
  7. {{- end }}
  8. };
  9. {{- end -}}
  10. {{- if $r.NotIn }}
  11. private final {{ javaTypeFor . }}[] {{ constantName . "NotIn" }} = new {{ javaTypeFor . }}[]{
  12. {{- range $r.NotIn }}
  13. {{ javaTypeFor $ctx }}.forNumber({{- sprintf "%v" . -}}),
  14. {{- end }}
  15. };
  16. {{- end -}}`
  17. const enumTpl = `{{ $f := .Field }}{{ $r := .Rules -}}
  18. {{- if $r.Const }}
  19. io.envoyproxy.pgv.ConstantValidation.constant("{{ $f.FullyQualifiedName }}", {{ accessor . }},
  20. {{ javaTypeFor . }}.forNumber({{ $r.GetConst }}));
  21. {{- end -}}
  22. {{- if $r.GetDefinedOnly }}
  23. io.envoyproxy.pgv.EnumValidation.definedOnly("{{ $f.FullyQualifiedName }}", {{ accessor . }});
  24. {{- end -}}
  25. {{- if $r.In }}
  26. io.envoyproxy.pgv.CollectiveValidation.in("{{ $f.FullyQualifiedName }}", {{ accessor . }}, {{ constantName . "In" }});
  27. {{- end -}}
  28. {{- if $r.NotIn }}
  29. io.envoyproxy.pgv.CollectiveValidation.notIn("{{ $f.FullyQualifiedName }}", {{ accessor . }}, {{ constantName . "NotIn" }});
  30. {{- end -}}
  31. `