Skip to content

Commit b42840d

Browse files
committed
Add @nullable annotation
1 parent 0106582 commit b42840d

File tree

5 files changed

+26
-22
lines changed

5 files changed

+26
-22
lines changed

sample-code/spring-app/src/main/java/com/sap/ai/sdk/app/controllers/ConfigurationController.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.sap.ai.sdk.core.client.ConfigurationApi;
44
import com.sap.ai.sdk.core.model.AiConfiguration;
55
import java.util.stream.Collectors;
6+
import javax.annotation.Nullable;
67
import org.springframework.http.ResponseEntity;
78
import org.springframework.web.bind.annotation.GetMapping;
89
import org.springframework.web.bind.annotation.RequestHeader;
@@ -23,7 +24,7 @@ class ConfigurationController {
2324
*/
2425
@GetMapping("/configurations")
2526
ResponseEntity<Object> getConfigurations(
26-
@RequestHeader(value = "accept", required = false) final String accept) {
27+
@Nullable @RequestHeader(value = "accept", required = false) final String accept) {
2728
final var configList = CLIENT.query("default");
2829
if ("application/json".equals(accept)) {
2930
return ResponseEntity.ok().body(configList);

sample-code/spring-app/src/main/java/com/sap/ai/sdk/app/controllers/DeploymentController.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ AiDeploymentDeletionResponse createAndDeleteDeploymentByConfigId(final String co
6363
@GetMapping("/by-config/{id}/createDelete")
6464
ResponseEntity<Object> createAndDeleteDeploymentByConfigId(
6565
@Nonnull @PathVariable("id") final String configId,
66-
@RequestHeader(value = "accept", required = false) final String accept) {
66+
@Nullable @RequestHeader(value = "accept", required = false) final String accept) {
6767
final var response = createAndDeleteDeploymentByConfigId(configId);
6868
if ("application/json".equals(accept)) {
6969
return ResponseEntity.ok().body(response);
@@ -84,7 +84,7 @@ ResponseEntity<Object> createAndDeleteDeploymentByConfigId(
8484
@Nonnull
8585
ResponseEntity<Object> stopByConfigId(
8686
@Nonnull @PathVariable("id") final String configId,
87-
@RequestHeader(value = "accept", required = false) final String accept) {
87+
@Nullable @RequestHeader(value = "accept", required = false) final String accept) {
8888
final List<AiDeployment> myDeployments = getAllByConfigId(configId);
8989
log.info("Found {} deployments to STOP", myDeployments.size());
9090

@@ -115,7 +115,7 @@ ResponseEntity<Object> stopByConfigId(
115115
@Nonnull
116116
ResponseEntity<Object> deleteByConfigId(
117117
@Nonnull @PathVariable("id") final String configId,
118-
@RequestHeader(value = "accept", required = false) final String accept) {
118+
@Nullable @RequestHeader(value = "accept", required = false) final String accept) {
119119
final List<AiDeployment> myDeployments = getAllByConfigId(configId);
120120
log.info("Found {} deployments to DELETE", myDeployments.size());
121121

@@ -140,7 +140,7 @@ ResponseEntity<Object> deleteByConfigId(
140140
@GetMapping("/by-config/{id}/getAll")
141141
ResponseEntity<Object> getAllByConfigId(
142142
@Nonnull @PathVariable("id") final String configId,
143-
@RequestHeader(value = "accept", required = false) final String accept) {
143+
@Nullable @RequestHeader(value = "accept", required = false) final String accept) {
144144
final var deployments = getAllByConfigId(configId);
145145
if ("application/json".equals(accept)) {
146146
return ResponseEntity.ok().body(deployments);
@@ -175,7 +175,7 @@ List<AiDeployment> getAllByConfigId(@Nonnull @PathVariable("id") final String co
175175
@GetMapping("/getAll")
176176
@Nonnull
177177
ResponseEntity<Object> getAll(
178-
@RequestHeader(value = "accept", required = false) final String accept) {
178+
@Nullable @RequestHeader(value = "accept", required = false) final String accept) {
179179
final var deployments = getAll();
180180
if ("application/json".equals(accept)) {
181181
return ResponseEntity.ok().body(deployments);

sample-code/spring-app/src/main/java/com/sap/ai/sdk/app/controllers/OpenAiController.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import java.io.IOException;
1111
import java.util.Arrays;
1212
import javax.annotation.Nonnull;
13+
import javax.annotation.Nullable;
1314
import lombok.extern.slf4j.Slf4j;
1415
import org.springframework.beans.factory.annotation.Autowired;
1516
import org.springframework.http.MediaType;
@@ -37,7 +38,7 @@ public class OpenAiController {
3738
@GetMapping("/chatCompletion")
3839
@Nonnull
3940
ResponseEntity<String> chatCompletion(
40-
@RequestHeader(value = "accept", required = false) final String accept)
41+
@Nullable @RequestHeader(value = "accept", required = false) final String accept)
4142
throws JsonProcessingException {
4243
final var response = service.chatCompletion("Who is the prettiest");
4344
if ("application/json".equals(accept)) {
@@ -141,7 +142,7 @@ private static String objectToJson(@Nonnull final Object obj) {
141142
@GetMapping("/chatCompletionImage")
142143
@Nonnull
143144
ResponseEntity<String> chatCompletionImage(
144-
@RequestHeader(value = "accept", required = false) final String accept)
145+
@Nullable @RequestHeader(value = "accept", required = false) final String accept)
145146
throws JsonProcessingException {
146147
final var response =
147148
service.chatCompletionImage(
@@ -160,7 +161,7 @@ ResponseEntity<String> chatCompletionImage(
160161
@GetMapping("/chatCompletionTool")
161162
@Nonnull
162163
ResponseEntity<String> chatCompletionTools(
163-
@RequestHeader(value = "accept", required = false) final String accept)
164+
@Nullable @RequestHeader(value = "accept", required = false) final String accept)
164165
throws JsonProcessingException {
165166
final var response =
166167
service.chatCompletionTools("Calculate the Fibonacci number for given sequence index.");
@@ -191,7 +192,7 @@ ResponseEntity<String> embedding() throws JsonProcessingException {
191192
@GetMapping("/chatCompletion/{resourceGroup}")
192193
@Nonnull
193194
ResponseEntity<String> chatCompletionWithResource(
194-
@RequestHeader(value = "accept", required = false) final String accept,
195+
@Nullable @RequestHeader(value = "accept", required = false) final String accept,
195196
@Nonnull @PathVariable("resourceGroup") final String resourceGroup)
196197
throws JsonProcessingException {
197198
final var response =

sample-code/spring-app/src/main/java/com/sap/ai/sdk/app/controllers/OrchestrationController.java

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import com.sap.ai.sdk.orchestration.model.DPIEntities;
1414
import com.sap.cloud.sdk.cloudplatform.thread.ThreadContextExecutors;
1515
import javax.annotation.Nonnull;
16+
import javax.annotation.Nullable;
1617
import lombok.extern.slf4j.Slf4j;
1718
import org.springframework.beans.factory.annotation.Autowired;
1819
import org.springframework.http.MediaType;
@@ -42,7 +43,7 @@ class OrchestrationController {
4243
@GetMapping("/completion")
4344
@Nonnull
4445
ResponseEntity<String> completion(
45-
@RequestHeader(value = "accept", required = false) final String accept)
46+
@Nullable @RequestHeader(value = "accept", required = false) final String accept)
4647
throws JsonProcessingException {
4748
final var response = service.completion("HelloWorld!");
4849
if ("application/json".equals(accept)) {
@@ -90,7 +91,7 @@ ResponseEntity<ResponseBodyEmitter> streamChatCompletion() {
9091
@GetMapping("/template")
9192
@Nonnull
9293
ResponseEntity<Object> template(
93-
@RequestHeader(value = "accept", required = false) final String accept)
94+
@Nullable @RequestHeader(value = "accept", required = false) final String accept)
9495
throws JsonProcessingException {
9596
final var response = service.template("German");
9697
if ("application/json".equals(accept)) {
@@ -107,7 +108,7 @@ ResponseEntity<Object> template(
107108
@GetMapping("/messagesHistory")
108109
@Nonnull
109110
ResponseEntity<String> messagesHistory(
110-
@RequestHeader(value = "accept", required = false) final String accept)
111+
@Nullable @RequestHeader(value = "accept", required = false) final String accept)
111112
throws JsonProcessingException {
112113
final var response = service.messagesHistory("What is the capital of France?");
113114
if ("application/json".equals(accept)) {
@@ -133,7 +134,7 @@ ResponseEntity<String> messagesHistory(
133134
@GetMapping("/inputFiltering/{policy}")
134135
@Nonnull
135136
ResponseEntity<String> inputFiltering(
136-
@RequestHeader(value = "accept", required = false) final String accept,
137+
@Nullable @RequestHeader(value = "accept", required = false) final String accept,
137138
@Nonnull @PathVariable("policy") final AzureFilterThreshold policy)
138139
throws JsonProcessingException {
139140

@@ -170,7 +171,7 @@ ResponseEntity<String> inputFiltering(
170171
@GetMapping("/outputFiltering/{policy}")
171172
@Nonnull
172173
ResponseEntity<String> outputFiltering(
173-
@RequestHeader(value = "accept", required = false) final String accept,
174+
@Nullable @RequestHeader(value = "accept", required = false) final String accept,
174175
@Nonnull @PathVariable("policy") final AzureFilterThreshold policy)
175176
throws JsonProcessingException, OrchestrationClientException {
176177

@@ -200,7 +201,7 @@ ResponseEntity<String> outputFiltering(
200201
@GetMapping("/maskingAnonymization")
201202
@Nonnull
202203
ResponseEntity<String> maskingAnonymization(
203-
@RequestHeader(value = "accept", required = false) final String accept)
204+
@Nullable @RequestHeader(value = "accept", required = false) final String accept)
204205
throws JsonProcessingException {
205206
final var response = service.maskingAnonymization(DPIEntities.PERSON);
206207
if ("application/json".equals(accept)) {
@@ -217,8 +218,8 @@ ResponseEntity<String> maskingAnonymization(
217218
@GetMapping("/completion/{resourceGroup}")
218219
@Nonnull
219220
public ResponseEntity<String> completionWithResourceGroup(
220-
@RequestHeader(value = "accept", required = false) final String accept,
221-
@PathVariable("resourceGroup") @Nonnull final String resourceGroup)
221+
@Nullable @RequestHeader(value = "accept", required = false) final String accept,
222+
@Nonnull @PathVariable("resourceGroup") final String resourceGroup)
222223
throws JsonProcessingException {
223224
final var response = service.completionWithResourceGroup(resourceGroup, "Hello world!");
224225
if ("application/json".equals(accept)) {
@@ -239,7 +240,7 @@ public ResponseEntity<String> completionWithResourceGroup(
239240
@GetMapping("/maskingPseudonymization")
240241
@Nonnull
241242
ResponseEntity<String> maskingPseudonymization(
242-
@RequestHeader(value = "accept", required = false) final String accept)
243+
@Nullable @RequestHeader(value = "accept", required = false) final String accept)
243244
throws JsonProcessingException {
244245
final var response = service.maskingPseudonymization(DPIEntities.PERSON);
245246
if ("application/json".equals(accept)) {
@@ -258,7 +259,7 @@ ResponseEntity<String> maskingPseudonymization(
258259
@GetMapping("/grounding")
259260
@Nonnull
260261
ResponseEntity<String> grounding(
261-
@RequestHeader(value = "accept", required = false) final String accept)
262+
@Nullable @RequestHeader(value = "accept", required = false) final String accept)
262263
throws JsonProcessingException {
263264
final var response = service.grounding("What does Joule do?");
264265
if ("application/json".equals(accept)) {

sample-code/spring-app/src/main/java/com/sap/ai/sdk/app/controllers/ScenarioController.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import com.sap.ai.sdk.core.model.AiScenario;
77
import java.util.stream.Collectors;
88
import javax.annotation.Nonnull;
9+
import javax.annotation.Nullable;
910
import org.springframework.http.ResponseEntity;
1011
import org.springframework.web.bind.annotation.GetMapping;
1112
import org.springframework.web.bind.annotation.RequestHeader;
@@ -27,7 +28,7 @@ class ScenarioController {
2728
@GetMapping("/scenarios")
2829
@Nonnull
2930
ResponseEntity<Object> getScenarios(
30-
@RequestHeader(value = "accept", required = false) final String accept) {
31+
@Nullable @RequestHeader(value = "accept", required = false) final String accept) {
3132
final var scenarioList = CLIENT.query("default");
3233
if ("application/json".equals(accept)) {
3334
return ResponseEntity.ok().body(scenarioList);
@@ -58,7 +59,7 @@ AiModelList getModels() {
5859
@GetMapping("/models")
5960
@Nonnull
6061
ResponseEntity<Object> getModels(
61-
@RequestHeader(value = "accept", required = false) final String accept) {
62+
@Nullable @RequestHeader(value = "accept", required = false) final String accept) {
6263
final var modelList = getModels();
6364
if ("application/json".equals(accept)) {
6465
return ResponseEntity.ok().body(modelList);

0 commit comments

Comments
 (0)