Skip to content

Commit 6ef0c48

Browse files
committed
[Java] Tidy up common methods and add javadoc.
1 parent e6942df commit 6ef0c48

18 files changed

+77
-223
lines changed

sbe-tool/src/main/java/uk/co/real_logic/sbe/codec/java/MethodSelector.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@
2727
import java.util.Map;
2828
import java.util.Set;
2929

30+
/**
31+
* Selects sorted methods of a class that are annotated with {@link GroupOrder}.
32+
*/
3033
public class MethodSelector
3134
{
3235
private final Set<String> ignoredMethods;

sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/Generators.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@
2121
import java.util.List;
2222
import java.util.function.BiConsumer;
2323

24+
/**
25+
* Common operations available to all {@link CodeGenerator}s.
26+
*/
2427
public class Generators
2528
{
2629
/**

sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/NamedToken.java

Lines changed: 0 additions & 59 deletions
This file was deleted.

sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/TargetCodeGeneratorLoader.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,15 @@
2727

2828
import static uk.co.real_logic.sbe.SbeTool.*;
2929

30+
/**
31+
* Loader for {@link CodeGenerator}s which target a language. This provide convenient short names rather than the
32+
* fully qualified class name of the generator.
33+
*/
3034
public enum TargetCodeGeneratorLoader implements TargetCodeGenerator
3135
{
36+
/**
37+
* Generates codecs for the Java 8 programming language.
38+
*/
3239
JAVA()
3340
{
3441
public CodeGenerator newInstance(final Ir ir, final String outputDir)
@@ -44,6 +51,9 @@ public CodeGenerator newInstance(final Ir ir, final String outputDir)
4451
}
4552
},
4653

54+
/**
55+
* Generates codecs for the C11 programming language.
56+
*/
4757
C()
4858
{
4959
public CodeGenerator newInstance(final Ir ir, final String outputDir)
@@ -52,6 +62,9 @@ public CodeGenerator newInstance(final Ir ir, final String outputDir)
5262
}
5363
},
5464

65+
/**
66+
* Generates codecs for the C++11 programming language with some conditional includes for C++14 and C++17.
67+
*/
5568
CPP()
5669
{
5770
public CodeGenerator newInstance(final Ir ir, final String outputDir)
@@ -60,6 +73,9 @@ public CodeGenerator newInstance(final Ir ir, final String outputDir)
6073
}
6174
},
6275

76+
/**
77+
* Generates codecs for the Go programming language.
78+
*/
6379
GOLANG()
6480
{
6581
public CodeGenerator newInstance(final Ir ir, final String outputDir)

sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/c/CGenerator.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,14 @@
3131
import java.util.ArrayList;
3232
import java.util.List;
3333

34+
import static uk.co.real_logic.sbe.generation.Generators.toLowerFirstChar;
35+
import static uk.co.real_logic.sbe.generation.Generators.toUpperFirstChar;
3436
import static uk.co.real_logic.sbe.generation.c.CUtil.*;
3537
import static uk.co.real_logic.sbe.ir.GenerationUtil.*;
3638

39+
/**
40+
* Codec generator for the C11 programming language.
41+
*/
3742
@SuppressWarnings("MethodLength")
3843
public class CGenerator implements CodeGenerator
3944
{

sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/c/CUtil.java

Lines changed: 2 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323
import java.util.EnumMap;
2424
import java.util.Map;
2525

26+
import static uk.co.real_logic.sbe.generation.Generators.toLowerFirstChar;
27+
2628
/**
2729
* Utilities for mapping between IR and the C language.
2830
*/
@@ -56,28 +58,6 @@ public static String cTypeName(final PrimitiveType primitiveType)
5658
return PRIMITIVE_TYPE_STRING_ENUM_MAP.get(primitiveType);
5759
}
5860

59-
/**
60-
* Uppercase the first character of a given String.
61-
*
62-
* @param str to have the first character upper cased.
63-
* @return a new String with the first character in uppercase.
64-
*/
65-
public static String toUpperFirstChar(final String str)
66-
{
67-
return Character.toUpperCase(str.charAt(0)) + str.substring(1);
68-
}
69-
70-
/**
71-
* Lowercase the first character of a given String.
72-
*
73-
* @param str to have the first character upper cased.
74-
* @return a new String with the first character in uppercase.
75-
*/
76-
public static String toLowerFirstChar(final String str)
77-
{
78-
return Character.toLowerCase(str.charAt(0)) + str.substring(1);
79-
}
80-
8161
/**
8262
* Format a String as a property name.
8363
*

sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/cpp/CppGenerator.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,14 @@
3333
import java.util.Formatter;
3434
import java.util.List;
3535

36+
import static uk.co.real_logic.sbe.generation.Generators.toLowerFirstChar;
37+
import static uk.co.real_logic.sbe.generation.Generators.toUpperFirstChar;
3638
import static uk.co.real_logic.sbe.generation.cpp.CppUtil.*;
3739
import static uk.co.real_logic.sbe.ir.GenerationUtil.*;
3840

41+
/**
42+
* Codec generator for the C++11 programming language with conditional complication for C++14 and C++17 features.
43+
*/
3944
@SuppressWarnings("MethodLength")
4045
public class CppGenerator implements CodeGenerator
4146
{

sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/cpp/CppUtil.java

Lines changed: 3 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,9 @@
2323
import java.util.EnumMap;
2424
import java.util.Map;
2525

26+
import static uk.co.real_logic.sbe.generation.Generators.toLowerFirstChar;
27+
import static uk.co.real_logic.sbe.generation.Generators.toUpperFirstChar;
28+
2629
/**
2730
* Utilities for mapping between IR and the C++ language.
2831
*/
@@ -56,28 +59,6 @@ public static String cppTypeName(final PrimitiveType primitiveType)
5659
return PRIMITIVE_TYPE_STRING_ENUM_MAP.get(primitiveType);
5760
}
5861

59-
/**
60-
* Uppercase the first character of a given String.
61-
*
62-
* @param str to have the first character upper cased.
63-
* @return a new String with the first character in uppercase.
64-
*/
65-
public static String toUpperFirstChar(final String str)
66-
{
67-
return Character.toUpperCase(str.charAt(0)) + str.substring(1);
68-
}
69-
70-
/**
71-
* Lowercase the first character of a given String.
72-
*
73-
* @param str to have the first character upper cased.
74-
* @return a new String with the first character in uppercase.
75-
*/
76-
public static String toLowerFirstChar(final String str)
77-
{
78-
return Character.toLowerCase(str.charAt(0)) + str.substring(1);
79-
}
80-
8162
/**
8263
* Format a String as a property name.
8364
*

sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/csharp/CSharp.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@
1919
import uk.co.real_logic.sbe.generation.TargetCodeGenerator;
2020
import uk.co.real_logic.sbe.ir.Ir;
2121

22+
/**
23+
* {@link CodeGenerator} factory for the CSharp target programming language.
24+
*/
2225
public class CSharp implements TargetCodeGenerator
2326
{
2427
public CodeGenerator newInstance(final Ir ir, final String outputDir)

sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/csharp/CSharpGenerator.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,16 @@
3030
import java.util.ArrayList;
3131
import java.util.List;
3232

33+
import static uk.co.real_logic.sbe.generation.Generators.toLowerFirstChar;
34+
import static uk.co.real_logic.sbe.generation.Generators.toUpperFirstChar;
3335
import static uk.co.real_logic.sbe.generation.csharp.CSharpUtil.*;
3436
import static uk.co.real_logic.sbe.ir.GenerationUtil.collectVarData;
3537
import static uk.co.real_logic.sbe.ir.GenerationUtil.collectGroups;
3638
import static uk.co.real_logic.sbe.ir.GenerationUtil.collectFields;
3739

40+
/**
41+
* Codec generator for the CSharp programming language.
42+
*/
3843
@SuppressWarnings("MethodLength")
3944
public class CSharpGenerator implements CodeGenerator
4045
{

0 commit comments

Comments
 (0)