@Override public String getReroutedGrpcMethodName(MethodConfig methodConfig) { List<String> reroutes = Splitter.on('.').splitToList(methodConfig.getRerouteToGrpcInterface()); return Name.anyCamelKeepUpperAcronyms("create", reroutes.get(reroutes.size() - 1), "client") .toUpperCamel(); }
@Override public String getReroutedGrpcClientVarName(MethodConfig methodConfig) { String reroute = methodConfig.getRerouteToGrpcInterface(); if (reroute == null) { return "GrpcClient"; } else { List<String> reroutes = Splitter.on('.').splitToList(reroute); return Name.anyCamelKeepUpperAcronyms("grpc", reroutes.get(reroutes.size() - 1), "client") .toLowerCamel(); } }
@Override public String getReroutedGrpcTypeName(ImportTypeTable typeTable, MethodConfig methodConfig) { List<String> reroutes = Splitter.on('.').splitToList(methodConfig.getRerouteToGrpcInterface()); if (reroutes.size() > 2 && reroutes.get(0).equals("google") && !reroutes.get(1).equals("cloud")) { reroutes = new ArrayList<String>(reroutes); reroutes.add(1, "cloud"); } String rerouteLast = reroutes.get(reroutes.size() - 1); String name = Name.anyCamelKeepUpperAcronyms(rerouteLast).toUpperCamel() + "+" + Name.anyCamelKeepUpperAcronyms(rerouteLast, "client").toUpperCamel(); List<String> names = new ArrayList<>(); for (String reroute : reroutes) { names.add(Name.anyCamelKeepUpperAcronyms(reroute).toUpperCamel()); } String prefix = Joiner.on(".").join(names.subList(0, names.size() - 1)); String fullName = prefix + "." + name; return typeTable.getAndSaveNicknameFor(fullName); }
/** The name used in Grpc for the given API method. This needs to match what Grpc generates. */ public String getGrpcMethodName(MethodModel method) { // This might seem silly, but it makes clear what we're dealing with (upper camel). // This is language-independent because of gRPC conventions. return Name.anyCamelKeepUpperAcronyms(method.getSimpleName()).toUpperCamel(); }