Skip to content

Commit bc38558

Browse files
tilgalascopybara-github
authored andcommitted
feat!: remove deprecated LoadArtifactsTool.loadArtifacts method
PiperOrigin-RevId: 881996833
1 parent 1a87114 commit bc38558

3 files changed

Lines changed: 18 additions & 18 deletions

File tree

core/src/main/java/com/google/adk/agents/CallbackContext.java

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,12 @@
1919
import com.google.adk.artifacts.ListArtifactsResponse;
2020
import com.google.adk.events.EventActions;
2121
import com.google.adk.sessions.State;
22+
import com.google.common.base.Preconditions;
2223
import com.google.genai.types.Part;
2324
import io.reactivex.rxjava3.core.Completable;
2425
import io.reactivex.rxjava3.core.Maybe;
2526
import io.reactivex.rxjava3.core.Single;
2627
import java.util.List;
27-
import java.util.Optional;
2828

2929
/** The context of various callbacks for an agent invocation. */
3030
public class CallbackContext extends ReadonlyContext {
@@ -94,22 +94,19 @@ public Single<List<String>> listArtifacts() {
9494

9595
/** Loads the latest version of an artifact from the service. */
9696
public Maybe<Part> loadArtifact(String filename) {
97-
return loadArtifact(filename, Optional.empty());
97+
checkArtifactServiceInitialized();
98+
return invocationContext
99+
.artifactService()
100+
.loadArtifact(
101+
invocationContext.appName(),
102+
invocationContext.userId(),
103+
invocationContext.session().id(),
104+
filename);
98105
}
99106

100107
/** Loads a specific version of an artifact from the service. */
101108
public Maybe<Part> loadArtifact(String filename, int version) {
102-
return loadArtifact(filename, Optional.of(version));
103-
}
104-
105-
/**
106-
* @deprecated Use {@link #loadArtifact(String)} or {@link #loadArtifact(String, int)} instead.
107-
*/
108-
@Deprecated
109-
public Maybe<Part> loadArtifact(String filename, Optional<Integer> version) {
110-
if (invocationContext.artifactService() == null) {
111-
throw new IllegalStateException("Artifact service is not initialized.");
112-
}
109+
checkArtifactServiceInitialized();
113110
return invocationContext
114111
.artifactService()
115112
.loadArtifact(
@@ -120,6 +117,11 @@ public Maybe<Part> loadArtifact(String filename, Optional<Integer> version) {
120117
version);
121118
}
122119

120+
private void checkArtifactServiceInitialized() {
121+
Preconditions.checkState(
122+
invocationContext.artifactService() != null, "Artifact service is not initialized.");
123+
}
124+
123125
/**
124126
* Saves an artifact and records it as a delta for the current session.
125127
*

core/src/main/java/com/google/adk/tools/LoadArtifactsTool.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ private Completable loadAndAppendIndividualArtifact(
169169
LlmRequest.Builder llmRequestBuilder, ToolContext toolContext, String artifactName) {
170170

171171
return toolContext
172-
.loadArtifact(artifactName, Optional.empty())
172+
.loadArtifact(artifactName)
173173
.flatMapCompletable(
174174
actualArtifact ->
175175
Completable.fromAction(

core/src/test/java/com/google/adk/tools/LoadArtifactsToolTest.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import static com.google.common.truth.Truth.assertThat;
44
import static org.mockito.ArgumentMatchers.any;
55
import static org.mockito.ArgumentMatchers.anyString;
6-
import static org.mockito.ArgumentMatchers.eq;
76
import static org.mockito.ArgumentMatchers.nullable;
87
import static org.mockito.Mockito.mock;
98
import static org.mockito.Mockito.never;
@@ -163,12 +162,11 @@ public void processLlmRequest_artifactsInContext_withLoadArtifactsFunctionCall_l
163162
Part loadedArtifactPart = Part.fromText("This is the content of doc1.txt");
164163
ToolContext spiedToolContext = spy(ToolContext.builder(mockInvocationContext).build());
165164
when(spiedToolContext.listArtifacts()).thenReturn(Single.just(availableArtifacts));
166-
when(spiedToolContext.loadArtifact(eq("doc1.txt"), eq(Optional.empty())))
167-
.thenReturn(Maybe.just(loadedArtifactPart));
165+
when(spiedToolContext.loadArtifact("doc1.txt")).thenReturn(Maybe.just(loadedArtifactPart));
168166

169167
loadArtifactsTool.processLlmRequest(llmRequestBuilder, spiedToolContext).blockingAwait();
170168

171-
verify(spiedToolContext).loadArtifact(eq("doc1.txt"), eq(Optional.empty()));
169+
verify(spiedToolContext).loadArtifact("doc1.txt");
172170

173171
LlmRequest finalRequest = llmRequestBuilder.build();
174172
List<Content> finalContents = finalRequest.contents();

0 commit comments

Comments
 (0)