Skip to content

Commit 26163cd

Browse files
committed
Make getJavaOuterClassname() public
1 parent 97173f3 commit 26163cd

File tree

1 file changed

+14
-16
lines changed

1 file changed

+14
-16
lines changed

jprotoc/jprotoc/src/main/java/com/salesforce/jprotoc/ProtoTypeMap.java

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -44,21 +44,13 @@ public static ProtoTypeMap of(@Nonnull Collection<DescriptorProtos.FileDescripto
4444
final DescriptorProtos.FileOptions fileOptions = fileDescriptor.getOptions();
4545

4646
final String protoPackage = fileDescriptor.hasPackage() ? "." + fileDescriptor.getPackage() : "";
47-
final String javaPackage = Strings.emptyToNull(
48-
fileOptions.hasJavaPackage() ?
49-
fileOptions.getJavaPackage() :
50-
fileDescriptor.getPackage());
51-
final String enclosingClassName =
52-
fileOptions.getJavaMultipleFiles() ?
53-
null :
54-
getJavaOuterClassname(fileDescriptor, fileOptions);
55-
47+
final String javaPackage = Strings.emptyToNull(fileOptions.hasJavaPackage() ? fileOptions.getJavaPackage() : fileDescriptor.getPackage());
48+
final String enclosingClassName = fileOptions.getJavaMultipleFiles() ? null : getJavaOuterClassname(fileDescriptor);
5649

5750
// Identify top-level enums
58-
fileDescriptor.getEnumTypeList().forEach(
59-
e -> types.put(
60-
protoPackage + "." + e.getName(),
61-
DOT_JOINER.join(javaPackage, enclosingClassName, e.getName())));
51+
fileDescriptor.getEnumTypeList().forEach(e -> types.put(
52+
protoPackage + "." + e.getName(),
53+
DOT_JOINER.join(javaPackage, enclosingClassName, e.getName())));
6254

6355
// Identify top-level messages, and nested types
6456
fileDescriptor.getMessageTypeList().forEach(
@@ -102,9 +94,15 @@ public String toJavaTypeName(@Nonnull String protoTypeName) {
10294
return types.get(protoTypeName);
10395
}
10496

105-
private static String getJavaOuterClassname(
106-
DescriptorProtos.FileDescriptorProto fileDescriptor,
107-
DescriptorProtos.FileOptions fileOptions) {
97+
/**
98+
* Computes the Java outer class name for a given FileDescriptorProto, for use when multiple classes are generated
99+
* in the same outer class.
100+
* @param fileDescriptor
101+
* @return
102+
*/
103+
public static String getJavaOuterClassname(DescriptorProtos.FileDescriptorProto fileDescriptor) {
104+
Preconditions.checkNotNull(fileDescriptor, "fileDescriptor");
105+
DescriptorProtos.FileOptions fileOptions = fileDescriptor.getOptions();
108106

109107
if (fileOptions.hasJavaOuterClassname()) {
110108
return fileOptions.getJavaOuterClassname();

0 commit comments

Comments
 (0)