diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/client/PipelinesApi.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/client/PipelinesApi.java index 54377a57a..6c8cc4dc4 100644 --- a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/client/PipelinesApi.java +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/client/PipelinesApi.java @@ -8,6 +8,7 @@ import com.sap.ai.sdk.grounding.model.GetPipelineExecutions; import com.sap.ai.sdk.grounding.model.GetPipelineStatus; import com.sap.ai.sdk.grounding.model.GetPipelines; +import com.sap.ai.sdk.grounding.model.ManualPipelineTrigger; import com.sap.ai.sdk.grounding.model.PipelineDocumentResponse; import com.sap.ai.sdk.grounding.model.PipelineId; import com.sap.cloud.sdk.cloudplatform.connectivity.Destination; @@ -1002,4 +1003,72 @@ public GetPipelineStatus getPipelineStatus( localVarAuthNames, localVarReturnType); } + + /** + * Pipeline Trigger + * + *

Manually trigger a pipeline + * + *

202 - Accepted + * + *

400 - The specification of the resource was incorrect + * + * @param aiResourceGroup Resource Group ID + * @param manualPipelineTrigger The value for the parameter manualPipelineTrigger + * @return An OpenApiResponse containing the status code of the HttpResponse. + * @throws OpenApiRequestException if an error occurs while attempting to invoke the API + */ + @Nonnull + public OpenApiResponse manualTriggerPipeline( + @Nonnull final String aiResourceGroup, + @Nonnull final ManualPipelineTrigger manualPipelineTrigger) + throws OpenApiRequestException { + final Object localVarPostBody = manualPipelineTrigger; + + // verify the required parameter 'aiResourceGroup' is set + if (aiResourceGroup == null) { + throw new OpenApiRequestException( + "Missing the required parameter 'aiResourceGroup' when calling manualTriggerPipeline"); + } + + // verify the required parameter 'manualPipelineTrigger' is set + if (manualPipelineTrigger == null) { + throw new OpenApiRequestException( + "Missing the required parameter 'manualPipelineTrigger' when calling pipelineV1PipelineEndpointsTriggerPipeline"); + } + + final String localVarPath = + UriComponentsBuilder.fromPath("/pipelines/trigger").build().toUriString(); + + final MultiValueMap localVarQueryParams = + new LinkedMultiValueMap(); + final HttpHeaders localVarHeaderParams = new HttpHeaders(); + final MultiValueMap localVarFormParams = + new LinkedMultiValueMap(); + + if (aiResourceGroup != null) + localVarHeaderParams.add("AI-Resource-Group", apiClient.parameterToString(aiResourceGroup)); + + final String[] localVarAccepts = {"application/json"}; + final List localVarAccept = apiClient.selectHeaderAccept(localVarAccepts); + final String[] localVarContentTypes = {"application/json"}; + final MediaType localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes); + + final String[] localVarAuthNames = new String[] {}; + + final ParameterizedTypeReference localVarReturnType = + new ParameterizedTypeReference() {}; + apiClient.invokeAPI( + localVarPath, + HttpMethod.POST, + localVarQueryParams, + localVarPostBody, + localVarHeaderParams, + localVarFormParams, + localVarAccept, + localVarContentType, + localVarAuthNames, + localVarReturnType); + return new OpenApiResponse(apiClient); + } } diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/CreatePipeline.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/CreatePipeline.java index 17804cd51..e33734cb1 100644 --- a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/CreatePipeline.java +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/CreatePipeline.java @@ -19,12 +19,18 @@ @JsonSubTypes({ @JsonSubTypes.Type(value = MSSharePointPipelineCreateRequest.class, name = "MSSharePoint"), @JsonSubTypes.Type(value = S3PipelineCreateRequest.class, name = "S3"), + @JsonSubTypes.Type(value = SDMPipelineCreateRequest.class, name = "SDM"), @JsonSubTypes.Type(value = SFTPPipelineCreateRequest.class, name = "SFTP"), + @JsonSubTypes.Type(value = WorkZonePipelineCreateRequest.class, name = "WorkZone"), @JsonSubTypes.Type( value = MSSharePointPipelineCreateRequest.class, name = "MSSharePointPipelineCreateRequest"), @JsonSubTypes.Type(value = S3PipelineCreateRequest.class, name = "S3PipelineCreateRequest"), + @JsonSubTypes.Type(value = SDMPipelineCreateRequest.class, name = "SDMPipelineCreateRequest"), @JsonSubTypes.Type(value = SFTPPipelineCreateRequest.class, name = "SFTPPipelineCreateRequest"), + @JsonSubTypes.Type( + value = WorkZonePipelineCreateRequest.class, + name = "WorkZonePipelineCreateRequest"), }) public interface CreatePipeline { Object getType(); diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/DocumentStatus.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/DocumentStatus.java index cfbb1235c..b332a84c7 100644 --- a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/DocumentStatus.java +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/DocumentStatus.java @@ -29,6 +29,8 @@ public enum DocumentStatus { FAILED_TO_BE_RETRIED("FAILED_TO_BE_RETRIED"), + TO_BE_SCHEDULED("TO_BE_SCHEDULED"), + UNKNOWN_DEFAULT_OPEN_API("unknown_default_open_api"); private final String value; diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/DocumentsStatusResponseResourcesInner.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/DocumentsStatusResponseResourcesInner.java index 5c9a182e1..1a67cf11c 100644 --- a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/DocumentsStatusResponseResourcesInner.java +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/DocumentsStatusResponseResourcesInner.java @@ -34,6 +34,21 @@ public class DocumentsStatusResponseResourcesInner @JsonProperty("status") private DocumentStatus status; + @JsonProperty("absoluteUrl") + private String absoluteUrl; + + @JsonProperty("title") + private String title; + + @JsonProperty("metadataId") + private String metadataId; + + @JsonProperty("createdTimestamp") + private String createdTimestamp; + + @JsonProperty("lastUpdatedTimestamp") + private String lastUpdatedTimestamp; + @JsonAnySetter @JsonAnyGetter private final Map cloudSdkCustomFields = new LinkedHashMap<>(); @@ -104,6 +119,176 @@ public void setStatus(@Nullable final DocumentStatus status) { this.status = status; } + /** + * Set the absoluteUrl of this {@link DocumentsStatusResponseResourcesInner} instance and return + * the same instance. + * + * @param absoluteUrl The absoluteUrl of this {@link DocumentsStatusResponseResourcesInner} + * @return The same instance of this {@link DocumentsStatusResponseResourcesInner} class + */ + @Nonnull + public DocumentsStatusResponseResourcesInner absoluteUrl(@Nullable final String absoluteUrl) { + this.absoluteUrl = absoluteUrl; + return this; + } + + /** + * Get absoluteUrl + * + * @return absoluteUrl The absoluteUrl of this {@link DocumentsStatusResponseResourcesInner} + * instance. + */ + @Nullable + public String getAbsoluteUrl() { + return absoluteUrl; + } + + /** + * Set the absoluteUrl of this {@link DocumentsStatusResponseResourcesInner} instance. + * + * @param absoluteUrl The absoluteUrl of this {@link DocumentsStatusResponseResourcesInner} + */ + public void setAbsoluteUrl(@Nullable final String absoluteUrl) { + this.absoluteUrl = absoluteUrl; + } + + /** + * Set the title of this {@link DocumentsStatusResponseResourcesInner} instance and return the + * same instance. + * + * @param title The title of this {@link DocumentsStatusResponseResourcesInner} + * @return The same instance of this {@link DocumentsStatusResponseResourcesInner} class + */ + @Nonnull + public DocumentsStatusResponseResourcesInner title(@Nullable final String title) { + this.title = title; + return this; + } + + /** + * Get title + * + * @return title The title of this {@link DocumentsStatusResponseResourcesInner} instance. + */ + @Nullable + public String getTitle() { + return title; + } + + /** + * Set the title of this {@link DocumentsStatusResponseResourcesInner} instance. + * + * @param title The title of this {@link DocumentsStatusResponseResourcesInner} + */ + public void setTitle(@Nullable final String title) { + this.title = title; + } + + /** + * Set the metadataId of this {@link DocumentsStatusResponseResourcesInner} instance and return + * the same instance. + * + * @param metadataId The metadataId of this {@link DocumentsStatusResponseResourcesInner} + * @return The same instance of this {@link DocumentsStatusResponseResourcesInner} class + */ + @Nonnull + public DocumentsStatusResponseResourcesInner metadataId(@Nullable final String metadataId) { + this.metadataId = metadataId; + return this; + } + + /** + * Get metadataId + * + * @return metadataId The metadataId of this {@link DocumentsStatusResponseResourcesInner} + * instance. + */ + @Nullable + public String getMetadataId() { + return metadataId; + } + + /** + * Set the metadataId of this {@link DocumentsStatusResponseResourcesInner} instance. + * + * @param metadataId The metadataId of this {@link DocumentsStatusResponseResourcesInner} + */ + public void setMetadataId(@Nullable final String metadataId) { + this.metadataId = metadataId; + } + + /** + * Set the createdTimestamp of this {@link DocumentsStatusResponseResourcesInner} instance and + * return the same instance. + * + * @param createdTimestamp The createdTimestamp of this {@link + * DocumentsStatusResponseResourcesInner} + * @return The same instance of this {@link DocumentsStatusResponseResourcesInner} class + */ + @Nonnull + public DocumentsStatusResponseResourcesInner createdTimestamp( + @Nullable final String createdTimestamp) { + this.createdTimestamp = createdTimestamp; + return this; + } + + /** + * Get createdTimestamp + * + * @return createdTimestamp The createdTimestamp of this {@link + * DocumentsStatusResponseResourcesInner} instance. + */ + @Nonnull + public String getCreatedTimestamp() { + return createdTimestamp; + } + + /** + * Set the createdTimestamp of this {@link DocumentsStatusResponseResourcesInner} instance. + * + * @param createdTimestamp The createdTimestamp of this {@link + * DocumentsStatusResponseResourcesInner} + */ + public void setCreatedTimestamp(@Nullable final String createdTimestamp) { + this.createdTimestamp = createdTimestamp; + } + + /** + * Set the lastUpdatedTimestamp of this {@link DocumentsStatusResponseResourcesInner} instance and + * return the same instance. + * + * @param lastUpdatedTimestamp The lastUpdatedTimestamp of this {@link + * DocumentsStatusResponseResourcesInner} + * @return The same instance of this {@link DocumentsStatusResponseResourcesInner} class + */ + @Nonnull + public DocumentsStatusResponseResourcesInner lastUpdatedTimestamp( + @Nullable final String lastUpdatedTimestamp) { + this.lastUpdatedTimestamp = lastUpdatedTimestamp; + return this; + } + + /** + * Get lastUpdatedTimestamp + * + * @return lastUpdatedTimestamp The lastUpdatedTimestamp of this {@link + * DocumentsStatusResponseResourcesInner} instance. + */ + @Nonnull + public String getLastUpdatedTimestamp() { + return lastUpdatedTimestamp; + } + + /** + * Set the lastUpdatedTimestamp of this {@link DocumentsStatusResponseResourcesInner} instance. + * + * @param lastUpdatedTimestamp The lastUpdatedTimestamp of this {@link + * DocumentsStatusResponseResourcesInner} + */ + public void setLastUpdatedTimestamp(@Nullable final String lastUpdatedTimestamp) { + this.lastUpdatedTimestamp = lastUpdatedTimestamp; + } + /** * Get the names of the unrecognizable properties of the {@link * DocumentsStatusResponseResourcesInner}. @@ -147,6 +332,12 @@ public Map toMap() { final Map declaredFields = new LinkedHashMap<>(cloudSdkCustomFields); if (id != null) declaredFields.put("id", id); if (status != null) declaredFields.put("status", status); + if (absoluteUrl != null) declaredFields.put("absoluteUrl", absoluteUrl); + if (title != null) declaredFields.put("title", title); + if (metadataId != null) declaredFields.put("metadataId", metadataId); + if (createdTimestamp != null) declaredFields.put("createdTimestamp", createdTimestamp); + if (lastUpdatedTimestamp != null) + declaredFields.put("lastUpdatedTimestamp", lastUpdatedTimestamp); return declaredFields; } @@ -176,12 +367,27 @@ public boolean equals(@Nullable final java.lang.Object o) { return Objects.equals( this.cloudSdkCustomFields, documentsStatusResponseResourcesInner.cloudSdkCustomFields) && Objects.equals(this.id, documentsStatusResponseResourcesInner.id) - && Objects.equals(this.status, documentsStatusResponseResourcesInner.status); + && Objects.equals(this.status, documentsStatusResponseResourcesInner.status) + && Objects.equals(this.absoluteUrl, documentsStatusResponseResourcesInner.absoluteUrl) + && Objects.equals(this.title, documentsStatusResponseResourcesInner.title) + && Objects.equals(this.metadataId, documentsStatusResponseResourcesInner.metadataId) + && Objects.equals( + this.createdTimestamp, documentsStatusResponseResourcesInner.createdTimestamp) + && Objects.equals( + this.lastUpdatedTimestamp, documentsStatusResponseResourcesInner.lastUpdatedTimestamp); } @Override public int hashCode() { - return Objects.hash(id, status, cloudSdkCustomFields); + return Objects.hash( + id, + status, + absoluteUrl, + title, + metadataId, + createdTimestamp, + lastUpdatedTimestamp, + cloudSdkCustomFields); } @Override @@ -191,6 +397,13 @@ public String toString() { sb.append("class DocumentsStatusResponseResourcesInner {\n"); sb.append(" id: ").append(toIndentedString(id)).append("\n"); sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" absoluteUrl: ").append(toIndentedString(absoluteUrl)).append("\n"); + sb.append(" title: ").append(toIndentedString(title)).append("\n"); + sb.append(" metadataId: ").append(toIndentedString(metadataId)).append("\n"); + sb.append(" createdTimestamp: ").append(toIndentedString(createdTimestamp)).append("\n"); + sb.append(" lastUpdatedTimestamp: ") + .append(toIndentedString(lastUpdatedTimestamp)) + .append("\n"); cloudSdkCustomFields.forEach( (k, v) -> sb.append(" ").append(k).append(": ").append(toIndentedString(v)).append("\n")); diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/GetPipeline.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/GetPipeline.java index 8eb624ce7..d4ff3f099 100644 --- a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/GetPipeline.java +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/GetPipeline.java @@ -19,12 +19,18 @@ @JsonSubTypes({ @JsonSubTypes.Type(value = MSSharePointPipelineGetResponse.class, name = "MSSharePoint"), @JsonSubTypes.Type(value = S3PipelineGetResponse.class, name = "S3"), + @JsonSubTypes.Type(value = SDMPipelineGetResponse.class, name = "SDM"), @JsonSubTypes.Type(value = SFTPPipelineGetResponse.class, name = "SFTP"), + @JsonSubTypes.Type(value = WorkZonePipelineGetResponse.class, name = "WorkZone"), @JsonSubTypes.Type( value = MSSharePointPipelineGetResponse.class, name = "MSSharePointPipelineGetResponse"), @JsonSubTypes.Type(value = S3PipelineGetResponse.class, name = "S3PipelineGetResponse"), + @JsonSubTypes.Type(value = SDMPipelineGetResponse.class, name = "SDMPipelineGetResponse"), @JsonSubTypes.Type(value = SFTPPipelineGetResponse.class, name = "SFTPPipelineGetResponse"), + @JsonSubTypes.Type( + value = WorkZonePipelineGetResponse.class, + name = "WorkZonePipelineGetResponse"), }) public interface GetPipeline { Object getType(); diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/ManualPipelineTrigger.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/ManualPipelineTrigger.java new file mode 100644 index 000000000..696c3e563 --- /dev/null +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/ManualPipelineTrigger.java @@ -0,0 +1,171 @@ +/* + * Grounding + * Grounding is a service designed to handle data-related tasks, such as grounding and retrieval, using vector databases. It provides specialized data retrieval through these databases, grounding the retrieval process with your own external and context-relevant data. Grounding combines generative AI capabilities with the ability to use real-time, precise data to improve decision-making and business operations for specific AI-driven business solutions. + * + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +package com.sap.ai.sdk.grounding.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.NoSuchElementException; +import java.util.Objects; +import java.util.Set; +import javax.annotation.Nonnull; +import javax.annotation.Nullable; + +/** ManualPipelineTrigger */ +// CHECKSTYLE:OFF +public class ManualPipelineTrigger +// CHECKSTYLE:ON +{ + @JsonProperty("pipelineId") + private String pipelineId; + + @JsonAnySetter @JsonAnyGetter + private final Map cloudSdkCustomFields = new LinkedHashMap<>(); + + /** Default constructor for ManualPipelineTrigger. */ + protected ManualPipelineTrigger() {} + + /** + * Set the pipelineId of this {@link ManualPipelineTrigger} instance and return the same instance. + * + * @param pipelineId The pipelineId of this {@link ManualPipelineTrigger} + * @return The same instance of this {@link ManualPipelineTrigger} class + */ + @Nonnull + public ManualPipelineTrigger pipelineId(@Nullable final String pipelineId) { + this.pipelineId = pipelineId; + return this; + } + + /** + * Get pipelineId + * + * @return pipelineId The pipelineId of this {@link ManualPipelineTrigger} instance. + */ + @Nonnull + public String getPipelineId() { + return pipelineId; + } + + /** + * Set the pipelineId of this {@link ManualPipelineTrigger} instance. + * + * @param pipelineId The pipelineId of this {@link ManualPipelineTrigger} + */ + public void setPipelineId(@Nullable final String pipelineId) { + this.pipelineId = pipelineId; + } + + /** + * Get the names of the unrecognizable properties of the {@link ManualPipelineTrigger}. + * + * @return The set of properties names + */ + @JsonIgnore + @Nonnull + public Set getCustomFieldNames() { + return cloudSdkCustomFields.keySet(); + } + + /** + * Get the value of an unrecognizable property of this {@link ManualPipelineTrigger} instance. + * + * @deprecated Use {@link #toMap()} instead. + * @param name The name of the property + * @return The value of the property + * @throws NoSuchElementException If no property with the given name could be found. + */ + @Nullable + @Deprecated + public Object getCustomField(@Nonnull final String name) throws NoSuchElementException { + if (!cloudSdkCustomFields.containsKey(name)) { + throw new NoSuchElementException( + "ManualPipelineTrigger has no field with name '" + name + "'."); + } + return cloudSdkCustomFields.get(name); + } + + /** + * Get the value of all properties of this {@link ManualPipelineTrigger} instance including + * unrecognized properties. + * + * @return The map of all properties + */ + @JsonIgnore + @Nonnull + public Map toMap() { + final Map declaredFields = new LinkedHashMap<>(cloudSdkCustomFields); + if (pipelineId != null) declaredFields.put("pipelineId", pipelineId); + return declaredFields; + } + + /** + * Set an unrecognizable property of this {@link ManualPipelineTrigger} instance. If the map + * previously contained a mapping for the key, the old value is replaced by the specified value. + * + * @param customFieldName The name of the property + * @param customFieldValue The value of the property + */ + @JsonIgnore + public void setCustomField(@Nonnull String customFieldName, @Nullable Object customFieldValue) { + cloudSdkCustomFields.put(customFieldName, customFieldValue); + } + + @Override + public boolean equals(@Nullable final java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + final ManualPipelineTrigger manualPipelineTrigger = (ManualPipelineTrigger) o; + return Objects.equals(this.cloudSdkCustomFields, manualPipelineTrigger.cloudSdkCustomFields) + && Objects.equals(this.pipelineId, manualPipelineTrigger.pipelineId); + } + + @Override + public int hashCode() { + return Objects.hash(pipelineId, cloudSdkCustomFields); + } + + @Override + @Nonnull + public String toString() { + final StringBuilder sb = new StringBuilder(); + sb.append("class ManualPipelineTrigger {\n"); + sb.append(" pipelineId: ").append(toIndentedString(pipelineId)).append("\n"); + cloudSdkCustomFields.forEach( + (k, v) -> + sb.append(" ").append(k).append(": ").append(toIndentedString(v)).append("\n")); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(final java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** Create a new {@link ManualPipelineTrigger} instance. No arguments are required. */ + public static ManualPipelineTrigger create() { + return new ManualPipelineTrigger(); + } +} diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/PipelineDocumentResponse.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/PipelineDocumentResponse.java index 61fb9653c..0a4f4b324 100644 --- a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/PipelineDocumentResponse.java +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/PipelineDocumentResponse.java @@ -31,18 +31,24 @@ public class PipelineDocumentResponse @JsonProperty("id") private String id; - @JsonProperty("viewLocation") - private String viewLocation; + @JsonProperty("status") + private DocumentStatus status; + + @JsonProperty("absoluteUrl") + private String absoluteUrl; + + @JsonProperty("title") + private String title; - @JsonProperty("downloadLocation") - private String downloadLocation; + @JsonProperty("metadataId") + private String metadataId; + + @JsonProperty("createdTimestamp") + private String createdTimestamp; @JsonProperty("lastUpdatedTimestamp") private String lastUpdatedTimestamp; - @JsonProperty("status") - private DocumentStatus status; - @JsonAnySetter @JsonAnyGetter private final Map cloudSdkCustomFields = new LinkedHashMap<>(); @@ -81,133 +87,196 @@ public void setId(@Nullable final String id) { } /** - * Set the viewLocation of this {@link PipelineDocumentResponse} instance and return the same + * Set the status of this {@link PipelineDocumentResponse} instance and return the same instance. + * + * @param status The status of this {@link PipelineDocumentResponse} + * @return The same instance of this {@link PipelineDocumentResponse} class + */ + @Nonnull + public PipelineDocumentResponse status(@Nullable final DocumentStatus status) { + this.status = status; + return this; + } + + /** + * Get status + * + * @return status The status of this {@link PipelineDocumentResponse} instance. + */ + @Nonnull + public DocumentStatus getStatus() { + return status; + } + + /** + * Set the status of this {@link PipelineDocumentResponse} instance. + * + * @param status The status of this {@link PipelineDocumentResponse} + */ + public void setStatus(@Nullable final DocumentStatus status) { + this.status = status; + } + + /** + * Set the absoluteUrl of this {@link PipelineDocumentResponse} instance and return the same * instance. * - * @param viewLocation The viewLocation of this {@link PipelineDocumentResponse} + * @param absoluteUrl The absoluteUrl of this {@link PipelineDocumentResponse} * @return The same instance of this {@link PipelineDocumentResponse} class */ @Nonnull - public PipelineDocumentResponse viewLocation(@Nullable final String viewLocation) { - this.viewLocation = viewLocation; + public PipelineDocumentResponse absoluteUrl(@Nullable final String absoluteUrl) { + this.absoluteUrl = absoluteUrl; return this; } /** - * Get viewLocation + * Get absoluteUrl * - * @return viewLocation The viewLocation of this {@link PipelineDocumentResponse} instance. + * @return absoluteUrl The absoluteUrl of this {@link PipelineDocumentResponse} instance. */ @Nullable - public String getViewLocation() { - return viewLocation; + public String getAbsoluteUrl() { + return absoluteUrl; + } + + /** + * Set the absoluteUrl of this {@link PipelineDocumentResponse} instance. + * + * @param absoluteUrl The absoluteUrl of this {@link PipelineDocumentResponse} + */ + public void setAbsoluteUrl(@Nullable final String absoluteUrl) { + this.absoluteUrl = absoluteUrl; } /** - * Set the viewLocation of this {@link PipelineDocumentResponse} instance. + * Set the title of this {@link PipelineDocumentResponse} instance and return the same instance. * - * @param viewLocation The viewLocation of this {@link PipelineDocumentResponse} + * @param title The title of this {@link PipelineDocumentResponse} + * @return The same instance of this {@link PipelineDocumentResponse} class */ - public void setViewLocation(@Nullable final String viewLocation) { - this.viewLocation = viewLocation; + @Nonnull + public PipelineDocumentResponse title(@Nullable final String title) { + this.title = title; + return this; + } + + /** + * Get title + * + * @return title The title of this {@link PipelineDocumentResponse} instance. + */ + @Nullable + public String getTitle() { + return title; } /** - * Set the downloadLocation of this {@link PipelineDocumentResponse} instance and return the same + * Set the title of this {@link PipelineDocumentResponse} instance. + * + * @param title The title of this {@link PipelineDocumentResponse} + */ + public void setTitle(@Nullable final String title) { + this.title = title; + } + + /** + * Set the metadataId of this {@link PipelineDocumentResponse} instance and return the same * instance. * - * @param downloadLocation The downloadLocation of this {@link PipelineDocumentResponse} + * @param metadataId The metadataId of this {@link PipelineDocumentResponse} * @return The same instance of this {@link PipelineDocumentResponse} class */ @Nonnull - public PipelineDocumentResponse downloadLocation(@Nullable final String downloadLocation) { - this.downloadLocation = downloadLocation; + public PipelineDocumentResponse metadataId(@Nullable final String metadataId) { + this.metadataId = metadataId; return this; } /** - * Get downloadLocation + * Get metadataId * - * @return downloadLocation The downloadLocation of this {@link PipelineDocumentResponse} - * instance. + * @return metadataId The metadataId of this {@link PipelineDocumentResponse} instance. */ @Nullable - public String getDownloadLocation() { - return downloadLocation; + public String getMetadataId() { + return metadataId; } /** - * Set the downloadLocation of this {@link PipelineDocumentResponse} instance. + * Set the metadataId of this {@link PipelineDocumentResponse} instance. * - * @param downloadLocation The downloadLocation of this {@link PipelineDocumentResponse} + * @param metadataId The metadataId of this {@link PipelineDocumentResponse} */ - public void setDownloadLocation(@Nullable final String downloadLocation) { - this.downloadLocation = downloadLocation; + public void setMetadataId(@Nullable final String metadataId) { + this.metadataId = metadataId; } /** - * Set the lastUpdatedTimestamp of this {@link PipelineDocumentResponse} instance and return the - * same instance. + * Set the createdTimestamp of this {@link PipelineDocumentResponse} instance and return the same + * instance. * - * @param lastUpdatedTimestamp The lastUpdatedTimestamp of this {@link PipelineDocumentResponse} + * @param createdTimestamp The createdTimestamp of this {@link PipelineDocumentResponse} * @return The same instance of this {@link PipelineDocumentResponse} class */ @Nonnull - public PipelineDocumentResponse lastUpdatedTimestamp( - @Nullable final String lastUpdatedTimestamp) { - this.lastUpdatedTimestamp = lastUpdatedTimestamp; + public PipelineDocumentResponse createdTimestamp(@Nullable final String createdTimestamp) { + this.createdTimestamp = createdTimestamp; return this; } /** - * Get lastUpdatedTimestamp + * Get createdTimestamp * - * @return lastUpdatedTimestamp The lastUpdatedTimestamp of this {@link PipelineDocumentResponse} + * @return createdTimestamp The createdTimestamp of this {@link PipelineDocumentResponse} * instance. */ @Nonnull - public String getLastUpdatedTimestamp() { - return lastUpdatedTimestamp; + public String getCreatedTimestamp() { + return createdTimestamp; } /** - * Set the lastUpdatedTimestamp of this {@link PipelineDocumentResponse} instance. + * Set the createdTimestamp of this {@link PipelineDocumentResponse} instance. * - * @param lastUpdatedTimestamp The lastUpdatedTimestamp of this {@link PipelineDocumentResponse} + * @param createdTimestamp The createdTimestamp of this {@link PipelineDocumentResponse} */ - public void setLastUpdatedTimestamp(@Nullable final String lastUpdatedTimestamp) { - this.lastUpdatedTimestamp = lastUpdatedTimestamp; + public void setCreatedTimestamp(@Nullable final String createdTimestamp) { + this.createdTimestamp = createdTimestamp; } /** - * Set the status of this {@link PipelineDocumentResponse} instance and return the same instance. + * Set the lastUpdatedTimestamp of this {@link PipelineDocumentResponse} instance and return the + * same instance. * - * @param status The status of this {@link PipelineDocumentResponse} + * @param lastUpdatedTimestamp The lastUpdatedTimestamp of this {@link PipelineDocumentResponse} * @return The same instance of this {@link PipelineDocumentResponse} class */ @Nonnull - public PipelineDocumentResponse status(@Nullable final DocumentStatus status) { - this.status = status; + public PipelineDocumentResponse lastUpdatedTimestamp( + @Nullable final String lastUpdatedTimestamp) { + this.lastUpdatedTimestamp = lastUpdatedTimestamp; return this; } /** - * Get status + * Get lastUpdatedTimestamp * - * @return status The status of this {@link PipelineDocumentResponse} instance. + * @return lastUpdatedTimestamp The lastUpdatedTimestamp of this {@link PipelineDocumentResponse} + * instance. */ @Nonnull - public DocumentStatus getStatus() { - return status; + public String getLastUpdatedTimestamp() { + return lastUpdatedTimestamp; } /** - * Set the status of this {@link PipelineDocumentResponse} instance. + * Set the lastUpdatedTimestamp of this {@link PipelineDocumentResponse} instance. * - * @param status The status of this {@link PipelineDocumentResponse} + * @param lastUpdatedTimestamp The lastUpdatedTimestamp of this {@link PipelineDocumentResponse} */ - public void setStatus(@Nullable final DocumentStatus status) { - this.status = status; + public void setLastUpdatedTimestamp(@Nullable final String lastUpdatedTimestamp) { + this.lastUpdatedTimestamp = lastUpdatedTimestamp; } /** @@ -250,11 +319,13 @@ public Object getCustomField(@Nonnull final String name) throws NoSuchElementExc public Map toMap() { final Map declaredFields = new LinkedHashMap<>(cloudSdkCustomFields); if (id != null) declaredFields.put("id", id); - if (viewLocation != null) declaredFields.put("viewLocation", viewLocation); - if (downloadLocation != null) declaredFields.put("downloadLocation", downloadLocation); + if (status != null) declaredFields.put("status", status); + if (absoluteUrl != null) declaredFields.put("absoluteUrl", absoluteUrl); + if (title != null) declaredFields.put("title", title); + if (metadataId != null) declaredFields.put("metadataId", metadataId); + if (createdTimestamp != null) declaredFields.put("createdTimestamp", createdTimestamp); if (lastUpdatedTimestamp != null) declaredFields.put("lastUpdatedTimestamp", lastUpdatedTimestamp); - if (status != null) declaredFields.put("status", status); return declaredFields; } @@ -281,16 +352,25 @@ public boolean equals(@Nullable final java.lang.Object o) { final PipelineDocumentResponse pipelineDocumentResponse = (PipelineDocumentResponse) o; return Objects.equals(this.cloudSdkCustomFields, pipelineDocumentResponse.cloudSdkCustomFields) && Objects.equals(this.id, pipelineDocumentResponse.id) - && Objects.equals(this.viewLocation, pipelineDocumentResponse.viewLocation) - && Objects.equals(this.downloadLocation, pipelineDocumentResponse.downloadLocation) - && Objects.equals(this.lastUpdatedTimestamp, pipelineDocumentResponse.lastUpdatedTimestamp) - && Objects.equals(this.status, pipelineDocumentResponse.status); + && Objects.equals(this.status, pipelineDocumentResponse.status) + && Objects.equals(this.absoluteUrl, pipelineDocumentResponse.absoluteUrl) + && Objects.equals(this.title, pipelineDocumentResponse.title) + && Objects.equals(this.metadataId, pipelineDocumentResponse.metadataId) + && Objects.equals(this.createdTimestamp, pipelineDocumentResponse.createdTimestamp) + && Objects.equals(this.lastUpdatedTimestamp, pipelineDocumentResponse.lastUpdatedTimestamp); } @Override public int hashCode() { return Objects.hash( - id, viewLocation, downloadLocation, lastUpdatedTimestamp, status, cloudSdkCustomFields); + id, + status, + absoluteUrl, + title, + metadataId, + createdTimestamp, + lastUpdatedTimestamp, + cloudSdkCustomFields); } @Override @@ -299,12 +379,14 @@ public String toString() { final StringBuilder sb = new StringBuilder(); sb.append("class PipelineDocumentResponse {\n"); sb.append(" id: ").append(toIndentedString(id)).append("\n"); - sb.append(" viewLocation: ").append(toIndentedString(viewLocation)).append("\n"); - sb.append(" downloadLocation: ").append(toIndentedString(downloadLocation)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" absoluteUrl: ").append(toIndentedString(absoluteUrl)).append("\n"); + sb.append(" title: ").append(toIndentedString(title)).append("\n"); + sb.append(" metadataId: ").append(toIndentedString(metadataId)).append("\n"); + sb.append(" createdTimestamp: ").append(toIndentedString(createdTimestamp)).append("\n"); sb.append(" lastUpdatedTimestamp: ") .append(toIndentedString(lastUpdatedTimestamp)) .append("\n"); - sb.append(" status: ").append(toIndentedString(status)).append("\n"); cloudSdkCustomFields.forEach( (k, v) -> sb.append(" ").append(k).append(": ").append(toIndentedString(v)).append("\n")); diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/S3Configuration.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/S3Configuration.java new file mode 100644 index 000000000..0958fd75b --- /dev/null +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/S3Configuration.java @@ -0,0 +1,221 @@ +/* + * Grounding + * Grounding is a service designed to handle data-related tasks, such as grounding and retrieval, using vector databases. It provides specialized data retrieval through these databases, grounding the retrieval process with your own external and context-relevant data. Grounding combines generative AI capabilities with the ability to use real-time, precise data to improve decision-making and business operations for specific AI-driven business solutions. + * + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +package com.sap.ai.sdk.grounding.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.NoSuchElementException; +import java.util.Objects; +import java.util.Set; +import javax.annotation.Nonnull; +import javax.annotation.Nullable; + +/** S3Configuration */ +// CHECKSTYLE:OFF +public class S3Configuration +// CHECKSTYLE:ON +{ + @JsonProperty("destination") + private String destination; + + @JsonProperty("s3") + private SFTPConfigurationSftp s3; + + @JsonAnySetter @JsonAnyGetter + private final Map cloudSdkCustomFields = new LinkedHashMap<>(); + + /** Default constructor for S3Configuration. */ + protected S3Configuration() {} + + /** + * Set the destination of this {@link S3Configuration} instance and return the same instance. + * + * @param destination The destination of this {@link S3Configuration} + * @return The same instance of this {@link S3Configuration} class + */ + @Nonnull + public S3Configuration destination(@Nonnull final String destination) { + this.destination = destination; + return this; + } + + /** + * Get destination + * + * @return destination The destination of this {@link S3Configuration} instance. + */ + @Nonnull + public String getDestination() { + return destination; + } + + /** + * Set the destination of this {@link S3Configuration} instance. + * + * @param destination The destination of this {@link S3Configuration} + */ + public void setDestination(@Nonnull final String destination) { + this.destination = destination; + } + + /** + * Set the s3 of this {@link S3Configuration} instance and return the same instance. + * + * @param s3 The s3 of this {@link S3Configuration} + * @return The same instance of this {@link S3Configuration} class + */ + @Nonnull + public S3Configuration s3(@Nullable final SFTPConfigurationSftp s3) { + this.s3 = s3; + return this; + } + + /** + * Get s3 + * + * @return s3 The s3 of this {@link S3Configuration} instance. + */ + @Nonnull + public SFTPConfigurationSftp getS3() { + return s3; + } + + /** + * Set the s3 of this {@link S3Configuration} instance. + * + * @param s3 The s3 of this {@link S3Configuration} + */ + public void setS3(@Nullable final SFTPConfigurationSftp s3) { + this.s3 = s3; + } + + /** + * Get the names of the unrecognizable properties of the {@link S3Configuration}. + * + * @return The set of properties names + */ + @JsonIgnore + @Nonnull + public Set getCustomFieldNames() { + return cloudSdkCustomFields.keySet(); + } + + /** + * Get the value of an unrecognizable property of this {@link S3Configuration} instance. + * + * @deprecated Use {@link #toMap()} instead. + * @param name The name of the property + * @return The value of the property + * @throws NoSuchElementException If no property with the given name could be found. + */ + @Nullable + @Deprecated + public Object getCustomField(@Nonnull final String name) throws NoSuchElementException { + if (!cloudSdkCustomFields.containsKey(name)) { + throw new NoSuchElementException("S3Configuration has no field with name '" + name + "'."); + } + return cloudSdkCustomFields.get(name); + } + + /** + * Get the value of all properties of this {@link S3Configuration} instance including unrecognized + * properties. + * + * @return The map of all properties + */ + @JsonIgnore + @Nonnull + public Map toMap() { + final Map declaredFields = new LinkedHashMap<>(cloudSdkCustomFields); + if (destination != null) declaredFields.put("destination", destination); + if (s3 != null) declaredFields.put("s3", s3); + return declaredFields; + } + + /** + * Set an unrecognizable property of this {@link S3Configuration} instance. If the map previously + * contained a mapping for the key, the old value is replaced by the specified value. + * + * @param customFieldName The name of the property + * @param customFieldValue The value of the property + */ + @JsonIgnore + public void setCustomField(@Nonnull String customFieldName, @Nullable Object customFieldValue) { + cloudSdkCustomFields.put(customFieldName, customFieldValue); + } + + @Override + public boolean equals(@Nullable final java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + final S3Configuration s3Configuration = (S3Configuration) o; + return Objects.equals(this.cloudSdkCustomFields, s3Configuration.cloudSdkCustomFields) + && Objects.equals(this.destination, s3Configuration.destination) + && Objects.equals(this.s3, s3Configuration.s3); + } + + @Override + public int hashCode() { + return Objects.hash(destination, s3, cloudSdkCustomFields); + } + + @Override + @Nonnull + public String toString() { + final StringBuilder sb = new StringBuilder(); + sb.append("class S3Configuration {\n"); + sb.append(" destination: ").append(toIndentedString(destination)).append("\n"); + sb.append(" s3: ").append(toIndentedString(s3)).append("\n"); + cloudSdkCustomFields.forEach( + (k, v) -> + sb.append(" ").append(k).append(": ").append(toIndentedString(v)).append("\n")); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(final java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Create a type-safe, fluent-api builder object to construct a new {@link S3Configuration} + * instance with all required arguments. + */ + public static Builder create() { + return (destination) -> new S3Configuration().destination(destination); + } + + /** Builder helper class. */ + public interface Builder { + /** + * Set the destination of this {@link S3Configuration} instance. + * + * @param destination The destination of this {@link S3Configuration} + * @return The S3Configuration instance. + */ + S3Configuration destination(@Nonnull final String destination); + } +} diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/S3PipelineCreateRequest.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/S3PipelineCreateRequest.java index 7218939b1..33018523c 100644 --- a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/S3PipelineCreateRequest.java +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/S3PipelineCreateRequest.java @@ -88,7 +88,7 @@ public static TypeEnum fromValue(@Nonnull final String value) { private TypeEnum type; @JsonProperty("configuration") - private CommonConfiguration _configuration; + private S3Configuration _configuration; @JsonProperty("metadata") private MetaData metadata; @@ -138,7 +138,7 @@ public void setType(@Nonnull final TypeEnum type) { * @return The same instance of this {@link S3PipelineCreateRequest} class */ @Nonnull - public S3PipelineCreateRequest _configuration(@Nonnull final CommonConfiguration _configuration) { + public S3PipelineCreateRequest _configuration(@Nonnull final S3Configuration _configuration) { this._configuration = _configuration; return this; } @@ -149,7 +149,7 @@ public S3PipelineCreateRequest _configuration(@Nonnull final CommonConfiguration * @return _configuration The _configuration of this {@link S3PipelineCreateRequest} instance. */ @Nonnull - public CommonConfiguration getConfiguration() { + public S3Configuration getConfiguration() { return _configuration; } @@ -158,7 +158,7 @@ public CommonConfiguration getConfiguration() { * * @param _configuration The _configuration of this {@link S3PipelineCreateRequest} */ - public void setConfiguration(@Nonnull final CommonConfiguration _configuration) { + public void setConfiguration(@Nonnull final S3Configuration _configuration) { this._configuration = _configuration; } @@ -323,6 +323,6 @@ public interface Builder1 { * @param _configuration The _configuration of this {@link S3PipelineCreateRequest} * @return The S3PipelineCreateRequest instance. */ - S3PipelineCreateRequest _configuration(@Nonnull final CommonConfiguration _configuration); + S3PipelineCreateRequest _configuration(@Nonnull final S3Configuration _configuration); } } diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/S3PipelineGetResponse.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/S3PipelineGetResponse.java index d204da19d..3692d33c3 100644 --- a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/S3PipelineGetResponse.java +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/S3PipelineGetResponse.java @@ -94,7 +94,7 @@ public static TypeEnum fromValue(@Nonnull final String value) { private MetaData metadata; @JsonProperty("configuration") - private CommonConfiguration _configuration; + private S3Configuration _configuration; @JsonAnySetter @JsonAnyGetter private final Map cloudSdkCustomFields = new LinkedHashMap<>(); @@ -203,7 +203,7 @@ public void setMetadata(@Nullable final MetaData metadata) { * @return The same instance of this {@link S3PipelineGetResponse} class */ @Nonnull - public S3PipelineGetResponse _configuration(@Nonnull final CommonConfiguration _configuration) { + public S3PipelineGetResponse _configuration(@Nonnull final S3Configuration _configuration) { this._configuration = _configuration; return this; } @@ -214,7 +214,7 @@ public S3PipelineGetResponse _configuration(@Nonnull final CommonConfiguration _ * @return _configuration The _configuration of this {@link S3PipelineGetResponse} instance. */ @Nonnull - public CommonConfiguration getConfiguration() { + public S3Configuration getConfiguration() { return _configuration; } @@ -223,7 +223,7 @@ public CommonConfiguration getConfiguration() { * * @param _configuration The _configuration of this {@link S3PipelineGetResponse} */ - public void setConfiguration(@Nonnull final CommonConfiguration _configuration) { + public void setConfiguration(@Nonnull final S3Configuration _configuration) { this._configuration = _configuration; } @@ -373,6 +373,6 @@ public interface Builder2 { * @param _configuration The _configuration of this {@link S3PipelineGetResponse} * @return The S3PipelineGetResponse instance. */ - S3PipelineGetResponse _configuration(@Nonnull final CommonConfiguration _configuration); + S3PipelineGetResponse _configuration(@Nonnull final S3Configuration _configuration); } } diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SDMPipelineCreateRequest.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SDMPipelineCreateRequest.java new file mode 100644 index 000000000..61d9278fa --- /dev/null +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SDMPipelineCreateRequest.java @@ -0,0 +1,290 @@ +/* + * Grounding + * Grounding is a service designed to handle data-related tasks, such as grounding and retrieval, using vector databases. It provides specialized data retrieval through these databases, grounding the retrieval process with your own external and context-relevant data. Grounding combines generative AI capabilities with the ability to use real-time, precise data to improve decision-making and business operations for specific AI-driven business solutions. + * + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +package com.sap.ai.sdk.grounding.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.NoSuchElementException; +import java.util.Objects; +import java.util.Set; +import javax.annotation.Nonnull; +import javax.annotation.Nullable; + +/** SDMPipelineCreateRequest */ +// CHECKSTYLE:OFF +public class SDMPipelineCreateRequest implements CreatePipeline +// CHECKSTYLE:ON +{ + /** Gets or Sets type */ + public enum TypeEnum { + /** The SDM option of this SDMPipelineCreateRequest */ + SDM("SDM"), + + /** The UNKNOWN_DEFAULT_OPEN_API option of this SDMPipelineCreateRequest */ + UNKNOWN_DEFAULT_OPEN_API("unknown_default_open_api"); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + /** + * Get the value of the enum + * + * @return The enum value + */ + @JsonValue + @Nonnull + public String getValue() { + return value; + } + + /** + * Get the String value of the enum value. + * + * @return The enum value as String + */ + @Override + @Nonnull + public String toString() { + return String.valueOf(value); + } + + /** + * Get the enum value from a String value + * + * @param value The String value + * @return The enum value of type SDMPipelineCreateRequest + */ + @JsonCreator + @Nonnull + public static TypeEnum fromValue(@Nonnull final String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + return UNKNOWN_DEFAULT_OPEN_API; + } + } + + @JsonProperty("type") + private TypeEnum type; + + @JsonProperty("metadata") + private MetaData metadata; + + @JsonAnySetter @JsonAnyGetter + private final Map cloudSdkCustomFields = new LinkedHashMap<>(); + + /** Default constructor for SDMPipelineCreateRequest. */ + protected SDMPipelineCreateRequest() {} + + /** + * Set the type of this {@link SDMPipelineCreateRequest} instance and return the same instance. + * + * @param type The type of this {@link SDMPipelineCreateRequest} + * @return The same instance of this {@link SDMPipelineCreateRequest} class + */ + @Nonnull + public SDMPipelineCreateRequest type(@Nonnull final TypeEnum type) { + this.type = type; + return this; + } + + /** + * Get type + * + * @return type The type of this {@link SDMPipelineCreateRequest} instance. + */ + @Nonnull + public TypeEnum getType() { + return type; + } + + /** + * Set the type of this {@link SDMPipelineCreateRequest} instance. + * + * @param type The type of this {@link SDMPipelineCreateRequest} + */ + public void setType(@Nonnull final TypeEnum type) { + this.type = type; + } + + /** + * Set the metadata of this {@link SDMPipelineCreateRequest} instance and return the same + * instance. + * + * @param metadata The metadata of this {@link SDMPipelineCreateRequest} + * @return The same instance of this {@link SDMPipelineCreateRequest} class + */ + @Nonnull + public SDMPipelineCreateRequest metadata(@Nonnull final MetaData metadata) { + this.metadata = metadata; + return this; + } + + /** + * Get metadata + * + * @return metadata The metadata of this {@link SDMPipelineCreateRequest} instance. + */ + @Nonnull + public MetaData getMetadata() { + return metadata; + } + + /** + * Set the metadata of this {@link SDMPipelineCreateRequest} instance. + * + * @param metadata The metadata of this {@link SDMPipelineCreateRequest} + */ + public void setMetadata(@Nonnull final MetaData metadata) { + this.metadata = metadata; + } + + /** + * Get the names of the unrecognizable properties of the {@link SDMPipelineCreateRequest}. + * + * @return The set of properties names + */ + @JsonIgnore + @Nonnull + public Set getCustomFieldNames() { + return cloudSdkCustomFields.keySet(); + } + + /** + * Get the value of an unrecognizable property of this {@link SDMPipelineCreateRequest} instance. + * + * @deprecated Use {@link #toMap()} instead. + * @param name The name of the property + * @return The value of the property + * @throws NoSuchElementException If no property with the given name could be found. + */ + @Nullable + @Deprecated + public Object getCustomField(@Nonnull final String name) throws NoSuchElementException { + if (!cloudSdkCustomFields.containsKey(name)) { + throw new NoSuchElementException( + "SDMPipelineCreateRequest has no field with name '" + name + "'."); + } + return cloudSdkCustomFields.get(name); + } + + /** + * Get the value of all properties of this {@link SDMPipelineCreateRequest} instance including + * unrecognized properties. + * + * @return The map of all properties + */ + @JsonIgnore + @Nonnull + public Map toMap() { + final Map declaredFields = new LinkedHashMap<>(cloudSdkCustomFields); + if (type != null) declaredFields.put("type", type); + if (metadata != null) declaredFields.put("metadata", metadata); + return declaredFields; + } + + /** + * Set an unrecognizable property of this {@link SDMPipelineCreateRequest} instance. If the map + * previously contained a mapping for the key, the old value is replaced by the specified value. + * + * @param customFieldName The name of the property + * @param customFieldValue The value of the property + */ + @JsonIgnore + public void setCustomField(@Nonnull String customFieldName, @Nullable Object customFieldValue) { + cloudSdkCustomFields.put(customFieldName, customFieldValue); + } + + @Override + public boolean equals(@Nullable final java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + final SDMPipelineCreateRequest sdMPipelineCreateRequest = (SDMPipelineCreateRequest) o; + return Objects.equals(this.cloudSdkCustomFields, sdMPipelineCreateRequest.cloudSdkCustomFields) + && Objects.equals(this.type, sdMPipelineCreateRequest.type) + && Objects.equals(this.metadata, sdMPipelineCreateRequest.metadata); + } + + @Override + public int hashCode() { + return Objects.hash(type, metadata, cloudSdkCustomFields); + } + + @Override + @Nonnull + public String toString() { + final StringBuilder sb = new StringBuilder(); + sb.append("class SDMPipelineCreateRequest {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" metadata: ").append(toIndentedString(metadata)).append("\n"); + cloudSdkCustomFields.forEach( + (k, v) -> + sb.append(" ").append(k).append(": ").append(toIndentedString(v)).append("\n")); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(final java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Create a type-safe, fluent-api builder object to construct a new {@link + * SDMPipelineCreateRequest} instance with all required arguments. + */ + public static Builder create() { + return (type) -> (metadata) -> new SDMPipelineCreateRequest().type(type).metadata(metadata); + } + + /** Builder helper class. */ + public interface Builder { + /** + * Set the type of this {@link SDMPipelineCreateRequest} instance. + * + * @param type The type of this {@link SDMPipelineCreateRequest} + * @return The SDMPipelineCreateRequest builder. + */ + Builder1 type(@Nonnull final TypeEnum type); + } + + /** Builder helper class. */ + public interface Builder1 { + /** + * Set the metadata of this {@link SDMPipelineCreateRequest} instance. + * + * @param metadata The metadata of this {@link SDMPipelineCreateRequest} + * @return The SDMPipelineCreateRequest instance. + */ + SDMPipelineCreateRequest metadata(@Nonnull final MetaData metadata); + } +} diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SDMPipelineGetResponse.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SDMPipelineGetResponse.java new file mode 100644 index 000000000..c07aeee66 --- /dev/null +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SDMPipelineGetResponse.java @@ -0,0 +1,338 @@ +/* + * Grounding + * Grounding is a service designed to handle data-related tasks, such as grounding and retrieval, using vector databases. It provides specialized data retrieval through these databases, grounding the retrieval process with your own external and context-relevant data. Grounding combines generative AI capabilities with the ability to use real-time, precise data to improve decision-making and business operations for specific AI-driven business solutions. + * + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +package com.sap.ai.sdk.grounding.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.NoSuchElementException; +import java.util.Objects; +import java.util.Set; +import javax.annotation.Nonnull; +import javax.annotation.Nullable; + +/** SDMPipelineGetResponse */ +// CHECKSTYLE:OFF +public class SDMPipelineGetResponse implements GetPipeline +// CHECKSTYLE:ON +{ + @JsonProperty("id") + private String id; + + /** Gets or Sets type */ + public enum TypeEnum { + /** The SDM option of this SDMPipelineGetResponse */ + SDM("SDM"), + + /** The UNKNOWN_DEFAULT_OPEN_API option of this SDMPipelineGetResponse */ + UNKNOWN_DEFAULT_OPEN_API("unknown_default_open_api"); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + /** + * Get the value of the enum + * + * @return The enum value + */ + @JsonValue + @Nonnull + public String getValue() { + return value; + } + + /** + * Get the String value of the enum value. + * + * @return The enum value as String + */ + @Override + @Nonnull + public String toString() { + return String.valueOf(value); + } + + /** + * Get the enum value from a String value + * + * @param value The String value + * @return The enum value of type SDMPipelineGetResponse + */ + @JsonCreator + @Nonnull + public static TypeEnum fromValue(@Nonnull final String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + return UNKNOWN_DEFAULT_OPEN_API; + } + } + + @JsonProperty("type") + private TypeEnum type; + + @JsonProperty("metadata") + private MetaData metadata; + + @JsonAnySetter @JsonAnyGetter + private final Map cloudSdkCustomFields = new LinkedHashMap<>(); + + /** Default constructor for SDMPipelineGetResponse. */ + protected SDMPipelineGetResponse() {} + + /** + * Set the id of this {@link SDMPipelineGetResponse} instance and return the same instance. + * + * @param id The id of this {@link SDMPipelineGetResponse} + * @return The same instance of this {@link SDMPipelineGetResponse} class + */ + @Nonnull + public SDMPipelineGetResponse id(@Nonnull final String id) { + this.id = id; + return this; + } + + /** + * Get id + * + * @return id The id of this {@link SDMPipelineGetResponse} instance. + */ + @Nonnull + public String getId() { + return id; + } + + /** + * Set the id of this {@link SDMPipelineGetResponse} instance. + * + * @param id The id of this {@link SDMPipelineGetResponse} + */ + public void setId(@Nonnull final String id) { + this.id = id; + } + + /** + * Set the type of this {@link SDMPipelineGetResponse} instance and return the same instance. + * + * @param type The type of this {@link SDMPipelineGetResponse} + * @return The same instance of this {@link SDMPipelineGetResponse} class + */ + @Nonnull + public SDMPipelineGetResponse type(@Nonnull final TypeEnum type) { + this.type = type; + return this; + } + + /** + * Get type + * + * @return type The type of this {@link SDMPipelineGetResponse} instance. + */ + @Nonnull + public TypeEnum getType() { + return type; + } + + /** + * Set the type of this {@link SDMPipelineGetResponse} instance. + * + * @param type The type of this {@link SDMPipelineGetResponse} + */ + public void setType(@Nonnull final TypeEnum type) { + this.type = type; + } + + /** + * Set the metadata of this {@link SDMPipelineGetResponse} instance and return the same instance. + * + * @param metadata The metadata of this {@link SDMPipelineGetResponse} + * @return The same instance of this {@link SDMPipelineGetResponse} class + */ + @Nonnull + public SDMPipelineGetResponse metadata(@Nonnull final MetaData metadata) { + this.metadata = metadata; + return this; + } + + /** + * Get metadata + * + * @return metadata The metadata of this {@link SDMPipelineGetResponse} instance. + */ + @Nonnull + public MetaData getMetadata() { + return metadata; + } + + /** + * Set the metadata of this {@link SDMPipelineGetResponse} instance. + * + * @param metadata The metadata of this {@link SDMPipelineGetResponse} + */ + public void setMetadata(@Nonnull final MetaData metadata) { + this.metadata = metadata; + } + + /** + * Get the names of the unrecognizable properties of the {@link SDMPipelineGetResponse}. + * + * @return The set of properties names + */ + @JsonIgnore + @Nonnull + public Set getCustomFieldNames() { + return cloudSdkCustomFields.keySet(); + } + + /** + * Get the value of an unrecognizable property of this {@link SDMPipelineGetResponse} instance. + * + * @deprecated Use {@link #toMap()} instead. + * @param name The name of the property + * @return The value of the property + * @throws NoSuchElementException If no property with the given name could be found. + */ + @Nullable + @Deprecated + public Object getCustomField(@Nonnull final String name) throws NoSuchElementException { + if (!cloudSdkCustomFields.containsKey(name)) { + throw new NoSuchElementException( + "SDMPipelineGetResponse has no field with name '" + name + "'."); + } + return cloudSdkCustomFields.get(name); + } + + /** + * Get the value of all properties of this {@link SDMPipelineGetResponse} instance including + * unrecognized properties. + * + * @return The map of all properties + */ + @JsonIgnore + @Nonnull + public Map toMap() { + final Map declaredFields = new LinkedHashMap<>(cloudSdkCustomFields); + if (id != null) declaredFields.put("id", id); + if (type != null) declaredFields.put("type", type); + if (metadata != null) declaredFields.put("metadata", metadata); + return declaredFields; + } + + /** + * Set an unrecognizable property of this {@link SDMPipelineGetResponse} instance. If the map + * previously contained a mapping for the key, the old value is replaced by the specified value. + * + * @param customFieldName The name of the property + * @param customFieldValue The value of the property + */ + @JsonIgnore + public void setCustomField(@Nonnull String customFieldName, @Nullable Object customFieldValue) { + cloudSdkCustomFields.put(customFieldName, customFieldValue); + } + + @Override + public boolean equals(@Nullable final java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + final SDMPipelineGetResponse sdMPipelineGetResponse = (SDMPipelineGetResponse) o; + return Objects.equals(this.cloudSdkCustomFields, sdMPipelineGetResponse.cloudSdkCustomFields) + && Objects.equals(this.id, sdMPipelineGetResponse.id) + && Objects.equals(this.type, sdMPipelineGetResponse.type) + && Objects.equals(this.metadata, sdMPipelineGetResponse.metadata); + } + + @Override + public int hashCode() { + return Objects.hash(id, type, metadata, cloudSdkCustomFields); + } + + @Override + @Nonnull + public String toString() { + final StringBuilder sb = new StringBuilder(); + sb.append("class SDMPipelineGetResponse {\n"); + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" metadata: ").append(toIndentedString(metadata)).append("\n"); + cloudSdkCustomFields.forEach( + (k, v) -> + sb.append(" ").append(k).append(": ").append(toIndentedString(v)).append("\n")); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(final java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Create a type-safe, fluent-api builder object to construct a new {@link SDMPipelineGetResponse} + * instance with all required arguments. + */ + public static Builder create() { + return (id) -> + (type) -> (metadata) -> new SDMPipelineGetResponse().id(id).type(type).metadata(metadata); + } + + /** Builder helper class. */ + public interface Builder { + /** + * Set the id of this {@link SDMPipelineGetResponse} instance. + * + * @param id The id of this {@link SDMPipelineGetResponse} + * @return The SDMPipelineGetResponse builder. + */ + Builder1 id(@Nonnull final String id); + } + + /** Builder helper class. */ + public interface Builder1 { + /** + * Set the type of this {@link SDMPipelineGetResponse} instance. + * + * @param type The type of this {@link SDMPipelineGetResponse} + * @return The SDMPipelineGetResponse builder. + */ + Builder2 type(@Nonnull final TypeEnum type); + } + + /** Builder helper class. */ + public interface Builder2 { + /** + * Set the metadata of this {@link SDMPipelineGetResponse} instance. + * + * @param metadata The metadata of this {@link SDMPipelineGetResponse} + * @return The SDMPipelineGetResponse instance. + */ + SDMPipelineGetResponse metadata(@Nonnull final MetaData metadata); + } +} diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/CommonConfiguration.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SFTPConfiguration.java similarity index 61% rename from core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/CommonConfiguration.java rename to core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SFTPConfiguration.java index 2d07db9f7..f08226ee2 100644 --- a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/CommonConfiguration.java +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SFTPConfiguration.java @@ -23,28 +23,31 @@ import javax.annotation.Nonnull; import javax.annotation.Nullable; -/** CommonConfiguration */ +/** SFTPConfiguration */ // CHECKSTYLE:OFF -public class CommonConfiguration +public class SFTPConfiguration // CHECKSTYLE:ON { @JsonProperty("destination") private String destination; + @JsonProperty("sftp") + private SFTPConfigurationSftp sftp; + @JsonAnySetter @JsonAnyGetter private final Map cloudSdkCustomFields = new LinkedHashMap<>(); - /** Default constructor for CommonConfiguration. */ - protected CommonConfiguration() {} + /** Default constructor for SFTPConfiguration. */ + protected SFTPConfiguration() {} /** - * Set the destination of this {@link CommonConfiguration} instance and return the same instance. + * Set the destination of this {@link SFTPConfiguration} instance and return the same instance. * - * @param destination The destination of this {@link CommonConfiguration} - * @return The same instance of this {@link CommonConfiguration} class + * @param destination The destination of this {@link SFTPConfiguration} + * @return The same instance of this {@link SFTPConfiguration} class */ @Nonnull - public CommonConfiguration destination(@Nonnull final String destination) { + public SFTPConfiguration destination(@Nonnull final String destination) { this.destination = destination; return this; } @@ -52,7 +55,7 @@ public CommonConfiguration destination(@Nonnull final String destination) { /** * Get destination * - * @return destination The destination of this {@link CommonConfiguration} instance. + * @return destination The destination of this {@link SFTPConfiguration} instance. */ @Nonnull public String getDestination() { @@ -60,16 +63,47 @@ public String getDestination() { } /** - * Set the destination of this {@link CommonConfiguration} instance. + * Set the destination of this {@link SFTPConfiguration} instance. * - * @param destination The destination of this {@link CommonConfiguration} + * @param destination The destination of this {@link SFTPConfiguration} */ public void setDestination(@Nonnull final String destination) { this.destination = destination; } /** - * Get the names of the unrecognizable properties of the {@link CommonConfiguration}. + * Set the sftp of this {@link SFTPConfiguration} instance and return the same instance. + * + * @param sftp The sftp of this {@link SFTPConfiguration} + * @return The same instance of this {@link SFTPConfiguration} class + */ + @Nonnull + public SFTPConfiguration sftp(@Nullable final SFTPConfigurationSftp sftp) { + this.sftp = sftp; + return this; + } + + /** + * Get sftp + * + * @return sftp The sftp of this {@link SFTPConfiguration} instance. + */ + @Nonnull + public SFTPConfigurationSftp getSftp() { + return sftp; + } + + /** + * Set the sftp of this {@link SFTPConfiguration} instance. + * + * @param sftp The sftp of this {@link SFTPConfiguration} + */ + public void setSftp(@Nullable final SFTPConfigurationSftp sftp) { + this.sftp = sftp; + } + + /** + * Get the names of the unrecognizable properties of the {@link SFTPConfiguration}. * * @return The set of properties names */ @@ -80,7 +114,7 @@ public Set getCustomFieldNames() { } /** - * Get the value of an unrecognizable property of this {@link CommonConfiguration} instance. + * Get the value of an unrecognizable property of this {@link SFTPConfiguration} instance. * * @deprecated Use {@link #toMap()} instead. * @param name The name of the property @@ -91,14 +125,13 @@ public Set getCustomFieldNames() { @Deprecated public Object getCustomField(@Nonnull final String name) throws NoSuchElementException { if (!cloudSdkCustomFields.containsKey(name)) { - throw new NoSuchElementException( - "CommonConfiguration has no field with name '" + name + "'."); + throw new NoSuchElementException("SFTPConfiguration has no field with name '" + name + "'."); } return cloudSdkCustomFields.get(name); } /** - * Get the value of all properties of this {@link CommonConfiguration} instance including + * Get the value of all properties of this {@link SFTPConfiguration} instance including * unrecognized properties. * * @return The map of all properties @@ -108,11 +141,12 @@ public Object getCustomField(@Nonnull final String name) throws NoSuchElementExc public Map toMap() { final Map declaredFields = new LinkedHashMap<>(cloudSdkCustomFields); if (destination != null) declaredFields.put("destination", destination); + if (sftp != null) declaredFields.put("sftp", sftp); return declaredFields; } /** - * Set an unrecognizable property of this {@link CommonConfiguration} instance. If the map + * Set an unrecognizable property of this {@link SFTPConfiguration} instance. If the map * previously contained a mapping for the key, the old value is replaced by the specified value. * * @param customFieldName The name of the property @@ -131,22 +165,24 @@ public boolean equals(@Nullable final java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - final CommonConfiguration commonConfiguration = (CommonConfiguration) o; - return Objects.equals(this.cloudSdkCustomFields, commonConfiguration.cloudSdkCustomFields) - && Objects.equals(this.destination, commonConfiguration.destination); + final SFTPConfiguration sfTPConfiguration = (SFTPConfiguration) o; + return Objects.equals(this.cloudSdkCustomFields, sfTPConfiguration.cloudSdkCustomFields) + && Objects.equals(this.destination, sfTPConfiguration.destination) + && Objects.equals(this.sftp, sfTPConfiguration.sftp); } @Override public int hashCode() { - return Objects.hash(destination, cloudSdkCustomFields); + return Objects.hash(destination, sftp, cloudSdkCustomFields); } @Override @Nonnull public String toString() { final StringBuilder sb = new StringBuilder(); - sb.append("class CommonConfiguration {\n"); + sb.append("class SFTPConfiguration {\n"); sb.append(" destination: ").append(toIndentedString(destination)).append("\n"); + sb.append(" sftp: ").append(toIndentedString(sftp)).append("\n"); cloudSdkCustomFields.forEach( (k, v) -> sb.append(" ").append(k).append(": ").append(toIndentedString(v)).append("\n")); @@ -165,21 +201,21 @@ private String toIndentedString(final java.lang.Object o) { } /** - * Create a type-safe, fluent-api builder object to construct a new {@link CommonConfiguration} + * Create a type-safe, fluent-api builder object to construct a new {@link SFTPConfiguration} * instance with all required arguments. */ public static Builder create() { - return (destination) -> new CommonConfiguration().destination(destination); + return (destination) -> new SFTPConfiguration().destination(destination); } /** Builder helper class. */ public interface Builder { /** - * Set the destination of this {@link CommonConfiguration} instance. + * Set the destination of this {@link SFTPConfiguration} instance. * - * @param destination The destination of this {@link CommonConfiguration} - * @return The CommonConfiguration instance. + * @param destination The destination of this {@link SFTPConfiguration} + * @return The SFTPConfiguration instance. */ - CommonConfiguration destination(@Nonnull final String destination); + SFTPConfiguration destination(@Nonnull final String destination); } } diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SFTPConfigurationSftp.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SFTPConfigurationSftp.java new file mode 100644 index 000000000..d46db0b3d --- /dev/null +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SFTPConfigurationSftp.java @@ -0,0 +1,189 @@ +/* + * Grounding + * Grounding is a service designed to handle data-related tasks, such as grounding and retrieval, using vector databases. It provides specialized data retrieval through these databases, grounding the retrieval process with your own external and context-relevant data. Grounding combines generative AI capabilities with the ability to use real-time, precise data to improve decision-making and business operations for specific AI-driven business solutions. + * + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +package com.sap.ai.sdk.grounding.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import java.util.NoSuchElementException; +import java.util.Objects; +import java.util.Set; +import javax.annotation.Nonnull; +import javax.annotation.Nullable; + +/** SFTPConfigurationSftp */ +// CHECKSTYLE:OFF +public class SFTPConfigurationSftp +// CHECKSTYLE:ON +{ + @JsonProperty("includePaths") + private List includePaths = new ArrayList<>(); + + @JsonAnySetter @JsonAnyGetter + private final Map cloudSdkCustomFields = new LinkedHashMap<>(); + + /** Default constructor for SFTPConfigurationSftp. */ + protected SFTPConfigurationSftp() {} + + /** + * Set the includePaths of this {@link SFTPConfigurationSftp} instance and return the same + * instance. + * + * @param includePaths The includePaths of this {@link SFTPConfigurationSftp} + * @return The same instance of this {@link SFTPConfigurationSftp} class + */ + @Nonnull + public SFTPConfigurationSftp includePaths(@Nullable final List includePaths) { + this.includePaths = includePaths; + return this; + } + + /** + * Add one includePaths instance to this {@link SFTPConfigurationSftp}. + * + * @param includePathsItem The includePaths that should be added + * @return The same instance of type {@link SFTPConfigurationSftp} + */ + @Nonnull + public SFTPConfigurationSftp addIncludePathsItem(@Nonnull final String includePathsItem) { + if (this.includePaths == null) { + this.includePaths = new ArrayList<>(); + } + this.includePaths.add(includePathsItem); + return this; + } + + /** + * Get includePaths + * + * @return includePaths The includePaths of this {@link SFTPConfigurationSftp} instance. + */ + @Nonnull + public List getIncludePaths() { + return includePaths; + } + + /** + * Set the includePaths of this {@link SFTPConfigurationSftp} instance. + * + * @param includePaths The includePaths of this {@link SFTPConfigurationSftp} + */ + public void setIncludePaths(@Nullable final List includePaths) { + this.includePaths = includePaths; + } + + /** + * Get the names of the unrecognizable properties of the {@link SFTPConfigurationSftp}. + * + * @return The set of properties names + */ + @JsonIgnore + @Nonnull + public Set getCustomFieldNames() { + return cloudSdkCustomFields.keySet(); + } + + /** + * Get the value of an unrecognizable property of this {@link SFTPConfigurationSftp} instance. + * + * @deprecated Use {@link #toMap()} instead. + * @param name The name of the property + * @return The value of the property + * @throws NoSuchElementException If no property with the given name could be found. + */ + @Nullable + @Deprecated + public Object getCustomField(@Nonnull final String name) throws NoSuchElementException { + if (!cloudSdkCustomFields.containsKey(name)) { + throw new NoSuchElementException( + "SFTPConfigurationSftp has no field with name '" + name + "'."); + } + return cloudSdkCustomFields.get(name); + } + + /** + * Get the value of all properties of this {@link SFTPConfigurationSftp} instance including + * unrecognized properties. + * + * @return The map of all properties + */ + @JsonIgnore + @Nonnull + public Map toMap() { + final Map declaredFields = new LinkedHashMap<>(cloudSdkCustomFields); + if (includePaths != null) declaredFields.put("includePaths", includePaths); + return declaredFields; + } + + /** + * Set an unrecognizable property of this {@link SFTPConfigurationSftp} instance. If the map + * previously contained a mapping for the key, the old value is replaced by the specified value. + * + * @param customFieldName The name of the property + * @param customFieldValue The value of the property + */ + @JsonIgnore + public void setCustomField(@Nonnull String customFieldName, @Nullable Object customFieldValue) { + cloudSdkCustomFields.put(customFieldName, customFieldValue); + } + + @Override + public boolean equals(@Nullable final java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + final SFTPConfigurationSftp sfTPConfigurationSftp = (SFTPConfigurationSftp) o; + return Objects.equals(this.cloudSdkCustomFields, sfTPConfigurationSftp.cloudSdkCustomFields) + && Objects.equals(this.includePaths, sfTPConfigurationSftp.includePaths); + } + + @Override + public int hashCode() { + return Objects.hash(includePaths, cloudSdkCustomFields); + } + + @Override + @Nonnull + public String toString() { + final StringBuilder sb = new StringBuilder(); + sb.append("class SFTPConfigurationSftp {\n"); + sb.append(" includePaths: ").append(toIndentedString(includePaths)).append("\n"); + cloudSdkCustomFields.forEach( + (k, v) -> + sb.append(" ").append(k).append(": ").append(toIndentedString(v)).append("\n")); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(final java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** Create a new {@link SFTPConfigurationSftp} instance. No arguments are required. */ + public static SFTPConfigurationSftp create() { + return new SFTPConfigurationSftp(); + } +} diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SFTPPipelineCreateRequest.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SFTPPipelineCreateRequest.java index 265a362da..3b3462b09 100644 --- a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SFTPPipelineCreateRequest.java +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SFTPPipelineCreateRequest.java @@ -88,7 +88,7 @@ public static TypeEnum fromValue(@Nonnull final String value) { private TypeEnum type; @JsonProperty("configuration") - private CommonConfiguration _configuration; + private SFTPConfiguration _configuration; @JsonProperty("metadata") private MetaData metadata; @@ -138,8 +138,7 @@ public void setType(@Nonnull final TypeEnum type) { * @return The same instance of this {@link SFTPPipelineCreateRequest} class */ @Nonnull - public SFTPPipelineCreateRequest _configuration( - @Nonnull final CommonConfiguration _configuration) { + public SFTPPipelineCreateRequest _configuration(@Nonnull final SFTPConfiguration _configuration) { this._configuration = _configuration; return this; } @@ -150,7 +149,7 @@ public SFTPPipelineCreateRequest _configuration( * @return _configuration The _configuration of this {@link SFTPPipelineCreateRequest} instance. */ @Nonnull - public CommonConfiguration getConfiguration() { + public SFTPConfiguration getConfiguration() { return _configuration; } @@ -159,7 +158,7 @@ public CommonConfiguration getConfiguration() { * * @param _configuration The _configuration of this {@link SFTPPipelineCreateRequest} */ - public void setConfiguration(@Nonnull final CommonConfiguration _configuration) { + public void setConfiguration(@Nonnull final SFTPConfiguration _configuration) { this._configuration = _configuration; } @@ -326,6 +325,6 @@ public interface Builder1 { * @param _configuration The _configuration of this {@link SFTPPipelineCreateRequest} * @return The SFTPPipelineCreateRequest instance. */ - SFTPPipelineCreateRequest _configuration(@Nonnull final CommonConfiguration _configuration); + SFTPPipelineCreateRequest _configuration(@Nonnull final SFTPConfiguration _configuration); } } diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SFTPPipelineGetResponse.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SFTPPipelineGetResponse.java index 6fe5e0324..6a3f01df4 100644 --- a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SFTPPipelineGetResponse.java +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/SFTPPipelineGetResponse.java @@ -94,7 +94,7 @@ public static TypeEnum fromValue(@Nonnull final String value) { private MetaData metadata; @JsonProperty("configuration") - private CommonConfiguration _configuration; + private SFTPConfiguration _configuration; @JsonAnySetter @JsonAnyGetter private final Map cloudSdkCustomFields = new LinkedHashMap<>(); @@ -203,7 +203,7 @@ public void setMetadata(@Nullable final MetaData metadata) { * @return The same instance of this {@link SFTPPipelineGetResponse} class */ @Nonnull - public SFTPPipelineGetResponse _configuration(@Nonnull final CommonConfiguration _configuration) { + public SFTPPipelineGetResponse _configuration(@Nonnull final SFTPConfiguration _configuration) { this._configuration = _configuration; return this; } @@ -214,7 +214,7 @@ public SFTPPipelineGetResponse _configuration(@Nonnull final CommonConfiguration * @return _configuration The _configuration of this {@link SFTPPipelineGetResponse} instance. */ @Nonnull - public CommonConfiguration getConfiguration() { + public SFTPConfiguration getConfiguration() { return _configuration; } @@ -223,7 +223,7 @@ public CommonConfiguration getConfiguration() { * * @param _configuration The _configuration of this {@link SFTPPipelineGetResponse} */ - public void setConfiguration(@Nonnull final CommonConfiguration _configuration) { + public void setConfiguration(@Nonnull final SFTPConfiguration _configuration) { this._configuration = _configuration; } @@ -373,6 +373,6 @@ public interface Builder2 { * @param _configuration The _configuration of this {@link SFTPPipelineGetResponse} * @return The SFTPPipelineGetResponse instance. */ - SFTPPipelineGetResponse _configuration(@Nonnull final CommonConfiguration _configuration); + SFTPPipelineGetResponse _configuration(@Nonnull final SFTPConfiguration _configuration); } } diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/WorkZonePipelineCreateRequest.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/WorkZonePipelineCreateRequest.java new file mode 100644 index 000000000..9921a171d --- /dev/null +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/WorkZonePipelineCreateRequest.java @@ -0,0 +1,296 @@ +/* + * Grounding + * Grounding is a service designed to handle data-related tasks, such as grounding and retrieval, using vector databases. It provides specialized data retrieval through these databases, grounding the retrieval process with your own external and context-relevant data. Grounding combines generative AI capabilities with the ability to use real-time, precise data to improve decision-making and business operations for specific AI-driven business solutions. + * + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +package com.sap.ai.sdk.grounding.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.NoSuchElementException; +import java.util.Objects; +import java.util.Set; +import javax.annotation.Nonnull; +import javax.annotation.Nullable; + +/** WorkZonePipelineCreateRequest */ +// CHECKSTYLE:OFF +public class WorkZonePipelineCreateRequest implements CreatePipeline +// CHECKSTYLE:ON +{ + /** Gets or Sets type */ + public enum TypeEnum { + /** The WORK_ZONE option of this WorkZonePipelineCreateRequest */ + WORK_ZONE("WorkZone"), + + /** The UNKNOWN_DEFAULT_OPEN_API option of this WorkZonePipelineCreateRequest */ + UNKNOWN_DEFAULT_OPEN_API("unknown_default_open_api"); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + /** + * Get the value of the enum + * + * @return The enum value + */ + @JsonValue + @Nonnull + public String getValue() { + return value; + } + + /** + * Get the String value of the enum value. + * + * @return The enum value as String + */ + @Override + @Nonnull + public String toString() { + return String.valueOf(value); + } + + /** + * Get the enum value from a String value + * + * @param value The String value + * @return The enum value of type WorkZonePipelineCreateRequest + */ + @JsonCreator + @Nonnull + public static TypeEnum fromValue(@Nonnull final String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + return UNKNOWN_DEFAULT_OPEN_API; + } + } + + @JsonProperty("type") + private TypeEnum type; + + @JsonProperty("metadata") + private MetaData metadata; + + @JsonAnySetter @JsonAnyGetter + private final Map cloudSdkCustomFields = new LinkedHashMap<>(); + + /** Default constructor for WorkZonePipelineCreateRequest. */ + protected WorkZonePipelineCreateRequest() {} + + /** + * Set the type of this {@link WorkZonePipelineCreateRequest} instance and return the same + * instance. + * + * @param type The type of this {@link WorkZonePipelineCreateRequest} + * @return The same instance of this {@link WorkZonePipelineCreateRequest} class + */ + @Nonnull + public WorkZonePipelineCreateRequest type(@Nonnull final TypeEnum type) { + this.type = type; + return this; + } + + /** + * Get type + * + * @return type The type of this {@link WorkZonePipelineCreateRequest} instance. + */ + @Nonnull + public TypeEnum getType() { + return type; + } + + /** + * Set the type of this {@link WorkZonePipelineCreateRequest} instance. + * + * @param type The type of this {@link WorkZonePipelineCreateRequest} + */ + public void setType(@Nonnull final TypeEnum type) { + this.type = type; + } + + /** + * Set the metadata of this {@link WorkZonePipelineCreateRequest} instance and return the same + * instance. + * + * @param metadata The metadata of this {@link WorkZonePipelineCreateRequest} + * @return The same instance of this {@link WorkZonePipelineCreateRequest} class + */ + @Nonnull + public WorkZonePipelineCreateRequest metadata(@Nonnull final MetaData metadata) { + this.metadata = metadata; + return this; + } + + /** + * Get metadata + * + * @return metadata The metadata of this {@link WorkZonePipelineCreateRequest} instance. + */ + @Nonnull + public MetaData getMetadata() { + return metadata; + } + + /** + * Set the metadata of this {@link WorkZonePipelineCreateRequest} instance. + * + * @param metadata The metadata of this {@link WorkZonePipelineCreateRequest} + */ + public void setMetadata(@Nonnull final MetaData metadata) { + this.metadata = metadata; + } + + /** + * Get the names of the unrecognizable properties of the {@link WorkZonePipelineCreateRequest}. + * + * @return The set of properties names + */ + @JsonIgnore + @Nonnull + public Set getCustomFieldNames() { + return cloudSdkCustomFields.keySet(); + } + + /** + * Get the value of an unrecognizable property of this {@link WorkZonePipelineCreateRequest} + * instance. + * + * @deprecated Use {@link #toMap()} instead. + * @param name The name of the property + * @return The value of the property + * @throws NoSuchElementException If no property with the given name could be found. + */ + @Nullable + @Deprecated + public Object getCustomField(@Nonnull final String name) throws NoSuchElementException { + if (!cloudSdkCustomFields.containsKey(name)) { + throw new NoSuchElementException( + "WorkZonePipelineCreateRequest has no field with name '" + name + "'."); + } + return cloudSdkCustomFields.get(name); + } + + /** + * Get the value of all properties of this {@link WorkZonePipelineCreateRequest} instance + * including unrecognized properties. + * + * @return The map of all properties + */ + @JsonIgnore + @Nonnull + public Map toMap() { + final Map declaredFields = new LinkedHashMap<>(cloudSdkCustomFields); + if (type != null) declaredFields.put("type", type); + if (metadata != null) declaredFields.put("metadata", metadata); + return declaredFields; + } + + /** + * Set an unrecognizable property of this {@link WorkZonePipelineCreateRequest} instance. If the + * map previously contained a mapping for the key, the old value is replaced by the specified + * value. + * + * @param customFieldName The name of the property + * @param customFieldValue The value of the property + */ + @JsonIgnore + public void setCustomField(@Nonnull String customFieldName, @Nullable Object customFieldValue) { + cloudSdkCustomFields.put(customFieldName, customFieldValue); + } + + @Override + public boolean equals(@Nullable final java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + final WorkZonePipelineCreateRequest workZonePipelineCreateRequest = + (WorkZonePipelineCreateRequest) o; + return Objects.equals( + this.cloudSdkCustomFields, workZonePipelineCreateRequest.cloudSdkCustomFields) + && Objects.equals(this.type, workZonePipelineCreateRequest.type) + && Objects.equals(this.metadata, workZonePipelineCreateRequest.metadata); + } + + @Override + public int hashCode() { + return Objects.hash(type, metadata, cloudSdkCustomFields); + } + + @Override + @Nonnull + public String toString() { + final StringBuilder sb = new StringBuilder(); + sb.append("class WorkZonePipelineCreateRequest {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" metadata: ").append(toIndentedString(metadata)).append("\n"); + cloudSdkCustomFields.forEach( + (k, v) -> + sb.append(" ").append(k).append(": ").append(toIndentedString(v)).append("\n")); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(final java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Create a type-safe, fluent-api builder object to construct a new {@link + * WorkZonePipelineCreateRequest} instance with all required arguments. + */ + public static Builder create() { + return (type) -> + (metadata) -> new WorkZonePipelineCreateRequest().type(type).metadata(metadata); + } + + /** Builder helper class. */ + public interface Builder { + /** + * Set the type of this {@link WorkZonePipelineCreateRequest} instance. + * + * @param type The type of this {@link WorkZonePipelineCreateRequest} + * @return The WorkZonePipelineCreateRequest builder. + */ + Builder1 type(@Nonnull final TypeEnum type); + } + + /** Builder helper class. */ + public interface Builder1 { + /** + * Set the metadata of this {@link WorkZonePipelineCreateRequest} instance. + * + * @param metadata The metadata of this {@link WorkZonePipelineCreateRequest} + * @return The WorkZonePipelineCreateRequest instance. + */ + WorkZonePipelineCreateRequest metadata(@Nonnull final MetaData metadata); + } +} diff --git a/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/WorkZonePipelineGetResponse.java b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/WorkZonePipelineGetResponse.java new file mode 100644 index 000000000..90a44dc21 --- /dev/null +++ b/core-services/document-grounding/src/main/java/com/sap/ai/sdk/grounding/model/WorkZonePipelineGetResponse.java @@ -0,0 +1,342 @@ +/* + * Grounding + * Grounding is a service designed to handle data-related tasks, such as grounding and retrieval, using vector databases. It provides specialized data retrieval through these databases, grounding the retrieval process with your own external and context-relevant data. Grounding combines generative AI capabilities with the ability to use real-time, precise data to improve decision-making and business operations for specific AI-driven business solutions. + * + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +package com.sap.ai.sdk.grounding.model; + +import com.fasterxml.jackson.annotation.JsonAnyGetter; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonValue; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.NoSuchElementException; +import java.util.Objects; +import java.util.Set; +import javax.annotation.Nonnull; +import javax.annotation.Nullable; + +/** WorkZonePipelineGetResponse */ +// CHECKSTYLE:OFF +public class WorkZonePipelineGetResponse implements GetPipeline +// CHECKSTYLE:ON +{ + @JsonProperty("id") + private String id; + + /** Gets or Sets type */ + public enum TypeEnum { + /** The WORK_ZONE option of this WorkZonePipelineGetResponse */ + WORK_ZONE("WorkZone"), + + /** The UNKNOWN_DEFAULT_OPEN_API option of this WorkZonePipelineGetResponse */ + UNKNOWN_DEFAULT_OPEN_API("unknown_default_open_api"); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + /** + * Get the value of the enum + * + * @return The enum value + */ + @JsonValue + @Nonnull + public String getValue() { + return value; + } + + /** + * Get the String value of the enum value. + * + * @return The enum value as String + */ + @Override + @Nonnull + public String toString() { + return String.valueOf(value); + } + + /** + * Get the enum value from a String value + * + * @param value The String value + * @return The enum value of type WorkZonePipelineGetResponse + */ + @JsonCreator + @Nonnull + public static TypeEnum fromValue(@Nonnull final String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + return UNKNOWN_DEFAULT_OPEN_API; + } + } + + @JsonProperty("type") + private TypeEnum type; + + @JsonProperty("metadata") + private MetaData metadata; + + @JsonAnySetter @JsonAnyGetter + private final Map cloudSdkCustomFields = new LinkedHashMap<>(); + + /** Default constructor for WorkZonePipelineGetResponse. */ + protected WorkZonePipelineGetResponse() {} + + /** + * Set the id of this {@link WorkZonePipelineGetResponse} instance and return the same instance. + * + * @param id The id of this {@link WorkZonePipelineGetResponse} + * @return The same instance of this {@link WorkZonePipelineGetResponse} class + */ + @Nonnull + public WorkZonePipelineGetResponse id(@Nonnull final String id) { + this.id = id; + return this; + } + + /** + * Get id + * + * @return id The id of this {@link WorkZonePipelineGetResponse} instance. + */ + @Nonnull + public String getId() { + return id; + } + + /** + * Set the id of this {@link WorkZonePipelineGetResponse} instance. + * + * @param id The id of this {@link WorkZonePipelineGetResponse} + */ + public void setId(@Nonnull final String id) { + this.id = id; + } + + /** + * Set the type of this {@link WorkZonePipelineGetResponse} instance and return the same instance. + * + * @param type The type of this {@link WorkZonePipelineGetResponse} + * @return The same instance of this {@link WorkZonePipelineGetResponse} class + */ + @Nonnull + public WorkZonePipelineGetResponse type(@Nonnull final TypeEnum type) { + this.type = type; + return this; + } + + /** + * Get type + * + * @return type The type of this {@link WorkZonePipelineGetResponse} instance. + */ + @Nonnull + public TypeEnum getType() { + return type; + } + + /** + * Set the type of this {@link WorkZonePipelineGetResponse} instance. + * + * @param type The type of this {@link WorkZonePipelineGetResponse} + */ + public void setType(@Nonnull final TypeEnum type) { + this.type = type; + } + + /** + * Set the metadata of this {@link WorkZonePipelineGetResponse} instance and return the same + * instance. + * + * @param metadata The metadata of this {@link WorkZonePipelineGetResponse} + * @return The same instance of this {@link WorkZonePipelineGetResponse} class + */ + @Nonnull + public WorkZonePipelineGetResponse metadata(@Nonnull final MetaData metadata) { + this.metadata = metadata; + return this; + } + + /** + * Get metadata + * + * @return metadata The metadata of this {@link WorkZonePipelineGetResponse} instance. + */ + @Nonnull + public MetaData getMetadata() { + return metadata; + } + + /** + * Set the metadata of this {@link WorkZonePipelineGetResponse} instance. + * + * @param metadata The metadata of this {@link WorkZonePipelineGetResponse} + */ + public void setMetadata(@Nonnull final MetaData metadata) { + this.metadata = metadata; + } + + /** + * Get the names of the unrecognizable properties of the {@link WorkZonePipelineGetResponse}. + * + * @return The set of properties names + */ + @JsonIgnore + @Nonnull + public Set getCustomFieldNames() { + return cloudSdkCustomFields.keySet(); + } + + /** + * Get the value of an unrecognizable property of this {@link WorkZonePipelineGetResponse} + * instance. + * + * @deprecated Use {@link #toMap()} instead. + * @param name The name of the property + * @return The value of the property + * @throws NoSuchElementException If no property with the given name could be found. + */ + @Nullable + @Deprecated + public Object getCustomField(@Nonnull final String name) throws NoSuchElementException { + if (!cloudSdkCustomFields.containsKey(name)) { + throw new NoSuchElementException( + "WorkZonePipelineGetResponse has no field with name '" + name + "'."); + } + return cloudSdkCustomFields.get(name); + } + + /** + * Get the value of all properties of this {@link WorkZonePipelineGetResponse} instance including + * unrecognized properties. + * + * @return The map of all properties + */ + @JsonIgnore + @Nonnull + public Map toMap() { + final Map declaredFields = new LinkedHashMap<>(cloudSdkCustomFields); + if (id != null) declaredFields.put("id", id); + if (type != null) declaredFields.put("type", type); + if (metadata != null) declaredFields.put("metadata", metadata); + return declaredFields; + } + + /** + * Set an unrecognizable property of this {@link WorkZonePipelineGetResponse} instance. If the map + * previously contained a mapping for the key, the old value is replaced by the specified value. + * + * @param customFieldName The name of the property + * @param customFieldValue The value of the property + */ + @JsonIgnore + public void setCustomField(@Nonnull String customFieldName, @Nullable Object customFieldValue) { + cloudSdkCustomFields.put(customFieldName, customFieldValue); + } + + @Override + public boolean equals(@Nullable final java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + final WorkZonePipelineGetResponse workZonePipelineGetResponse = (WorkZonePipelineGetResponse) o; + return Objects.equals( + this.cloudSdkCustomFields, workZonePipelineGetResponse.cloudSdkCustomFields) + && Objects.equals(this.id, workZonePipelineGetResponse.id) + && Objects.equals(this.type, workZonePipelineGetResponse.type) + && Objects.equals(this.metadata, workZonePipelineGetResponse.metadata); + } + + @Override + public int hashCode() { + return Objects.hash(id, type, metadata, cloudSdkCustomFields); + } + + @Override + @Nonnull + public String toString() { + final StringBuilder sb = new StringBuilder(); + sb.append("class WorkZonePipelineGetResponse {\n"); + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" metadata: ").append(toIndentedString(metadata)).append("\n"); + cloudSdkCustomFields.forEach( + (k, v) -> + sb.append(" ").append(k).append(": ").append(toIndentedString(v)).append("\n")); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first line). + */ + private String toIndentedString(final java.lang.Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Create a type-safe, fluent-api builder object to construct a new {@link + * WorkZonePipelineGetResponse} instance with all required arguments. + */ + public static Builder create() { + return (id) -> + (type) -> + (metadata) -> new WorkZonePipelineGetResponse().id(id).type(type).metadata(metadata); + } + + /** Builder helper class. */ + public interface Builder { + /** + * Set the id of this {@link WorkZonePipelineGetResponse} instance. + * + * @param id The id of this {@link WorkZonePipelineGetResponse} + * @return The WorkZonePipelineGetResponse builder. + */ + Builder1 id(@Nonnull final String id); + } + + /** Builder helper class. */ + public interface Builder1 { + /** + * Set the type of this {@link WorkZonePipelineGetResponse} instance. + * + * @param type The type of this {@link WorkZonePipelineGetResponse} + * @return The WorkZonePipelineGetResponse builder. + */ + Builder2 type(@Nonnull final TypeEnum type); + } + + /** Builder helper class. */ + public interface Builder2 { + /** + * Set the metadata of this {@link WorkZonePipelineGetResponse} instance. + * + * @param metadata The metadata of this {@link WorkZonePipelineGetResponse} + * @return The WorkZonePipelineGetResponse instance. + */ + WorkZonePipelineGetResponse metadata(@Nonnull final MetaData metadata); + } +} diff --git a/core-services/document-grounding/src/main/resources/spec/grounding.yaml b/core-services/document-grounding/src/main/resources/spec/grounding.yaml index 0cd714152..aad0328df 100644 --- a/core-services/document-grounding/src/main/resources/spec/grounding.yaml +++ b/core-services/document-grounding/src/main/resources/spec/grounding.yaml @@ -400,6 +400,39 @@ paths: schema: $ref: '#/components/schemas/PipelineDocumentResponse' + "/pipelines/trigger": + post: + tags: + - Pipelines + operationId: pipeline.v1.pipeline_endpoints.trigger_pipeline + summary: Pipeline Trigger + description: Manually trigger a pipeline + x-sap-cloud-sdk-operation-name: manualTriggerPipeline + parameters: + - in: header + name: AI-Resource-Group + required: true + schema: + type: string + description: Resource Group ID + requestBody: + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/manualPipelineTrigger' + responses: + '202': + description: Accepted + headers: + Location: + description: Location of the triggered pipeline execution + schema: + type: string + format: uri + '400': + $ref: '#/components/responses/BadRequest' + "/vector/collections": get: parameters: @@ -958,12 +991,23 @@ components: - $ref: "#/components/schemas/MSSharePointPipelineCreateRequest" - $ref: "#/components/schemas/S3PipelineCreateRequest" - $ref: "#/components/schemas/SFTPPipelineCreateRequest" + - $ref: "#/components/schemas/SDMPipelineCreateRequest" + - $ref: "#/components/schemas/WorkZonePipelineCreateRequest" discriminator: propertyName: type mapping: MSSharePoint: "#/components/schemas/MSSharePointPipelineCreateRequest" S3: "#/components/schemas/S3PipelineCreateRequest" SFTP: "#/components/schemas/SFTPPipelineCreateRequest" + SDM: "#/components/schemas/SDMPipelineCreateRequest" + WorkZone: "#/components/schemas/WorkZonePipelineCreateRequest" + + manualPipelineTrigger: + type: object + properties: + pipelineId: + type: string + example: uuid MSSharePointPipelineCreateRequest: type: object @@ -990,7 +1034,7 @@ components: type: string enum: [S3] configuration: - $ref: "#/components/schemas/CommonConfiguration" + $ref: "#/components/schemas/S3Configuration" metadata: $ref: "#/components/schemas/MetaData" additionalProperties: true @@ -1005,7 +1049,33 @@ components: type: string enum: [SFTP] configuration: - $ref: "#/components/schemas/CommonConfiguration" + $ref: "#/components/schemas/SFTPConfiguration" + metadata: + $ref: "#/components/schemas/MetaData" + additionalProperties: true + + SDMPipelineCreateRequest: + type: object + required: + - type + - metadata + properties: + type: + type: string + enum: [SDM] + metadata: + $ref: "#/components/schemas/MetaData" + additionalProperties: true + + WorkZonePipelineCreateRequest: + type: object + required: + - type + - metadata + properties: + type: + type: string + enum: [WorkZone] metadata: $ref: "#/components/schemas/MetaData" additionalProperties: true @@ -1049,14 +1119,44 @@ components: - /testFolder2 additionalProperties: true - CommonConfiguration: + SFTPConfiguration: type: object required: - destination properties: destination: type: string - example: generic-secret-name + example: generic-secret- + sftp: + type: object + properties: + includePaths: + type: array + items: + type: string + example: + - /testFolder1 + - /testFolder2 + additionalProperties: true + + S3Configuration: + type: object + required: + - destination + properties: + destination: + type: string + example: generic-secret- + s3: + type: object + properties: + includePaths: + type: array + items: + type: string + example: + - /testFolder1 + - /testFolder2 additionalProperties: true MetaData: @@ -1086,12 +1186,16 @@ components: - $ref: "#/components/schemas/MSSharePointPipelineGetResponse" - $ref: "#/components/schemas/S3PipelineGetResponse" - $ref: "#/components/schemas/SFTPPipelineGetResponse" + - $ref: "#/components/schemas/SDMPipelineGetResponse" + - $ref: "#/components/schemas/WorkZonePipelineGetResponse" discriminator: propertyName: type mapping: MSSharePoint: "#/components/schemas/MSSharePointPipelineGetResponse" S3: "#/components/schemas/S3PipelineGetResponse" SFTP: "#/components/schemas/SFTPPipelineGetResponse" + SDM: "#/components/schemas/SDMPipelineGetResponse" + WorkZone: "#/components/schemas/WorkZonePipelineGetResponse" MSSharePointPipelineGetResponse: allOf: @@ -1117,7 +1221,7 @@ components: type: string enum: [S3] configuration: - $ref: "#/components/schemas/CommonConfiguration" + $ref: "#/components/schemas/S3Configuration" SFTPPipelineGetResponse: allOf: @@ -1130,7 +1234,33 @@ components: type: string enum: [SFTP] configuration: - $ref: "#/components/schemas/CommonConfiguration" + $ref: "#/components/schemas/SFTPConfiguration" + + SDMPipelineGetResponse: + allOf: + - $ref: "#/components/schemas/BasePipelineResponse" + - type: object + required: + - metadata + properties: + type: + type: string + enum: [SDM] + metadata: + $ref: "#/components/schemas/MetaData" + + WorkZonePipelineGetResponse: + allOf: + - $ref: "#/components/schemas/BasePipelineResponse" + - type: object + required: + - metadata + properties: + type: + type: string + enum: [WorkZone] + metadata: + $ref: "#/components/schemas/MetaData" BasePipelineResponse: type: object @@ -1250,6 +1380,7 @@ components: - DEINDEXED - FAILED - FAILED_TO_BE_RETRIED + - TO_BE_SCHEDULED example: 'INDEXED' DocumentsStatusResponse: @@ -1268,6 +1399,21 @@ components: example: uuid status: $ref: '#/components/schemas/DocumentStatus' + absoluteUrl: + type: string + nullable: true + title: + type: string + nullable: true + metadataId: + type: string + nullable: true + createdTimestamp: + type: string + example: '2024-02-15T12:45:00Z' + lastUpdatedTimestamp: + type: string + example: '2024-02-15T12:45:00Z' PipelineDocumentResponse: type: object @@ -1275,19 +1421,23 @@ components: id: type: string example: uuid - viewLocation: + status: + $ref: '#/components/schemas/DocumentStatus' + absoluteUrl: type: string - example: 'location' nullable: true - downloadLocation: + title: type: string - example: 'location' nullable: true + metadataId: + type: string + nullable: true + createdTimestamp: + type: string + example: '2024-02-15T12:45:00Z' lastUpdatedTimestamp: type: string example: '2024-02-15T12:45:00Z' - status: - $ref: '#/components/schemas/DocumentStatus' Chunk: properties: