Skip to content

Commit da98a29

Browse files
committed
Apply requested changes
1 parent a843cdd commit da98a29

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

orchestration/src/main/java/com/sap/ai/sdk/orchestration/OrchestrationChatResponse.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,9 @@
77
import com.sap.ai.sdk.orchestration.client.model.LLMChoice;
88
import com.sap.ai.sdk.orchestration.client.model.LLMModuleResultSynchronous;
99
import com.sap.ai.sdk.orchestration.client.model.TokenUsage;
10+
import java.util.ArrayList;
1011
import java.util.List;
12+
import java.util.Objects;
1113
import javax.annotation.Nonnull;
1214
import lombok.RequiredArgsConstructor;
1315
import lombok.Value;
@@ -53,19 +55,20 @@ public TokenUsage getTokenUsage() {
5355
*/
5456
@Nonnull
5557
public List<ChatMessage> getAllMessages() {
56-
final var messages = originalResponse.getModuleResults().getTemplating();
57-
58+
final var items = Objects.requireNonNull(originalResponse.getModuleResults().getTemplating());
59+
final var messages = new ArrayList<>(items);
5860
messages.add(getCurrentChoice().getMessage());
5961
return messages;
6062
}
6163

6264
/**
63-
* Get list of choices.
65+
* Get current choice.
6466
*
65-
* @return A list of choices.
67+
* @return The current choice.
6668
*/
6769
@Nonnull
6870
private LLMChoice getCurrentChoice() {
71+
// We expect choices to be defined and never empty.
6972
return ((LLMModuleResultSynchronous) originalResponse.getOrchestrationResult())
7073
.getChoices()
7174
.get(0);

0 commit comments

Comments
 (0)