com.konfigthis.carbonai.client.model.OAuthURLRequest Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of carbonai-java-sdk Show documentation
Show all versions of carbonai-java-sdk Show documentation
Connect external data to LLMs, no matter the source.
This library was generated by https://konfigthis.com
/*
* Carbon
* Connect external data to LLMs, no matter the source.
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by Konfig (https://konfigthis.com).
* Do not edit the class manually.
*/
package com.konfigthis.carbonai.client.model;
import java.util.Objects;
import java.util.Arrays;
import com.google.gson.TypeAdapter;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.annotations.SerializedName;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import com.konfigthis.carbonai.client.model.EmbeddingGeneratorsNullable;
import com.konfigthis.carbonai.client.model.FileSyncConfigNullable;
import com.konfigthis.carbonai.client.model.OauthBasedConnectors;
import com.konfigthis.carbonai.client.model.ServiceNowCredentialsNullable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.IOException;
import org.openapitools.jackson.nullable.JsonNullable;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonArray;
import com.google.gson.JsonDeserializationContext;
import com.google.gson.JsonDeserializer;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParseException;
import com.google.gson.TypeAdapterFactory;
import com.google.gson.reflect.TypeToken;
import org.apache.commons.lang3.StringUtils;
import java.lang.reflect.Type;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import com.konfigthis.carbonai.client.JSON;
/**
* OAuthURLRequest
*/@javax.annotation.Generated(value = "Generated by https://konfigthis.com")
public class OAuthURLRequest {
public static final String SERIALIZED_NAME_TAGS = "tags";
@SerializedName(SERIALIZED_NAME_TAGS)
private Object tags = null;
public static final String SERIALIZED_NAME_SCOPE = "scope";
@SerializedName(SERIALIZED_NAME_SCOPE)
private String scope;
public static final String SERIALIZED_NAME_SERVICE = "service";
@SerializedName(SERIALIZED_NAME_SERVICE)
private OauthBasedConnectors service;
public static final String SERIALIZED_NAME_CHUNK_SIZE = "chunk_size";
@SerializedName(SERIALIZED_NAME_CHUNK_SIZE)
private Integer chunkSize = 1500;
public static final String SERIALIZED_NAME_CHUNK_OVERLAP = "chunk_overlap";
@SerializedName(SERIALIZED_NAME_CHUNK_OVERLAP)
private Integer chunkOverlap = 20;
public static final String SERIALIZED_NAME_SKIP_EMBEDDING_GENERATION = "skip_embedding_generation";
@SerializedName(SERIALIZED_NAME_SKIP_EMBEDDING_GENERATION)
private Boolean skipEmbeddingGeneration = false;
public static final String SERIALIZED_NAME_EMBEDDING_MODEL = "embedding_model";
@SerializedName(SERIALIZED_NAME_EMBEDDING_MODEL)
private EmbeddingGeneratorsNullable embeddingModel = EmbeddingGeneratorsNullable.OPENAI;
public static final String SERIALIZED_NAME_ZENDESK_SUBDOMAIN = "zendesk_subdomain";
@SerializedName(SERIALIZED_NAME_ZENDESK_SUBDOMAIN)
private String zendeskSubdomain;
public static final String SERIALIZED_NAME_MICROSOFT_TENANT = "microsoft_tenant";
@SerializedName(SERIALIZED_NAME_MICROSOFT_TENANT)
private String microsoftTenant;
public static final String SERIALIZED_NAME_SHAREPOINT_SITE_NAME = "sharepoint_site_name";
@SerializedName(SERIALIZED_NAME_SHAREPOINT_SITE_NAME)
private String sharepointSiteName;
public static final String SERIALIZED_NAME_CONFLUENCE_SUBDOMAIN = "confluence_subdomain";
@SerializedName(SERIALIZED_NAME_CONFLUENCE_SUBDOMAIN)
private String confluenceSubdomain;
public static final String SERIALIZED_NAME_GENERATE_SPARSE_VECTORS = "generate_sparse_vectors";
@SerializedName(SERIALIZED_NAME_GENERATE_SPARSE_VECTORS)
private Boolean generateSparseVectors = false;
public static final String SERIALIZED_NAME_PREPEND_FILENAME_TO_CHUNKS = "prepend_filename_to_chunks";
@SerializedName(SERIALIZED_NAME_PREPEND_FILENAME_TO_CHUNKS)
private Boolean prependFilenameToChunks = false;
public static final String SERIALIZED_NAME_MAX_ITEMS_PER_CHUNK = "max_items_per_chunk";
@SerializedName(SERIALIZED_NAME_MAX_ITEMS_PER_CHUNK)
private Integer maxItemsPerChunk;
public static final String SERIALIZED_NAME_SALESFORCE_DOMAIN = "salesforce_domain";
@SerializedName(SERIALIZED_NAME_SALESFORCE_DOMAIN)
private String salesforceDomain;
public static final String SERIALIZED_NAME_SYNC_FILES_ON_CONNECTION = "sync_files_on_connection";
@SerializedName(SERIALIZED_NAME_SYNC_FILES_ON_CONNECTION)
private Boolean syncFilesOnConnection = true;
public static final String SERIALIZED_NAME_SET_PAGE_AS_BOUNDARY = "set_page_as_boundary";
@SerializedName(SERIALIZED_NAME_SET_PAGE_AS_BOUNDARY)
private Boolean setPageAsBoundary = false;
public static final String SERIALIZED_NAME_DATA_SOURCE_ID = "data_source_id";
@SerializedName(SERIALIZED_NAME_DATA_SOURCE_ID)
private Integer dataSourceId;
public static final String SERIALIZED_NAME_CONNECTING_NEW_ACCOUNT = "connecting_new_account";
@SerializedName(SERIALIZED_NAME_CONNECTING_NEW_ACCOUNT)
private Boolean connectingNewAccount = false;
public static final String SERIALIZED_NAME_REQUEST_ID = "request_id";
@SerializedName(SERIALIZED_NAME_REQUEST_ID)
private String requestId;
public static final String SERIALIZED_NAME_USE_OCR = "use_ocr";
@SerializedName(SERIALIZED_NAME_USE_OCR)
private Boolean useOcr = false;
public static final String SERIALIZED_NAME_PARSE_PDF_TABLES_WITH_OCR = "parse_pdf_tables_with_ocr";
@SerializedName(SERIALIZED_NAME_PARSE_PDF_TABLES_WITH_OCR)
private Boolean parsePdfTablesWithOcr = false;
public static final String SERIALIZED_NAME_ENABLE_FILE_PICKER = "enable_file_picker";
@SerializedName(SERIALIZED_NAME_ENABLE_FILE_PICKER)
private Boolean enableFilePicker = true;
public static final String SERIALIZED_NAME_SYNC_SOURCE_ITEMS = "sync_source_items";
@SerializedName(SERIALIZED_NAME_SYNC_SOURCE_ITEMS)
private Boolean syncSourceItems = true;
public static final String SERIALIZED_NAME_INCREMENTAL_SYNC = "incremental_sync";
@SerializedName(SERIALIZED_NAME_INCREMENTAL_SYNC)
private Boolean incrementalSync = false;
public static final String SERIALIZED_NAME_FILE_SYNC_CONFIG = "file_sync_config";
@SerializedName(SERIALIZED_NAME_FILE_SYNC_CONFIG)
private FileSyncConfigNullable fileSyncConfig;
public static final String SERIALIZED_NAME_AUTOMATICALLY_OPEN_FILE_PICKER = "automatically_open_file_picker";
@SerializedName(SERIALIZED_NAME_AUTOMATICALLY_OPEN_FILE_PICKER)
private Boolean automaticallyOpenFilePicker;
public static final String SERIALIZED_NAME_GONG_ACCOUNT_EMAIL = "gong_account_email";
@SerializedName(SERIALIZED_NAME_GONG_ACCOUNT_EMAIL)
private String gongAccountEmail;
public static final String SERIALIZED_NAME_SERVICENOW_CREDENTIALS = "servicenow_credentials";
@SerializedName(SERIALIZED_NAME_SERVICENOW_CREDENTIALS)
private ServiceNowCredentialsNullable servicenowCredentials;
public OAuthURLRequest() {
}
public OAuthURLRequest tags(Object tags) {
this.tags = tags;
return this;
}
/**
* Get tags
* @return tags
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")
public Object getTags() {
return tags;
}
public void setTags(Object tags) {
this.tags = tags;
}
public OAuthURLRequest scope(String scope) {
this.scope = scope;
return this;
}
/**
* Get scope
* @return scope
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")
public String getScope() {
return scope;
}
public void setScope(String scope) {
this.scope = scope;
}
public OAuthURLRequest service(OauthBasedConnectors service) {
this.service = service;
return this;
}
/**
* Get service
* @return service
**/
@javax.annotation.Nonnull
@ApiModelProperty(required = true, value = "")
public OauthBasedConnectors getService() {
return service;
}
public void setService(OauthBasedConnectors service) {
this.service = service;
}
public OAuthURLRequest chunkSize(Integer chunkSize) {
this.chunkSize = chunkSize;
return this;
}
/**
* Get chunkSize
* @return chunkSize
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "1500", value = "")
public Integer getChunkSize() {
return chunkSize;
}
public void setChunkSize(Integer chunkSize) {
this.chunkSize = chunkSize;
}
public OAuthURLRequest chunkOverlap(Integer chunkOverlap) {
this.chunkOverlap = chunkOverlap;
return this;
}
/**
* Get chunkOverlap
* @return chunkOverlap
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "20", value = "")
public Integer getChunkOverlap() {
return chunkOverlap;
}
public void setChunkOverlap(Integer chunkOverlap) {
this.chunkOverlap = chunkOverlap;
}
public OAuthURLRequest skipEmbeddingGeneration(Boolean skipEmbeddingGeneration) {
this.skipEmbeddingGeneration = skipEmbeddingGeneration;
return this;
}
/**
* Get skipEmbeddingGeneration
* @return skipEmbeddingGeneration
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "false", value = "")
public Boolean getSkipEmbeddingGeneration() {
return skipEmbeddingGeneration;
}
public void setSkipEmbeddingGeneration(Boolean skipEmbeddingGeneration) {
this.skipEmbeddingGeneration = skipEmbeddingGeneration;
}
public OAuthURLRequest embeddingModel(EmbeddingGeneratorsNullable embeddingModel) {
this.embeddingModel = embeddingModel;
return this;
}
/**
* Get embeddingModel
* @return embeddingModel
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")
public EmbeddingGeneratorsNullable getEmbeddingModel() {
return embeddingModel;
}
public void setEmbeddingModel(EmbeddingGeneratorsNullable embeddingModel) {
this.embeddingModel = embeddingModel;
}
public OAuthURLRequest zendeskSubdomain(String zendeskSubdomain) {
this.zendeskSubdomain = zendeskSubdomain;
return this;
}
/**
* Get zendeskSubdomain
* @return zendeskSubdomain
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")
public String getZendeskSubdomain() {
return zendeskSubdomain;
}
public void setZendeskSubdomain(String zendeskSubdomain) {
this.zendeskSubdomain = zendeskSubdomain;
}
public OAuthURLRequest microsoftTenant(String microsoftTenant) {
this.microsoftTenant = microsoftTenant;
return this;
}
/**
* Get microsoftTenant
* @return microsoftTenant
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")
public String getMicrosoftTenant() {
return microsoftTenant;
}
public void setMicrosoftTenant(String microsoftTenant) {
this.microsoftTenant = microsoftTenant;
}
public OAuthURLRequest sharepointSiteName(String sharepointSiteName) {
this.sharepointSiteName = sharepointSiteName;
return this;
}
/**
* Get sharepointSiteName
* @return sharepointSiteName
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")
public String getSharepointSiteName() {
return sharepointSiteName;
}
public void setSharepointSiteName(String sharepointSiteName) {
this.sharepointSiteName = sharepointSiteName;
}
public OAuthURLRequest confluenceSubdomain(String confluenceSubdomain) {
this.confluenceSubdomain = confluenceSubdomain;
return this;
}
/**
* Get confluenceSubdomain
* @return confluenceSubdomain
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")
public String getConfluenceSubdomain() {
return confluenceSubdomain;
}
public void setConfluenceSubdomain(String confluenceSubdomain) {
this.confluenceSubdomain = confluenceSubdomain;
}
public OAuthURLRequest generateSparseVectors(Boolean generateSparseVectors) {
this.generateSparseVectors = generateSparseVectors;
return this;
}
/**
* Get generateSparseVectors
* @return generateSparseVectors
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "false", value = "")
public Boolean getGenerateSparseVectors() {
return generateSparseVectors;
}
public void setGenerateSparseVectors(Boolean generateSparseVectors) {
this.generateSparseVectors = generateSparseVectors;
}
public OAuthURLRequest prependFilenameToChunks(Boolean prependFilenameToChunks) {
this.prependFilenameToChunks = prependFilenameToChunks;
return this;
}
/**
* Get prependFilenameToChunks
* @return prependFilenameToChunks
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "false", value = "")
public Boolean getPrependFilenameToChunks() {
return prependFilenameToChunks;
}
public void setPrependFilenameToChunks(Boolean prependFilenameToChunks) {
this.prependFilenameToChunks = prependFilenameToChunks;
}
public OAuthURLRequest maxItemsPerChunk(Integer maxItemsPerChunk) {
this.maxItemsPerChunk = maxItemsPerChunk;
return this;
}
/**
* Number of objects per chunk. For csv, tsv, xlsx, and json files only.
* @return maxItemsPerChunk
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "Number of objects per chunk. For csv, tsv, xlsx, and json files only.")
public Integer getMaxItemsPerChunk() {
return maxItemsPerChunk;
}
public void setMaxItemsPerChunk(Integer maxItemsPerChunk) {
this.maxItemsPerChunk = maxItemsPerChunk;
}
public OAuthURLRequest salesforceDomain(String salesforceDomain) {
this.salesforceDomain = salesforceDomain;
return this;
}
/**
* Get salesforceDomain
* @return salesforceDomain
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")
public String getSalesforceDomain() {
return salesforceDomain;
}
public void setSalesforceDomain(String salesforceDomain) {
this.salesforceDomain = salesforceDomain;
}
public OAuthURLRequest syncFilesOnConnection(Boolean syncFilesOnConnection) {
this.syncFilesOnConnection = syncFilesOnConnection;
return this;
}
/**
* Used to specify whether Carbon should attempt to sync all your files automatically when authorization is complete. This is only supported for a subset of connectors and will be ignored for the rest. Supported connectors: Intercom, Zendesk, Gitbook, Confluence, Salesforce, Freshdesk
* @return syncFilesOnConnection
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "true", value = "Used to specify whether Carbon should attempt to sync all your files automatically when authorization is complete. This is only supported for a subset of connectors and will be ignored for the rest. Supported connectors: Intercom, Zendesk, Gitbook, Confluence, Salesforce, Freshdesk")
public Boolean getSyncFilesOnConnection() {
return syncFilesOnConnection;
}
public void setSyncFilesOnConnection(Boolean syncFilesOnConnection) {
this.syncFilesOnConnection = syncFilesOnConnection;
}
public OAuthURLRequest setPageAsBoundary(Boolean setPageAsBoundary) {
this.setPageAsBoundary = setPageAsBoundary;
return this;
}
/**
* Get setPageAsBoundary
* @return setPageAsBoundary
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "false", value = "")
public Boolean getSetPageAsBoundary() {
return setPageAsBoundary;
}
public void setSetPageAsBoundary(Boolean setPageAsBoundary) {
this.setPageAsBoundary = setPageAsBoundary;
}
public OAuthURLRequest dataSourceId(Integer dataSourceId) {
this.dataSourceId = dataSourceId;
return this;
}
/**
* Used to specify a data source to sync from if you have multiple connected. It can be skipped if you only have one data source of that type connected or are connecting a new account.
* @return dataSourceId
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "Used to specify a data source to sync from if you have multiple connected. It can be skipped if you only have one data source of that type connected or are connecting a new account.")
public Integer getDataSourceId() {
return dataSourceId;
}
public void setDataSourceId(Integer dataSourceId) {
this.dataSourceId = dataSourceId;
}
public OAuthURLRequest connectingNewAccount(Boolean connectingNewAccount) {
this.connectingNewAccount = connectingNewAccount;
return this;
}
/**
* Used to connect a new data source. If not specified, we will attempt to create a sync URL for an existing data source based on type and ID.
* @return connectingNewAccount
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "false", value = "Used to connect a new data source. If not specified, we will attempt to create a sync URL for an existing data source based on type and ID.")
public Boolean getConnectingNewAccount() {
return connectingNewAccount;
}
public void setConnectingNewAccount(Boolean connectingNewAccount) {
this.connectingNewAccount = connectingNewAccount;
}
public OAuthURLRequest requestId(String requestId) {
this.requestId = requestId;
return this;
}
/**
* This request id will be added to all files that get synced using the generated OAuth URL
* @return requestId
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "This request id will be added to all files that get synced using the generated OAuth URL")
public String getRequestId() {
return requestId;
}
public void setRequestId(String requestId) {
this.requestId = requestId;
}
public OAuthURLRequest useOcr(Boolean useOcr) {
this.useOcr = useOcr;
return this;
}
/**
* Enable OCR for files that support it. Supported formats: pdf, png, jpg
* @return useOcr
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "false", value = "Enable OCR for files that support it. Supported formats: pdf, png, jpg")
public Boolean getUseOcr() {
return useOcr;
}
public void setUseOcr(Boolean useOcr) {
this.useOcr = useOcr;
}
public OAuthURLRequest parsePdfTablesWithOcr(Boolean parsePdfTablesWithOcr) {
this.parsePdfTablesWithOcr = parsePdfTablesWithOcr;
return this;
}
/**
* Get parsePdfTablesWithOcr
* @return parsePdfTablesWithOcr
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "false", value = "")
public Boolean getParsePdfTablesWithOcr() {
return parsePdfTablesWithOcr;
}
public void setParsePdfTablesWithOcr(Boolean parsePdfTablesWithOcr) {
this.parsePdfTablesWithOcr = parsePdfTablesWithOcr;
}
public OAuthURLRequest enableFilePicker(Boolean enableFilePicker) {
this.enableFilePicker = enableFilePicker;
return this;
}
/**
* Enable integration's file picker for sources that support it. Supported sources: BOX, DROPBOX, GOOGLE_DRIVE, ONEDRIVE, SHAREPOINT
* @return enableFilePicker
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "true", value = "Enable integration's file picker for sources that support it. Supported sources: BOX, DROPBOX, GOOGLE_DRIVE, ONEDRIVE, SHAREPOINT")
public Boolean getEnableFilePicker() {
return enableFilePicker;
}
public void setEnableFilePicker(Boolean enableFilePicker) {
this.enableFilePicker = enableFilePicker;
}
public OAuthURLRequest syncSourceItems(Boolean syncSourceItems) {
this.syncSourceItems = syncSourceItems;
return this;
}
/**
* Enabling this flag will fetch all available content from the source to be listed via list items endpoint
* @return syncSourceItems
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "true", value = "Enabling this flag will fetch all available content from the source to be listed via list items endpoint")
public Boolean getSyncSourceItems() {
return syncSourceItems;
}
public void setSyncSourceItems(Boolean syncSourceItems) {
this.syncSourceItems = syncSourceItems;
}
public OAuthURLRequest incrementalSync(Boolean incrementalSync) {
this.incrementalSync = incrementalSync;
return this;
}
/**
* Only sync files if they have not already been synced or if the embedding properties have changed. This flag is currently supported by ONEDRIVE, GOOGLE_DRIVE, BOX, DROPBOX, INTERCOM, GMAIL, OUTLOOK, ZENDESK, CONFLUENCE, NOTION, SHAREPOINT, SERVICENOW. It will be ignored for other data sources.
* @return incrementalSync
**/
@javax.annotation.Nullable
@ApiModelProperty(example = "false", value = "Only sync files if they have not already been synced or if the embedding properties have changed. This flag is currently supported by ONEDRIVE, GOOGLE_DRIVE, BOX, DROPBOX, INTERCOM, GMAIL, OUTLOOK, ZENDESK, CONFLUENCE, NOTION, SHAREPOINT, SERVICENOW. It will be ignored for other data sources.")
public Boolean getIncrementalSync() {
return incrementalSync;
}
public void setIncrementalSync(Boolean incrementalSync) {
this.incrementalSync = incrementalSync;
}
public OAuthURLRequest fileSyncConfig(FileSyncConfigNullable fileSyncConfig) {
this.fileSyncConfig = fileSyncConfig;
return this;
}
/**
* Get fileSyncConfig
* @return fileSyncConfig
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")
public FileSyncConfigNullable getFileSyncConfig() {
return fileSyncConfig;
}
public void setFileSyncConfig(FileSyncConfigNullable fileSyncConfig) {
this.fileSyncConfig = fileSyncConfig;
}
public OAuthURLRequest automaticallyOpenFilePicker(Boolean automaticallyOpenFilePicker) {
this.automaticallyOpenFilePicker = automaticallyOpenFilePicker;
return this;
}
/**
* Automatically open source file picker after the OAuth flow is complete. This flag is currently supported by BOX, DROPBOX, GOOGLE_DRIVE, ONEDRIVE, SHAREPOINT. It will be ignored for other data sources.
* @return automaticallyOpenFilePicker
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "Automatically open source file picker after the OAuth flow is complete. This flag is currently supported by BOX, DROPBOX, GOOGLE_DRIVE, ONEDRIVE, SHAREPOINT. It will be ignored for other data sources.")
public Boolean getAutomaticallyOpenFilePicker() {
return automaticallyOpenFilePicker;
}
public void setAutomaticallyOpenFilePicker(Boolean automaticallyOpenFilePicker) {
this.automaticallyOpenFilePicker = automaticallyOpenFilePicker;
}
public OAuthURLRequest gongAccountEmail(String gongAccountEmail) {
this.gongAccountEmail = gongAccountEmail;
return this;
}
/**
* If you are connecting a Gong account, you need to input the email of the account you wish to connect. This email will be used to identify your carbon data source.
* @return gongAccountEmail
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "If you are connecting a Gong account, you need to input the email of the account you wish to connect. This email will be used to identify your carbon data source.")
public String getGongAccountEmail() {
return gongAccountEmail;
}
public void setGongAccountEmail(String gongAccountEmail) {
this.gongAccountEmail = gongAccountEmail;
}
public OAuthURLRequest servicenowCredentials(ServiceNowCredentialsNullable servicenowCredentials) {
this.servicenowCredentials = servicenowCredentials;
return this;
}
/**
* Get servicenowCredentials
* @return servicenowCredentials
**/
@javax.annotation.Nullable
@ApiModelProperty(value = "")
public ServiceNowCredentialsNullable getServicenowCredentials() {
return servicenowCredentials;
}
public void setServicenowCredentials(ServiceNowCredentialsNullable servicenowCredentials) {
this.servicenowCredentials = servicenowCredentials;
}
/**
* A container for additional, undeclared properties.
* This is a holder for any undeclared properties as specified with
* the 'additionalProperties' keyword in the OAS document.
*/
private Map additionalProperties;
/**
* Set the additional (undeclared) property with the specified name and value.
* If the property does not already exist, create it otherwise replace it.
*
* @param key name of the property
* @param value value of the property
* @return the OAuthURLRequest instance itself
*/
public OAuthURLRequest putAdditionalProperty(String key, Object value) {
if (this.additionalProperties == null) {
this.additionalProperties = new HashMap();
}
this.additionalProperties.put(key, value);
return this;
}
/**
* Return the additional (undeclared) property.
*
* @return a map of objects
*/
public Map getAdditionalProperties() {
return additionalProperties;
}
/**
* Return the additional (undeclared) property with the specified name.
*
* @param key name of the property
* @return an object
*/
public Object getAdditionalProperty(String key) {
if (this.additionalProperties == null) {
return null;
}
return this.additionalProperties.get(key);
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
OAuthURLRequest oauthURLRequest = (OAuthURLRequest) o;
return Objects.equals(this.tags, oauthURLRequest.tags) &&
Objects.equals(this.scope, oauthURLRequest.scope) &&
Objects.equals(this.service, oauthURLRequest.service) &&
Objects.equals(this.chunkSize, oauthURLRequest.chunkSize) &&
Objects.equals(this.chunkOverlap, oauthURLRequest.chunkOverlap) &&
Objects.equals(this.skipEmbeddingGeneration, oauthURLRequest.skipEmbeddingGeneration) &&
Objects.equals(this.embeddingModel, oauthURLRequest.embeddingModel) &&
Objects.equals(this.zendeskSubdomain, oauthURLRequest.zendeskSubdomain) &&
Objects.equals(this.microsoftTenant, oauthURLRequest.microsoftTenant) &&
Objects.equals(this.sharepointSiteName, oauthURLRequest.sharepointSiteName) &&
Objects.equals(this.confluenceSubdomain, oauthURLRequest.confluenceSubdomain) &&
Objects.equals(this.generateSparseVectors, oauthURLRequest.generateSparseVectors) &&
Objects.equals(this.prependFilenameToChunks, oauthURLRequest.prependFilenameToChunks) &&
Objects.equals(this.maxItemsPerChunk, oauthURLRequest.maxItemsPerChunk) &&
Objects.equals(this.salesforceDomain, oauthURLRequest.salesforceDomain) &&
Objects.equals(this.syncFilesOnConnection, oauthURLRequest.syncFilesOnConnection) &&
Objects.equals(this.setPageAsBoundary, oauthURLRequest.setPageAsBoundary) &&
Objects.equals(this.dataSourceId, oauthURLRequest.dataSourceId) &&
Objects.equals(this.connectingNewAccount, oauthURLRequest.connectingNewAccount) &&
Objects.equals(this.requestId, oauthURLRequest.requestId) &&
Objects.equals(this.useOcr, oauthURLRequest.useOcr) &&
Objects.equals(this.parsePdfTablesWithOcr, oauthURLRequest.parsePdfTablesWithOcr) &&
Objects.equals(this.enableFilePicker, oauthURLRequest.enableFilePicker) &&
Objects.equals(this.syncSourceItems, oauthURLRequest.syncSourceItems) &&
Objects.equals(this.incrementalSync, oauthURLRequest.incrementalSync) &&
Objects.equals(this.fileSyncConfig, oauthURLRequest.fileSyncConfig) &&
Objects.equals(this.automaticallyOpenFilePicker, oauthURLRequest.automaticallyOpenFilePicker) &&
Objects.equals(this.gongAccountEmail, oauthURLRequest.gongAccountEmail) &&
Objects.equals(this.servicenowCredentials, oauthURLRequest.servicenowCredentials)&&
Objects.equals(this.additionalProperties, oauthURLRequest.additionalProperties);
}
private static boolean equalsNullable(JsonNullable a, JsonNullable b) {
return a == b || (a != null && b != null && a.isPresent() && b.isPresent() && Objects.deepEquals(a.get(), b.get()));
}
@Override
public int hashCode() {
return Objects.hash(tags, scope, service, chunkSize, chunkOverlap, skipEmbeddingGeneration, embeddingModel, zendeskSubdomain, microsoftTenant, sharepointSiteName, confluenceSubdomain, generateSparseVectors, prependFilenameToChunks, maxItemsPerChunk, salesforceDomain, syncFilesOnConnection, setPageAsBoundary, dataSourceId, connectingNewAccount, requestId, useOcr, parsePdfTablesWithOcr, enableFilePicker, syncSourceItems, incrementalSync, fileSyncConfig, automaticallyOpenFilePicker, gongAccountEmail, servicenowCredentials, additionalProperties);
}
private static int hashCodeNullable(JsonNullable a) {
if (a == null) {
return 1;
}
return a.isPresent() ? Arrays.deepHashCode(new Object[]{a.get()}) : 31;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("class OAuthURLRequest {\n");
sb.append(" tags: ").append(toIndentedString(tags)).append("\n");
sb.append(" scope: ").append(toIndentedString(scope)).append("\n");
sb.append(" service: ").append(toIndentedString(service)).append("\n");
sb.append(" chunkSize: ").append(toIndentedString(chunkSize)).append("\n");
sb.append(" chunkOverlap: ").append(toIndentedString(chunkOverlap)).append("\n");
sb.append(" skipEmbeddingGeneration: ").append(toIndentedString(skipEmbeddingGeneration)).append("\n");
sb.append(" embeddingModel: ").append(toIndentedString(embeddingModel)).append("\n");
sb.append(" zendeskSubdomain: ").append(toIndentedString(zendeskSubdomain)).append("\n");
sb.append(" microsoftTenant: ").append(toIndentedString(microsoftTenant)).append("\n");
sb.append(" sharepointSiteName: ").append(toIndentedString(sharepointSiteName)).append("\n");
sb.append(" confluenceSubdomain: ").append(toIndentedString(confluenceSubdomain)).append("\n");
sb.append(" generateSparseVectors: ").append(toIndentedString(generateSparseVectors)).append("\n");
sb.append(" prependFilenameToChunks: ").append(toIndentedString(prependFilenameToChunks)).append("\n");
sb.append(" maxItemsPerChunk: ").append(toIndentedString(maxItemsPerChunk)).append("\n");
sb.append(" salesforceDomain: ").append(toIndentedString(salesforceDomain)).append("\n");
sb.append(" syncFilesOnConnection: ").append(toIndentedString(syncFilesOnConnection)).append("\n");
sb.append(" setPageAsBoundary: ").append(toIndentedString(setPageAsBoundary)).append("\n");
sb.append(" dataSourceId: ").append(toIndentedString(dataSourceId)).append("\n");
sb.append(" connectingNewAccount: ").append(toIndentedString(connectingNewAccount)).append("\n");
sb.append(" requestId: ").append(toIndentedString(requestId)).append("\n");
sb.append(" useOcr: ").append(toIndentedString(useOcr)).append("\n");
sb.append(" parsePdfTablesWithOcr: ").append(toIndentedString(parsePdfTablesWithOcr)).append("\n");
sb.append(" enableFilePicker: ").append(toIndentedString(enableFilePicker)).append("\n");
sb.append(" syncSourceItems: ").append(toIndentedString(syncSourceItems)).append("\n");
sb.append(" incrementalSync: ").append(toIndentedString(incrementalSync)).append("\n");
sb.append(" fileSyncConfig: ").append(toIndentedString(fileSyncConfig)).append("\n");
sb.append(" automaticallyOpenFilePicker: ").append(toIndentedString(automaticallyOpenFilePicker)).append("\n");
sb.append(" gongAccountEmail: ").append(toIndentedString(gongAccountEmail)).append("\n");
sb.append(" servicenowCredentials: ").append(toIndentedString(servicenowCredentials)).append("\n");
sb.append(" additionalProperties: ").append(toIndentedString(additionalProperties)).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(Object o) {
if (o == null) {
return "null";
}
return o.toString().replace("\n", "\n ");
}
public static HashSet openapiFields;
public static HashSet openapiRequiredFields;
static {
// a set of all properties/fields (JSON key names)
openapiFields = new HashSet();
openapiFields.add("tags");
openapiFields.add("scope");
openapiFields.add("service");
openapiFields.add("chunk_size");
openapiFields.add("chunk_overlap");
openapiFields.add("skip_embedding_generation");
openapiFields.add("embedding_model");
openapiFields.add("zendesk_subdomain");
openapiFields.add("microsoft_tenant");
openapiFields.add("sharepoint_site_name");
openapiFields.add("confluence_subdomain");
openapiFields.add("generate_sparse_vectors");
openapiFields.add("prepend_filename_to_chunks");
openapiFields.add("max_items_per_chunk");
openapiFields.add("salesforce_domain");
openapiFields.add("sync_files_on_connection");
openapiFields.add("set_page_as_boundary");
openapiFields.add("data_source_id");
openapiFields.add("connecting_new_account");
openapiFields.add("request_id");
openapiFields.add("use_ocr");
openapiFields.add("parse_pdf_tables_with_ocr");
openapiFields.add("enable_file_picker");
openapiFields.add("sync_source_items");
openapiFields.add("incremental_sync");
openapiFields.add("file_sync_config");
openapiFields.add("automatically_open_file_picker");
openapiFields.add("gong_account_email");
openapiFields.add("servicenow_credentials");
// a set of required properties/fields (JSON key names)
openapiRequiredFields = new HashSet();
openapiRequiredFields.add("service");
}
/**
* Validates the JSON Object and throws an exception if issues found
*
* @param jsonObj JSON Object
* @throws IOException if the JSON Object is invalid with respect to OAuthURLRequest
*/
public static void validateJsonObject(JsonObject jsonObj) throws IOException {
if (jsonObj == null) {
if (!OAuthURLRequest.openapiRequiredFields.isEmpty()) { // has required fields but JSON object is null
throw new IllegalArgumentException(String.format("The required field(s) %s in OAuthURLRequest is not found in the empty JSON string", OAuthURLRequest.openapiRequiredFields.toString()));
}
}
// check to make sure all required properties/fields are present in the JSON string
for (String requiredField : OAuthURLRequest.openapiRequiredFields) {
if (jsonObj.get(requiredField) == null) {
throw new IllegalArgumentException(String.format("The required field `%s` is not found in the JSON string: %s", requiredField, jsonObj.toString()));
}
}
if (!jsonObj.get("scope").isJsonNull() && (jsonObj.get("scope") != null && !jsonObj.get("scope").isJsonNull()) && !jsonObj.get("scope").isJsonPrimitive()) {
throw new IllegalArgumentException(String.format("Expected the field `scope` to be a primitive type in the JSON string but got `%s`", jsonObj.get("scope").toString()));
}
if (!jsonObj.get("zendesk_subdomain").isJsonNull() && (jsonObj.get("zendesk_subdomain") != null && !jsonObj.get("zendesk_subdomain").isJsonNull()) && !jsonObj.get("zendesk_subdomain").isJsonPrimitive()) {
throw new IllegalArgumentException(String.format("Expected the field `zendesk_subdomain` to be a primitive type in the JSON string but got `%s`", jsonObj.get("zendesk_subdomain").toString()));
}
if (!jsonObj.get("microsoft_tenant").isJsonNull() && (jsonObj.get("microsoft_tenant") != null && !jsonObj.get("microsoft_tenant").isJsonNull()) && !jsonObj.get("microsoft_tenant").isJsonPrimitive()) {
throw new IllegalArgumentException(String.format("Expected the field `microsoft_tenant` to be a primitive type in the JSON string but got `%s`", jsonObj.get("microsoft_tenant").toString()));
}
if (!jsonObj.get("sharepoint_site_name").isJsonNull() && (jsonObj.get("sharepoint_site_name") != null && !jsonObj.get("sharepoint_site_name").isJsonNull()) && !jsonObj.get("sharepoint_site_name").isJsonPrimitive()) {
throw new IllegalArgumentException(String.format("Expected the field `sharepoint_site_name` to be a primitive type in the JSON string but got `%s`", jsonObj.get("sharepoint_site_name").toString()));
}
if (!jsonObj.get("confluence_subdomain").isJsonNull() && (jsonObj.get("confluence_subdomain") != null && !jsonObj.get("confluence_subdomain").isJsonNull()) && !jsonObj.get("confluence_subdomain").isJsonPrimitive()) {
throw new IllegalArgumentException(String.format("Expected the field `confluence_subdomain` to be a primitive type in the JSON string but got `%s`", jsonObj.get("confluence_subdomain").toString()));
}
if (!jsonObj.get("salesforce_domain").isJsonNull() && (jsonObj.get("salesforce_domain") != null && !jsonObj.get("salesforce_domain").isJsonNull()) && !jsonObj.get("salesforce_domain").isJsonPrimitive()) {
throw new IllegalArgumentException(String.format("Expected the field `salesforce_domain` to be a primitive type in the JSON string but got `%s`", jsonObj.get("salesforce_domain").toString()));
}
if (!jsonObj.get("request_id").isJsonNull() && (jsonObj.get("request_id") != null && !jsonObj.get("request_id").isJsonNull()) && !jsonObj.get("request_id").isJsonPrimitive()) {
throw new IllegalArgumentException(String.format("Expected the field `request_id` to be a primitive type in the JSON string but got `%s`", jsonObj.get("request_id").toString()));
}
// validate the optional field `file_sync_config`
if (jsonObj.get("file_sync_config") != null && !jsonObj.get("file_sync_config").isJsonNull()) {
FileSyncConfigNullable.validateJsonObject(jsonObj.getAsJsonObject("file_sync_config"));
}
if (!jsonObj.get("gong_account_email").isJsonNull() && (jsonObj.get("gong_account_email") != null && !jsonObj.get("gong_account_email").isJsonNull()) && !jsonObj.get("gong_account_email").isJsonPrimitive()) {
throw new IllegalArgumentException(String.format("Expected the field `gong_account_email` to be a primitive type in the JSON string but got `%s`", jsonObj.get("gong_account_email").toString()));
}
// validate the optional field `servicenow_credentials`
if (jsonObj.get("servicenow_credentials") != null && !jsonObj.get("servicenow_credentials").isJsonNull()) {
ServiceNowCredentialsNullable.validateJsonObject(jsonObj.getAsJsonObject("servicenow_credentials"));
}
}
public static class CustomTypeAdapterFactory implements TypeAdapterFactory {
@SuppressWarnings("unchecked")
@Override
public TypeAdapter create(Gson gson, TypeToken type) {
if (!OAuthURLRequest.class.isAssignableFrom(type.getRawType())) {
return null; // this class only serializes 'OAuthURLRequest' and its subtypes
}
final TypeAdapter elementAdapter = gson.getAdapter(JsonElement.class);
final TypeAdapter thisAdapter
= gson.getDelegateAdapter(this, TypeToken.get(OAuthURLRequest.class));
return (TypeAdapter) new TypeAdapter() {
@Override
public void write(JsonWriter out, OAuthURLRequest value) throws IOException {
JsonObject obj = thisAdapter.toJsonTree(value).getAsJsonObject();
obj.remove("additionalProperties");
// serialize additonal properties
if (value.getAdditionalProperties() != null) {
for (Map.Entry entry : value.getAdditionalProperties().entrySet()) {
if (entry.getValue() instanceof String)
obj.addProperty(entry.getKey(), (String) entry.getValue());
else if (entry.getValue() instanceof Number)
obj.addProperty(entry.getKey(), (Number) entry.getValue());
else if (entry.getValue() instanceof Boolean)
obj.addProperty(entry.getKey(), (Boolean) entry.getValue());
else if (entry.getValue() instanceof Character)
obj.addProperty(entry.getKey(), (Character) entry.getValue());
else if (entry.getValue() == null) {
obj.addProperty(entry.getKey(), (String) null);
} else {
obj.add(entry.getKey(), gson.toJsonTree(entry.getValue()).getAsJsonObject());
}
}
}
elementAdapter.write(out, obj);
}
@Override
public OAuthURLRequest read(JsonReader in) throws IOException {
JsonObject jsonObj = elementAdapter.read(in).getAsJsonObject();
validateJsonObject(jsonObj);
// store additional fields in the deserialized instance
OAuthURLRequest instance = thisAdapter.fromJsonTree(jsonObj);
for (Map.Entry entry : jsonObj.entrySet()) {
if (!openapiFields.contains(entry.getKey())) {
if (entry.getValue().isJsonPrimitive()) { // primitive type
if (entry.getValue().getAsJsonPrimitive().isString())
instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsString());
else if (entry.getValue().getAsJsonPrimitive().isNumber())
instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsNumber());
else if (entry.getValue().getAsJsonPrimitive().isBoolean())
instance.putAdditionalProperty(entry.getKey(), entry.getValue().getAsBoolean());
else
throw new IllegalArgumentException(String.format("The field `%s` has unknown primitive type. Value: %s", entry.getKey(), entry.getValue().toString()));
} else if (entry.getValue().isJsonArray()) {
instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), List.class));
} else { // JSON object
instance.putAdditionalProperty(entry.getKey(), gson.fromJson(entry.getValue(), HashMap.class));
}
}
}
return instance;
}
}.nullSafe();
}
}
/**
* Create an instance of OAuthURLRequest given an JSON string
*
* @param jsonString JSON string
* @return An instance of OAuthURLRequest
* @throws IOException if the JSON string is invalid with respect to OAuthURLRequest
*/
public static OAuthURLRequest fromJson(String jsonString) throws IOException {
return JSON.getGson().fromJson(jsonString, OAuthURLRequest.class);
}
/**
* Convert an instance of OAuthURLRequest to an JSON string
*
* @return JSON string
*/
public String toJson() {
return JSON.getGson().toJson(this);
}
}