8000 fix(log): fixes from PR comments · googleapis/sdk-platform-java@854f34a · GitHub
[go: up one dir, main page]

Skip to content

Commit 854f34a

Browse files
committed
fix(log): fixes from PR comments
- added rest of logger statements (1 per if-statement) - used getExecutorThreadCount() to log number of threads - moved logging utils to its own class
1 parent 8e41925 commit 854f34a

File tree

6 files changed

+206
-266
lines changed

6 files changed

+206
-266
lines changed

src/main/java/com/google/api/generator/spring/SpringWriter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
import com.google.api.generator.gapic.model.GapicClass;
2121
import com.google.api.generator.gapic.model.GapicContext;
2222
import com.google.api.generator.gapic.model.GapicPackageInfo;
23-
import com.google.api.generator.spring.composer.Utils;
23+
import com.google.api.generator.spring.utils.Utils;
2424
import com.google.protobuf.ByteString;
2525
import com.google.protobuf.compiler.PluginProtos.CodeGeneratorResponse;
2626
import com.google.protobuf.util.JsonFormat;

src/main/java/com/google/api/generator/spring/composer/SpringAutoConfigClassComposer.java

Lines changed: 33 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,8 @@
4848
import com.google.api.generator.gapic.model.GapicContext;
4949
import com.google.api.generator.gapic.model.GapicServiceConfig;
5050
import com.google.api.generator.gapic.model.Service;
51+
import com.google.api.generator.spring.utils.LoggerUtils;
52+
import com.google.api.generator.spring.utils.Utils;
5153
import com.google.common.base.CaseFormat;
5254
import com.google.common.base.Joiner;
5355
import com.google.common.collect.ImmutableMap;
@@ -145,39 +147,10 @@ private static List<Statement> createMemberVariables(
145147
.build();
146148
ExprStatement clientPropertiesStatement = ExprStatement.withExpr(clientPropertiesVarExpr);
147149

148-
// // private final GcpProjectIdProvider projectIdProvider;
149-
// Variable projectIdProviderVar =
150-
// Variable.builder()
151-
// .setName("projectIdProvider")
152-
// .setType(types.get("GcpProjectIdProvider"))
153-
// .build();
154-
// VariableExpr projectIdProviderVarExpr =
155-
// VariableExpr.builder()
156-
// .setVariable(projectIdProviderVar)
157-
// .setScope(ScopeNode.PRIVATE)
158-
// .setIsFinal(true)
159-
// .setIsDecl(true)
160-
// .build();
161-
// ExprStatement projectIdProviderStatement = ExprStatement.withExpr(projectIdProviderVarExpr);
162-
163-
// Declare the RETRY_PARAM_DEFINITIONS map.
164-
ExprStatement retryPramStatement =
165-
ExprStatement.withExpr(
166-
NESTED_RETRY_PARAM_DEFINITIONS_VAR_EXPR
167-
.toBuilder()
168-
.setIsDecl(true)
169-
.setScope(ScopeNode.PRIVATE)
170-
.setIsStatic(true)
171-
.setIsFinal(true)
172-
.build());
173-
174-
BlockStatement retryParamDefinitionsBlock =
175-
RetrySettingsComposer.createRetryParamDefinitionsBlock(
176-
service, serviceConfig, NESTED_RETRY_PARAM_DEFINITIONS_VAR_EXPR);
177150

178-
Statement loggerStatement = Utils.getLoggerDeclarationExpr(serviceName + "AutoConfig", types);
179-
return Arrays.asList(
180-
clientPropertiesStatement, retryPramStatement, retryParamDefinitionsBlock, loggerStatement);
151+
Statement loggerStatement =
152+
LoggerUtils.getLoggerDeclarationExpr(serviceName + "AutoConfig", types);
153+
return Arrays.asList(clientPropertiesStatement, loggerStatement);
181154
}
182155

183156
private static MethodDefinition createConstructor(
@@ -578,14 +551,12 @@ private static MethodDefinition createClientBeanMethod(
578551
.build();
579552

580553
ExprStatement projectIdLoggerStatement =
581-
Utils.createLoggerStatement(
582-
ArithmeticOperationExpr.concatWithExprs(
583-
ValueExpr.withValue(StringObjectValue.withValue("Quota project id set to X")),
584-
ArithmeticOperationExpr.concatWithExprs(
585-
getQuotaProjectId,
586-
ValueExpr.withValue(
587-
StringObjectValue.withValue(
588-
", this overrides project id from credentials.")))),
554+
LoggerUtils.createLoggerStatement(
555+
LoggerUtils.concatManyWithExprs(
556+
ValueExpr.withValue(StringObjectValue.withValue("Quota project id set to ")),
557+
getQuotaProjectId,
558+
ValueExpr.withValue(
559+
StringObjectValue.withValue(", this overrides project id from credentials."))),
589560
types);
590561

591562
IfStatement setQuotaProjectIdStatement =
@@ -650,22 +621,12 @@ private static MethodDefinition createClientBeanMethod(
650621
.setArguments(executorProviderVarExpr)
651622
.build();
652623

653-
MethodInvocationExpr getExecutorNameExpr =
654-
MethodInvocationExpr.builder()
655-
.setExprReferenceExpr(executorProviderVarExpr)
656-
.setMethodName("getClass")
657-
.build();
658-
getExecutorNameExpr =
659-
MethodInvocationExpr.builder()
660-
.setExprReferenceExpr(getExecutorNameExpr)
661-
.setMethodName("getName")
662-
.setReturnType(TypeNode.STRING)
663-
.build();
664624
ExprStatement backgroundExecutorLoggerStatement =
665-
Utils.createLoggerStatement(
625+
LoggerUtils.createLoggerStatement(
666626
ArithmeticOperationExpr.concatWithExprs(
667-
ValueExpr.withValue(StringObjectValue.withValue("Background executor set to ")),
668-
getExecutorNameExpr),
627+
ValueExpr.withValue(
628+
StringObjectValue.withValue("Background executor thread count is ")),
629+
getExecutorThreadCount),
669630
types);
670631
IfStatement setBackgroundExecutorProviderStatement =
671632
createIfStatement(
@@ -711,7 +672,14 @@ private static MethodDefinition createClientBeanMethod(
711672
.build();
712673
IfStatement setTransportChannelProviderStatement =
713674
createIfStatement(
714-
getUseRest, Arrays.asList(ExprStatement.withExpr(setTransportProvider)), null);
675+
getUseRest,
676+
Arrays.asList(
677+
ExprStatement.withExpr(setTransportProvider),
678+
LoggerUtils.createLoggerStatement(
679+
ValueExpr.withValue(
680+
StringObjectValue.withValue("Using HTTP transport channel")),
681+
types)),
682+
null);
715683

716684
bodyStatements.add(setTransportChannelProviderStatement);
717685

@@ -768,7 +736,14 @@ private static MethodDefinition createClientBeanMethod(
768736
IfStatement currentRetrySettingPropertyIfStatement =
769737
createIfStatement(
770738
currentRetrySettingPropertyIsNull,
771-
Arrays.asList(ExprStatement.withExpr(retrySettingsBuilderChain)),
739+
Arrays.asList(
740+
ExprStatement.withExpr(retrySettingsBuilderChain),
741+
LoggerUtils.createLoggerStatement(
742+
LoggerUtils.concatManyWithExprs(
743+
ValueExpr.withValue(
744+
StringObjectValue.withValue(propertyName + " set to ")),
745+
currentRetrySettingProperty),
746+
types)),
772747
null);
773748
statements.add(currentRetrySettingPropertyIfStatement);
774749
return statements;
@@ -1000,6 +975,8 @@ private static Map<String, TypeNode> createDynamicTypes(Service service, String
1000975
typeMap.put("ConditionalOnProperty", conditionalOnProperty);
1001976
typeMap.put("ConditionalOnClass", conditionalOnClass);
1002977
typeMap.put("Qualifier", qualifier);
978+
typeMap.put("Log", LoggerUtils.getLoggerType());
979+
typeMap.put("LogFactory", LoggerUtils.getLoggerFactoryType());
1003980

1004981
return typeMap;
1005982
}

src/main/java/com/google/api/generator/spring/composer/SpringPropertiesClassComposer.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
import com.google.api.generator.gapic.model.GapicContext;
4242
import com.google.api.generator.gapic.model.GapicServiceConfig;
4343
import com.google.api.generator.gapic.model.Service;
44+
import com.google.api.generator.spring.utils.Utils;
4445
import com.google.common.base.CaseFormat;
4546
import com.google.common.base.Joiner;
4647
import java.util.ArrayList;
Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
package com.google.api.generator.spring.utils;
2+
3+
import com.google.api.generator.engine.ast.ArithmeticOperationExpr;
4+
import com.google.api.generator.engine.ast.AssignmentExpr;
5+
import com.google.api.generator.engine.ast.Expr;
6+
import com.google.api.generator.engine.ast.ExprStatement;
7+
import com.google.api.generator.engine.ast.MethodInvocationExpr;
8+
import com.google.api.generator.engine.ast.ScopeNode;
9+
import com.google.api.generator.engine.ast.Statement;
10+
import com.google.api.generator.engine.ast.TypeNode;
11+
import com.google.api.generator.engine.ast.VaporReference;
12+
import com.google.api.generator.engine.ast.Variable;
13+
import com.google.api.generator.engine.ast.VariableExpr;
14+
import java.util.Arrays;
15+
import java.util.List;
16+
import java.util.Map;
17+
import java.util.Optional;
18+
19+
public class LoggerUtils {
20+
21+
public static Statement getLoggerDeclarationExpr(String className, Map<String, TypeNode> types) {
22+
23+
Variable loggerVar = Variable.builder().setName("LOGGER").setType(types.get("Log")).build();
24+
VariableExpr loggerExpr =
25+
VariableExpr.builder()
26+
.setVariable(loggerVar)
27+
.setScope(ScopeNode.PRIVATE)
28+
.setIsStatic(true)
29+
.setIsFinal(true)
30+
.setIsDecl(true)
31+
.build();
32+
33+
MethodInvocationExpr loggerValueExpr =
34+
MethodInvocationExpr.builder()
35+
.setStaticReferenceType(types.get("LogFactory"))
36+
.setMethodName("getLog")
37+
.setArguments(
38+
VariableExpr.builder()
39+
.setVariable(
40+
Variable.builder().setType(TypeNode.CLASS_OBJECT).setName("class").build())
41+
.setStaticReferenceType(types.get(className))
42+
.build())
43+
.setReturnType(types.get("Log"))
44+
.build();
45+
46+
AssignmentExpr loggerAssignmentExpr =
47+
AssignmentExpr.builder().setVariableExpr(loggerExpr).setValueExpr(loggerValueExpr).build();
48+
49+
return ExprStatement.withExpr(loggerAssignmentExpr);
50+
}
51+
52+
public static ExprStatement createLoggerStatement(Expr value, Map<String, TypeNode> types) {
53+
Variable loggerVariable =
54+
Variable.builder().setName("LOGGER").setType(types.get("Log")).build();
55+
MethodInvocationExpr loggerCallExpr =
56+
MethodInvocationExpr.builder()
57+
.setExprReferenceExpr(VariableExpr.withVariable(loggerVariable))
58+
.setMethodName("info" FDCC )
59+
.setArguments(value)
60+
.build();
61+
return ExprStatement.withExpr(loggerCallExpr);
62+
}
63+
64+
public static TypeNode getLoggerType() {
65+
return createType("Log", "org.apache.commons.logging");
66+
}
67+
68+
public static TypeNode getLoggerFactoryType() {
69+
return createType("LogFactory", "org.apache.commons.logging");
70+
}
71+
72+
private static TypeNode createType(String className, String pakkage) {
73+
TypeNode loggerType =
74+
TypeNode.withReference(
75+
VaporReference.builder().setName(className).setPakkage(pakkage).build());
76+
return loggerType;
77+
}
78+
79+
public static Expr concatManyWithExprs(Expr... exprs) {
80+
List<Expr> exprList = Arrays.asList(exprs);
81+
return concatManyWithExprsHelper(Optional.empty(), exprList);
82+
}
83+
84+
private static Expr concatManyWithExprsHelper(Optional<Expr> current, List<Expr> exprs) {
85+
if (!current.isPresent()) {
86+
return concatManyWithExprsHelper(Optional.of(exprs.get(0)), exprs.subList(1, exprs.size()));
87+
}
88+
if (exprs.size() == 1) {
89+
return ArithmeticOperationExpr.concatWithExprs(current.get(), exprs.get(0));
90+
}
91+
return ArithmeticOperationExpr.concatWithExprs(
92+
current.get(),
93+
concatManyWithExprsHelper(Optional.of(exprs.get(0)), exprs.subList(1, exprs.size())));
94+
}
95+
}

src/main/java/com/google/api/generator/spring/composer/Utils.java renamed to src/main/java/com/google/api/generator/spring/utils/Utils.java

Lines changed: 1 addition & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -12,21 +12,14 @@
1212
// See the License for the specific language governing permissions and
1313
// limitations under the License.
1414

15-
package com.google.api.generator.spring.composer;
15+
package com.google.api.generator.spring.utils;
1616

17-
import com.google.api.generator.engine.ast.AssignmentExpr;
1817
import com.google.api.generator.engine.ast.AstNode;
1918
import com.google.api.generator.engine.ast.Expr;
20-
import com.google.api.generator.engine.ast.ExprStatement;
2119
import com.google.api.generator.engine.ast.MethodInvocationExpr;
2220
import com.google.api.generator.engine.ast.PrimitiveValue;
23-
import com.google.api.generator.engine.ast.ScopeNode;
24-
import com.google.api.generator.engine.ast.Statement;
2521
import com.google.api.generator.engine.ast.TypeNode;
2622
import com.google.api.generator.engine.ast.ValueExpr;
27-
import com.google.api.generator.engine.ast.VaporReference;
28-
import com.google.api.generator.engine.ast.Variable;
29-
import com.google.api.generator.engine.ast.VariableExpr;
3023
import com.google.api.generator.gapic.composer.store.TypeStore;
3124
import com.google.api.generator.gapic.model.GapicContext;
3225
import com.google.api.generator.gapic.model.GapicRetrySettings;
@@ -42,7 +35,6 @@
4235
import java.util.ArrayList;
4336
import java.util.Arrays;
4437
import java.util.List;
45-
import java.util.Map;
4638
import java.util.function.BiFunction;
4739
import java.util.function.Function;
4840

@@ -144,56 +136,6 @@ public static List<? extends AstNode> processRetrySettings(
144136
return resultList;
145137
}
146138

147-
public static Statement getLoggerDeclarationExpr(String className, Map<String, TypeNode> types) {
148-
149-
Variable loggerVar = Variable.builder().setName("LOGGER").setType(types.get("Logger")).build();
150-
VariableExpr loggerExpr =
151-
VariableExpr.builder()
152-
.setVariable(loggerVar)
153-
.setScope(ScopeNode.PRIVATE)
154-
.setIsStatic(true)
155-
.setIsFinal(true)
156-
.setIsDecl(true)
157-
.build();
158-
159-
MethodInvocationExpr loggerValueExpr =
160-
MethodInvocationExpr.builder()
161-
.setStaticReferenceType(types.get("Logger"))
162-
.setMethodName("getLogger")
163-
.setArguments(
164-
VariableExpr.builder()
165-
.setVariable(
166-
Variable.builder().setType(TypeNode.CLASS_OBJECT).setName("class").build())
167-
.setStaticReferenceType(types.get(className))
168-
.build())
169-
.setReturnType(types.get("Logger"))
170-
.build();
171-
172-
AssignmentExpr loggerAssignmentExpr =
173-
AssignmentExpr.builder().setVariableExpr(loggerExpr).setValueExpr(loggerValueExpr).build();
174-
175-
return ExprStatement.withExpr(loggerAssignmentExpr);
176-
}
177-
178-
public static ExprStatement createLoggerStatement(Expr value, Map<String, TypeNode> types) {
179-
Variable loggerVariable =
180-
Variable.builder().setName("LOGGER").setType(types.get("Logger")).build();
181-
MethodInvocationExpr loggerCallExpr =
182-
MethodInvocationExpr.builder()
183-
.setExprReferenceExpr(VariableExpr.withVariable(loggerVariable))
184-
.setMethodName("info")
185-
.setArguments(value)
186-
.build();
187-
return ExprStatement.withExpr(loggerCallExpr);
188-
}
189-
190-
public static TypeNode getLoggerType() {
191-
TypeNode loggerType =
192-
TypeNode.withReference(
193-
VaporReference.builder().setName("Logger").setPakkage("org.slf4j").build());
194-
return loggerType;
195-
}
196-
197139
private static ValueExpr toValExpr(long longValue) {
198140
return ValueExpr.withValue(
199141
PrimitiveValue.builder()

0 commit comments

Comments
 (0)
0