From e60bddf6502bbfac5af3fb993acc100439c0d90f Mon Sep 17 00:00:00 2001 From: Michael Vorburger Date: Tue, 7 Oct 2025 21:08:18 +0200 Subject: [PATCH] fix: Use JsonBaseModel in FunctionTool (re. #473) --- .../java/com/google/adk/tools/FunctionCallingUtils.java | 4 +--- core/src/main/java/com/google/adk/tools/FunctionTool.java | 6 +++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/core/src/main/java/com/google/adk/tools/FunctionCallingUtils.java b/core/src/main/java/com/google/adk/tools/FunctionCallingUtils.java index 45fbf80b..fa26530c 100644 --- a/core/src/main/java/com/google/adk/tools/FunctionCallingUtils.java +++ b/core/src/main/java/com/google/adk/tools/FunctionCallingUtils.java @@ -23,7 +23,6 @@ import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.introspect.AnnotatedMember; import com.fasterxml.jackson.databind.introspect.BeanPropertyDefinition; -import com.fasterxml.jackson.datatype.jdk8.Jdk8Module; import com.google.adk.JsonBaseModel; import com.google.common.base.Strings; import com.google.genai.types.FunctionDeclaration; @@ -45,9 +44,8 @@ /** Utility class for function calling. */ public final class FunctionCallingUtils { - private static final ObjectMapper OBJECT_MAPPER = - new ObjectMapper().registerModule(new Jdk8Module()); private static final Logger logger = LoggerFactory.getLogger(FunctionCallingUtils.class); + private static final ObjectMapper OBJECT_MAPPER = JsonBaseModel.getMapper(); /** Holds the state during a single schema generation process to handle caching and recursion. */ private static class SchemaGenerationContext { diff --git a/core/src/main/java/com/google/adk/tools/FunctionTool.java b/core/src/main/java/com/google/adk/tools/FunctionTool.java index 3037ef40..73d22f8d 100644 --- a/core/src/main/java/com/google/adk/tools/FunctionTool.java +++ b/core/src/main/java/com/google/adk/tools/FunctionTool.java @@ -18,7 +18,7 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.datatype.jdk8.Jdk8Module; +import com.google.adk.JsonBaseModel; import com.google.adk.agents.InvocationContext; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; @@ -42,9 +42,9 @@ /** FunctionTool implements a customized function calling tool. */ public class FunctionTool extends BaseTool { - private static final ObjectMapper OBJECT_MAPPER = - new ObjectMapper().registerModule(new Jdk8Module()); + private static final Logger logger = LoggerFactory.getLogger(FunctionTool.class); + private static final ObjectMapper OBJECT_MAPPER = JsonBaseModel.getMapper(); @Nullable private final Object instance; private final Method func;