This is an automated email from the ASF dual-hosted git repository.
jamesnetherton pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
The following commit(s) were added to refs/heads/main by this push:
new 49a067474d Migrate from deprecated
dev.langchain4j.guardrail.JsonExtractorOutputGuardrail to
dev.langchain4j.guardrails.JsonExtractorOutputGuardrail
49a067474d is described below
commit 49a067474d6b443f3d74041b3208d4f6a808ea54
Author: James Netherton <[email protected]>
AuthorDate: Wed Aug 5 15:48:39 2026 +0100
Migrate from deprecated
dev.langchain4j.guardrail.JsonExtractorOutputGuardrail to
dev.langchain4j.guardrails.JsonExtractorOutputGuardrail
---
.../langchain4j/deployment/SupportLangchain4jProcessor.java | 6 ++++--
.../langchain4j/deployment/SupportQuarkusLangchain4jProcessor.java | 7 ++++++-
.../agent/it/guardrail/TestPojoJsonExtractorOutputGuardrail.java | 2 +-
3 files changed, 11 insertions(+), 4 deletions(-)
diff --git
a/extensions-support/langchain4j/deployment/src/main/java/org/apache/camel/quarkus/component/support/langchain4j/deployment/SupportLangchain4jProcessor.java
b/extensions-support/langchain4j/deployment/src/main/java/org/apache/camel/quarkus/component/support/langchain4j/deployment/SupportLangchain4jProcessor.java
index ca0166aa4e..f76b6abbfb 100644
---
a/extensions-support/langchain4j/deployment/src/main/java/org/apache/camel/quarkus/component/support/langchain4j/deployment/SupportLangchain4jProcessor.java
+++
b/extensions-support/langchain4j/deployment/src/main/java/org/apache/camel/quarkus/component/support/langchain4j/deployment/SupportLangchain4jProcessor.java
@@ -31,7 +31,6 @@ import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.PropertyNamingStrategies;
import dev.langchain4j.agent.tool.Tool;
import dev.langchain4j.guardrail.InputGuardrail;
-import dev.langchain4j.guardrail.JsonExtractorOutputGuardrail;
import dev.langchain4j.guardrail.OutputGuardrail;
import dev.langchain4j.model.embedding.onnx.AbstractInProcessEmbeddingModel;
import dev.langchain4j.service.MemoryId;
@@ -69,6 +68,9 @@ import org.jboss.jandex.Type;
@BuildSteps(onlyIf = NativeOrNativeSourcesBuild.class)
class SupportLangchain4jProcessor {
+ static final DotName JSON_EXTRACTOR_OUTPUT_GUARDRAIL = DotName
+
.createSimple("dev.langchain4j.guardrails.JsonExtractorOutputGuardrail");
+
private static final Class<?>[] AI_SERVICE_ANNOTATION_CLASSES = {
MemoryId.class,
SystemMessage.class,
@@ -162,7 +164,7 @@ class SupportLangchain4jProcessor {
}
// Any types participating in JsonExtractorOutputGuardrail operations
require reflection
- index.getAllKnownSubclasses(JsonExtractorOutputGuardrail.class)
+ index.getAllKnownSubclasses(JSON_EXTRACTOR_OUTPUT_GUARDRAIL)
.stream()
.filter(classInfo -> classInfo.superClassType() != null)
.filter(classInfo ->
classInfo.superClassType().kind().equals(Type.Kind.PARAMETERIZED_TYPE))
diff --git
a/extensions-support/langchain4j/deployment/src/main/java/org/apache/camel/quarkus/component/support/langchain4j/deployment/SupportQuarkusLangchain4jProcessor.java
b/extensions-support/langchain4j/deployment/src/main/java/org/apache/camel/quarkus/component/support/langchain4j/deployment/SupportQuarkusLangchain4jProcessor.java
index 79283e8693..72af82eb3f 100644
---
a/extensions-support/langchain4j/deployment/src/main/java/org/apache/camel/quarkus/component/support/langchain4j/deployment/SupportQuarkusLangchain4jProcessor.java
+++
b/extensions-support/langchain4j/deployment/src/main/java/org/apache/camel/quarkus/component/support/langchain4j/deployment/SupportQuarkusLangchain4jProcessor.java
@@ -82,8 +82,13 @@ class SupportQuarkusLangchain4jProcessor {
.map(ClassInfo::name)
.forEach(guardrailTypes::add);
+
index.getAllKnownSubclasses(SupportLangchain4jProcessor.JSON_EXTRACTOR_OUTPUT_GUARDRAIL)
+ .stream()
+ .map(ClassInfo::name)
+ .forEach(guardrailTypes::add);
+
guardrailTypes.stream()
- .filter(s ->
!s.toString().equals("dev.langchain4j.guardrail.JsonExtractorOutputGuardrail"))
+ .filter(s ->
!s.equals(SupportLangchain4jProcessor.JSON_EXTRACTOR_OUTPUT_GUARDRAIL))
.forEach(s -> {
try {
Class<Guardrail<?, ?>> guardrailClass;
diff --git
a/integration-tests/langchain4j-agent/src/main/java/org/apache/camel/quarkus/component/langchain4j/agent/it/guardrail/TestPojoJsonExtractorOutputGuardrail.java
b/integration-tests/langchain4j-agent/src/main/java/org/apache/camel/quarkus/component/langchain4j/agent/it/guardrail/TestPojoJsonExtractorOutputGuardrail.java
index e95ab1b7f6..93d2e9bc81 100644
---
a/integration-tests/langchain4j-agent/src/main/java/org/apache/camel/quarkus/component/langchain4j/agent/it/guardrail/TestPojoJsonExtractorOutputGuardrail.java
+++
b/integration-tests/langchain4j-agent/src/main/java/org/apache/camel/quarkus/component/langchain4j/agent/it/guardrail/TestPojoJsonExtractorOutputGuardrail.java
@@ -17,8 +17,8 @@
package org.apache.camel.quarkus.component.langchain4j.agent.it.guardrail;
import dev.langchain4j.data.message.AiMessage;
-import dev.langchain4j.guardrail.JsonExtractorOutputGuardrail;
import dev.langchain4j.guardrail.OutputGuardrailResult;
+import dev.langchain4j.guardrails.JsonExtractorOutputGuardrail;
import org.apache.camel.quarkus.component.langchain4j.agent.it.model.TestPojo;
public class TestPojoJsonExtractorOutputGuardrail extends
JsonExtractorOutputGuardrail<TestPojo> {