content: /* Generated by camel build tools - do NOT edit this file! */
  package org.apache.camel.component.salesforce;
  
  import javax.annotation.processing.Generated;
  import java.util.Map;
  
  import org.apache.camel.CamelContext;
  import org.apache.camel.spi.ExtendedPropertyConfigurerGetter;
  import org.apache.camel.spi.PropertyConfigurerGetter;
  import org.apache.camel.spi.ConfigurerStrategy;
  import org.apache.camel.spi.GeneratedPropertyConfigurer;
  import org.apache.camel.util.CaseInsensitiveMap;
  import org.apache.camel.support.component.PropertyConfigurerSupport;
  
  /**
   * Generated by camel build tools - do NOT edit this file!
   */
  @Generated("org.apache.camel.maven.packaging.EndpointSchemaGeneratorMojo")
  @SuppressWarnings("unchecked")
  public class SalesforceComponentConfigurer extends PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter {
  
      private org.apache.camel.component.salesforce.SalesforceEndpointConfig getOrCreateConfig(SalesforceComponent target) {
          if (target.getConfig() == null) {
              target.setConfig(new org.apache.camel.component.salesforce.SalesforceEndpointConfig());
          }
          return target.getConfig();
      }
  
      @Override
      public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) {
          SalesforceComponent target = (SalesforceComponent) obj;
          switch (ignoreCase ? name.toLowerCase() : name) {
          case "allornone":
          case "allOrNone": getOrCreateConfig(target).setAllOrNone(property(camelContext, boolean.class, value)); return true;
          case "apexmethod":
          case "apexMethod": getOrCreateConfig(target).setApexMethod(property(camelContext, java.lang.String.class, value)); return true;
          case "apexqueryparams":
          case "apexQueryParams": getOrCreateConfig(target).setApexQueryParams(property(camelContext, java.util.Map.class, value)); return true;
          case "apexurl":
          case "apexUrl": getOrCreateConfig(target).setApexUrl(property(camelContext, java.lang.String.class, value)); return true;
          case "apiversion":
          case "apiVersion": getOrCreateConfig(target).setApiVersion(property(camelContext, java.lang.String.class, value)); return true;
          case "authenticationtype":
          case "authenticationType": target.setAuthenticationType(property(camelContext, org.apache.camel.component.salesforce.AuthenticationType.class, value)); return true;
          case "autowiredenabled":
          case "autowiredEnabled": target.setAutowiredEnabled(property(camelContext, boolean.class, value)); return true;
          case "backoffincrement":
          case "backoffIncrement": getOrCreateConfig(target).setBackoffIncrement(property(camelContext, java.time.Duration.class, value).toMillis()); return true;
          case "batchid":
          case "batchId": getOrCreateConfig(target).setBatchId(property(camelContext, java.lang.String.class, value)); return true;
          case "bridgeerrorhandler":
          case "bridgeErrorHandler": target.setBridgeErrorHandler(property(camelContext, boolean.class, value)); return true;
          case "clientid":
          case "clientId": target.setClientId(property(camelContext, java.lang.String.class, value)); return true;
          case "clientsecret":
          case "clientSecret": target.setClientSecret(property(camelContext, java.lang.String.class, value)); return true;
          case "compositemethod":
          case "compositeMethod": getOrCreateConfig(target).setCompositeMethod(property(camelContext, java.lang.String.class, value)); return true;
          case "config": target.setConfig(property(camelContext, org.apache.camel.component.salesforce.SalesforceEndpointConfig.class, value)); return true;
          case "contenttype":
          case "contentType": getOrCreateConfig(target).setContentType(property(camelContext, org.apache.camel.component.salesforce.api.dto.bulk.ContentType.class, value)); return true;
          case "defaultreplayid":
          case "defaultReplayId": getOrCreateConfig(target).setDefaultReplayId(property(camelContext, java.lang.Long.class, value)); return true;
          case "eventname":
          case "eventName": getOrCreateConfig(target).setEventName(property(camelContext, java.lang.String.class, value)); return true;
          case "eventschemaformat":
          case "eventSchemaFormat": getOrCreateConfig(target).setEventSchemaFormat(property(camelContext, org.apache.camel.component.salesforce.internal.dto.EventSchemaFormatEnum.class, value)); return true;
          case "eventschemaid":
          case "eventSchemaId": getOrCreateConfig(target).setEventSchemaId(property(camelContext, java.lang.String.class, value)); return true;
          case "fallbackreplayid":
          case "fallBackReplayId": getOrCreateConfig(target).setFallBackReplayId(property(camelContext, java.lang.Long.class, value)); return true;
          case "fallbacktolatestreplayid":
          case "fallbackToLatestReplayId": getOrCreateConfig(target).setFallbackToLatestReplayId(property(camelContext, boolean.class, value)); return true;
          case "format": getOrCreateConfig(target).setFormat(property(camelContext, org.apache.camel.component.salesforce.internal.PayloadFormat.class, value)); return true;
          case "httpclient":
          case "httpClient": getOrCreateConfig(target).setHttpClient(property(camelContext, org.apache.camel.component.salesforce.SalesforceHttpClient.class, value)); return true;
          case "httpclientconnectiontimeout":
          case "httpClientConnectionTimeout": target.setHttpClientConnectionTimeout(property(camelContext, long.class, value)); return true;
          case "httpclientidletimeout":
          case "httpClientIdleTimeout": target.setHttpClientIdleTimeout(property(camelContext, long.class, value)); return true;
          case "httpclientproperties":
          case "httpClientProperties": target.setHttpClientProperties(property(camelContext, java.util.Map.class, value)); return true;
          case "httpmaxcontentlength":
          case "httpMaxContentLength": target.setHttpMaxContentLength(property(camelContext, java.lang.Integer.class, value)); return true;
          case "httpproxyauthuri":
          case "httpProxyAuthUri": target.setHttpProxyAuthUri(property(camelContext, java.lang.String.class, value)); return true;
          case "httpproxyexcludedaddresses":
          case "httpProxyExcludedAddresses": target.setHttpProxyExcludedAddresses(property(camelContext, java.util.Set.class, value)); return true;
          case "httpproxyhost":
          case "httpProxyHost": target.setHttpProxyHost(property(camelContext, java.lang.String.class, value)); return true;
          case "httpproxyincludedaddresses":
          case "httpProxyIncludedAddresses": target.setHttpProxyIncludedAddresses(property(camelContext, java.util.Set.class, value)); return true;
          case "httpproxypassword":
          case "httpProxyPassword": target.setHttpProxyPassword(property(camelContext, java.lang.String.class, value)); return true;
          case "httpproxyport":
          case "httpProxyPort": target.setHttpProxyPort(property(camelContext, java.lang.Integer.class, value)); return true;
          case "httpproxyrealm":
          case "httpProxyRealm": target.setHttpProxyRealm(property(camelContext, java.lang.String.class, value)); return true;
          case "httpproxysecure":
          case "httpProxySecure": target.setHttpProxySecure(property(camelContext, boolean.class, value)); return true;
          case "httpproxysocks4":
          case "httpProxySocks4": target.setHttpProxySocks4(property(camelContext, boolean.class, value)); return true;
          case "httpproxyusedigestauth":
          case "httpProxyUseDigestAuth": target.setHttpProxyUseDigestAuth(property(camelContext, boolean.class, value)); return true;
          case "httpproxyusername":
          case "httpProxyUsername": target.setHttpProxyUsername(property(camelContext, java.lang.String.class, value)); return true;
          case "httprequestbuffersize":
          case "httpRequestBufferSize": target.setHttpRequestBufferSize(property(camelContext, java.lang.Integer.class, value)); return true;
          case "httprequesttimeout":
          case "httpRequestTimeout": target.setHttpRequestTimeout(property(camelContext, long.class, value)); return true;
          case "includedetails":
          case "includeDetails": getOrCreateConfig(target).setIncludeDetails(property(camelContext, java.lang.Boolean.class, value)); return true;
          case "initialreplayidmap":
          case "initialReplayIdMap": getOrCreateConfig(target).setInitialReplayIdMap(property(camelContext, java.util.Map.class, value)); return true;
          case "initialreplyidtimeout":
          case "initialReplyIdTimeout": target.setInitialReplyIdTimeout(property(camelContext, int.class, value)); return true;
          case "instanceid":
          case "instanceId": getOrCreateConfig(target).setInstanceId(property(camelContext, java.lang.String.class, value)); return true;
          case "instanceurl":
          case "instanceUrl": target.setInstanceUrl(property(camelContext, java.lang.String.class, value)); return true;
          case "jobid":
          case "jobId": getOrCreateConfig(target).setJobId(property(camelContext, java.lang.String.class, value)); return true;
          case "jwtaudience":
          case "jwtAudience": target.setJwtAudience(property(camelContext, java.lang.String.class, value)); return true;
          case "keystore": target.setKeystore(property(camelContext, org.apache.camel.support.jsse.KeyStoreParameters.class, value)); return true;
          case "lazylogin":
          case "lazyLogin": target.setLazyLogin(property(camelContext, boolean.class, value)); return true;
          case "lazystartproducer":
          case "lazyStartProducer": target.setLazyStartProducer(property(camelContext, boolean.class, value)); return true;
          case "limit": getOrCreateConfig(target).setLimit(property(camelContext, java.lang.Integer.class, value)); return true;
          case "locator": getOrCreateConfig(target).setLocator(property(camelContext, java.lang.String.class, value)); return true;
          case "loginconfig":
          case "loginConfig": target.setLoginConfig(property(camelContext, org.apache.camel.component.salesforce.SalesforceLoginConfig.class, value)); return true;
          case "loginurl":
          case "loginUrl": target.setLoginUrl(property(camelContext, java.lang.String.class, value)); return true;
          case "longpollingtransportproperties":
          case "longPollingTransportProperties": target.setLongPollingTransportProperties(property(camelContext, java.util.Map.class, value)); return true;
          case "maxbackoff":
          case "maxBackoff": getOrCreateConfig(target).setMaxBackoff(property(camelContext, java.time.Duration.class, value).toMillis()); return true;
          case "maxrecords":
          case "maxRecords": getOrCreateConfig(target).setMaxRecords(property(camelContext, java.lang.Integer.class, value)); return true;
          case "notfoundbehaviour":
          case "notFoundBehaviour": getOrCreateConfig(target).setNotFoundBehaviour(property(camelContext, org.apache.camel.component.salesforce.NotFoundBehaviour.class, value)); return true;
          case "notifyforfields":
          case "notifyForFields": getOrCreateConfig(target).setNotifyForFields(property(camelContext, org.apache.camel.component.salesforce.internal.dto.NotifyForFieldsEnum.class, value)); return true;
          case "notifyforoperationcreate":
          case "notifyForOperationCreate": getOrCreateConfig(target).setNotifyForOperationCreate(property(camelContext, java.lang.Boolean.class, value)); return true;
          case "notifyforoperationdelete":
          case "notifyForOperationDelete": getOrCreateConfig(target).setNotifyForOperationDelete(property(camelContext, java.lang.Boolean.class, value)); return true;
          case "notifyforoperationundelete":
          case "notifyForOperationUndelete": getOrCreateConfig(target).setNotifyForOperationUndelete(property(camelContext, java.lang.Boolean.class, value)); return true;
          case "notifyforoperationupdate":
          case "notifyForOperationUpdate": getOrCreateConfig(target).setNotifyForOperationUpdate(property(camelContext, java.lang.Boolean.class, value)); return true;
          case "notifyforoperations":
          case "notifyForOperations": getOrCreateConfig(target).setNotifyForOperations(property(camelContext, org.apache.camel.component.salesforce.internal.dto.NotifyForOperationsEnum.class, value)); return true;
          case "objectmapper":
          case "objectMapper": getOrCreateConfig(target).setObjectMapper(property(camelContext, com.fasterxml.jackson.databind.ObjectMapper.class, value)); return true;
          case "packages": target.setPackages(property(camelContext, java.lang.String.class, value)); return true;
          case "password": target.setPassword(property(camelContext, java.lang.String.class, value)); return true;
          case "pkchunking":
          case "pkChunking": getOrCreateConfig(target).setPkChunking(property(camelContext, java.lang.Boolean.class, value)); return true;
          case "pkchunkingchunksize":
          case "pkChunkingChunkSize": getOrCreateConfig(target).setPkChunkingChunkSize(property(camelContext, java.lang.Integer.class, value)); return true;
          case "pkchunkingparent":
          case "pkChunkingParent": getOrCreateConfig(target).setPkChunkingParent(property(camelContext, java.lang.String.class, value)); return true;
          case "pkchunkingstartrow":
          case "pkChunkingStartRow": getOrCreateConfig(target).setPkChunkingStartRow(property(camelContext, java.lang.String.class, value)); return true;
          case "pubsubbatchsize":
          case "pubSubBatchSize": getOrCreateConfig(target).setPubSubBatchSize(property(camelContext, int.class, value)); return true;
          case "pubsubdeserializetype":
          case "pubSubDeserializeType": getOrCreateConfig(target).setPubSubDeserializeType(property(camelContext, org.apache.camel.component.salesforce.PubSubDeserializeType.class, value)); return true;
          case "pubsubhost":
          case "pubSubHost": target.setPubSubHost(property(camelContext, java.lang.String.class, value)); return true;
          case "pubsubpojoclass":
          case "pubSubPojoClass": getOrCreateConfig(target).setPubSubPojoClass(property(camelContext, java.lang.String.class, value)); return true;
          case "pubsubport":
          case "pubSubPort": target.setPubSubPort(property(camelContext, int.class, value)); return true;
          case "pubsuballowusesystemproxy":
          case "pubsubAllowUseSystemProxy": target.setPubsubAllowUseSystemProxy(property(camelContext, boolean.class, value)); return true;
          case "querylocator":
          case "queryLocator": getOrCreateConfig(target).setQueryLocator(property(camelContext, java.lang.String.class, value)); return true;
          case "rawhttpheaders":
          case "rawHttpHeaders": getOrCreateConfig(target).setRawHttpHeaders(property(camelContext, java.lang.String.class, value)); return true;
          case "rawmethod":
          case "rawMethod": getOrCreateConfig(target).setRawMethod(property(camelContext, java.lang.String.class, value)); return true;
          case "rawpath":
          case "rawPath": getOrCreateConfig(target).setRawPath(property(camelContext, java.lang.String.class, value)); return true;
          case "rawpayload":
          case "rawPayload": getOrCreateConfig(target).setRawPayload(property(camelContext, boolean.class, value)); return true;
          case "rawqueryparameters":
          case "rawQueryParameters": getOrCreateConfig(target).setRawQueryParameters(property(camelContext, java.lang.String.class, value)); return true;
          case "refreshtoken":
          case "refreshToken": target.setRefreshToken(property(camelContext, java.lang.String.class, value)); return true;
          case "replaypreset":
          case "replayPreset": getOrCreateConfig(target).setReplayPreset(property(camelContext, com.salesforce.eventbus.protobuf.ReplayPreset.class, value)); return true;
          case "reportid":
          case "reportId": getOrCreateConfig(target).setReportId(property(camelContext, java.lang.String.class, value)); return true;
          case "reportmetadata":
          case "reportMetadata": getOrCreateConfig(target).setReportMetadata(property(camelContext, org.apache.camel.component.salesforce.api.dto.analytics.reports.ReportMetadata.class, value)); return true;
          case "resultid":
          case "resultId": getOrCreateConfig(target).setResultId(property(camelContext, java.lang.String.class, value)); return true;
          case "sobjectblobfieldname":
          case "sObjectBlobFieldName": getOrCreateConfig(target).setSObjectBlobFieldName(property(camelContext, java.lang.String.class, value)); return true;
          case "sobjectclass":
          case "sObjectClass": getOrCreateConfig(target).setSObjectClass(property(camelContext, java.lang.String.class, value)); return true;
          case "sobjectfields":
          case "sObjectFields": getOrCreateConfig(target).setSObjectFields(property(camelContext, java.lang.String.class, value)); return true;
          case "sobjectid":
          case "sObjectId": getOrCreateConfig(target).setSObjectId(property(camelContext, java.lang.String.class, value)); return true;
          case "sobjectidname":
          case "sObjectIdName": getOrCreateConfig(target).setSObjectIdName(property(camelContext, java.lang.String.class, value)); return true;
          case "sobjectidvalue":
          case "sObjectIdValue": getOrCreateConfig(target).setSObjectIdValue(property(camelContext, java.lang.String.class, value)); return true;
          case "sobjectname":
          case "sObjectName": getOrCreateConfig(target).setSObjectName(property(camelContext, java.lang.String.class, value)); return true;
          case "sobjectquery":
          case "sObjectQuery": getOrCreateConfig(target).setSObjectQuery(property(camelContext, java.lang.String.class, value)); return true;
          case "sobjectsearch":
          case "sObjectSearch": getOrCreateConfig(target).setSObjectSearch(property(camelContext, java.lang.String.class, value)); return true;
          case "sslcontextparameters":
          case "sslContextParameters": target.setSslContextParameters(property(camelContext, org.apache.camel.support.jsse.SSLContextParameters.class, value)); return true;
          case "streamqueryresult":
          case "streamQueryResult": getOrCreateConfig(target).setStreamQueryResult(property(camelContext, java.lang.Boolean.class, value)); return true;
          case "updatetopic":
          case "updateTopic": getOrCreateConfig(target).setUpdateTopic(property(camelContext, boolean.class, value)); return true;
          case "useglobalsslcontextparameters":
          case "useGlobalSslContextParameters": target.setUseGlobalSslContextParameters(property(camelContext, boolean.class, value)); return true;
          case "username":
          case "userName": target.setUserName(property(camelContext, java.lang.String.class, value)); return true;
          case "workerpoolmaxsize":
          case "workerPoolMaxSize": target.setWorkerPoolMaxSize(property(camelContext, int.class, value)); return true;
          case "workerpoolsize":
          case "workerPoolSize": target.setWorkerPoolSize(property(camelContext, int.class, value)); return true;
          default: return false;
          }
      }
  
      @Override
      public Class<?> getOptionType(String name, boolean ignoreCase) {
          switch (ignoreCase ? name.toLowerCase() : name) {
          case "allornone":
          case "allOrNone": return boolean.class;
          case "apexmethod":
          case "apexMethod": return java.lang.String.class;
          case "apexqueryparams":
          case "apexQueryParams": return java.util.Map.class;
          case "apexurl":
          case "apexUrl": return java.lang.String.class;
          case "apiversion":
          case "apiVersion": return java.lang.String.class;
          case "authenticationtype":
          case "authenticationType": return org.apache.camel.component.salesforce.AuthenticationType.class;
          case "autowiredenabled":
          case "autowiredEnabled": return boolean.class;
          case "backoffincrement":
          case "backoffIncrement": return long.class;
          case "batchid":
          case "batchId": return java.lang.String.class;
          case "bridgeerrorhandler":
          case "bridgeErrorHandler": return boolean.class;
          case "clientid":
          case "clientId": return java.lang.String.class;
          case "clientsecret":
          case "clientSecret": return java.lang.String.class;
          case "compositemethod":
          case "compositeMethod": return java.lang.String.class;
          case "config": return org.apache.camel.component.salesforce.SalesforceEndpointConfig.class;
          case "contenttype":
          case "contentType": return org.apache.camel.component.salesforce.api.dto.bulk.ContentType.class;
          case "defaultreplayid":
          case "defaultReplayId": return java.lang.Long.class;
          case "eventname":
          case "eventName": return java.lang.String.class;
          case "eventschemaformat":
          case "eventSchemaFormat": return org.apache.camel.component.salesforce.internal.dto.EventSchemaFormatEnum.class;
          case "eventschemaid":
          case "eventSchemaId": return java.lang.String.class;
          case "fallbackreplayid":
          case "fallBackReplayId": return java.lang.Long.class;
          case "fallbacktolatestreplayid":
          case "fallbackToLatestReplayId": return boolean.class;
          case "format": return org.apache.camel.component.salesforce.internal.PayloadFormat.class;
          case "httpclient":
          case "httpClient": return org.apache.camel.component.salesforce.SalesforceHttpClient.class;
          case "httpclientconnectiontimeout":
          case "httpClientConnectionTimeout": return long.class;
          case "httpclientidletimeout":
          case "httpClientIdleTimeout": return long.class;
          case "httpclientproperties":
          case "httpClientProperties": return java.util.Map.class;
          case "httpmaxcontentlength":
          case "httpMaxContentLength": return java.lang.Integer.class;
          case "httpproxyauthuri":
          case "httpProxyAuthUri": return java.lang.String.class;
          case "httpproxyexcludedaddresses":
          case "httpProxyExcludedAddresses": return java.util.Set.class;
          case "httpproxyhost":
          case "httpProxyHost": return java.lang.String.class;
          case "httpproxyincludedaddresses":
          case "httpProxyIncludedAddresses": return java.util.Set.class;
          case "httpproxypassword":
          case "httpProxyPassword": return java.lang.String.class;
          case "httpproxyport":
          case "httpProxyPort": return java.lang.Integer.class;
          case "httpproxyrealm":
          case "httpProxyRealm": return java.lang.String.class;
          case "httpproxysecure":
          case "httpProxySecure": return boolean.class;
          case "httpproxysocks4":
          case "httpProxySocks4": return boolean.class;
          case "httpproxyusedigestauth":
          case "httpProxyUseDigestAuth": return boolean.class;
          case "httpproxyusername":
          case "httpProxyUsername": return java.lang.String.class;
          case "httprequestbuffersize":
          case "httpRequestBufferSize": return java.lang.Integer.class;
          case "httprequesttimeout":
          case "httpRequestTimeout": return long.class;
          case "includedetails":
          case "includeDetails": return java.lang.Boolean.class;
          case "initialreplayidmap":
          case "initialReplayIdMap": return java.util.Map.class;
          case "initialreplyidtimeout":
          case "initialReplyIdTimeout": return int.class;
          case "instanceid":
          case "instanceId": return java.lang.String.class;
          case "instanceurl":
          case "instanceUrl": return java.lang.String.class;
          case "jobid":
          case "jobId": return java.lang.String.class;
          case "jwtaudience":
          case "jwtAudience": return java.lang.String.class;
          case "keystore": return org.apache.camel.support.jsse.KeyStoreParameters.class;
          case "lazylogin":
          case "lazyLogin": return boolean.class;
          case "lazystartproducer":
          case "lazyStartProducer": return boolean.class;
          case "limit": return java.lang.Integer.class;
          case "locator": return java.lang.String.class;
          case "loginconfig":
          case "loginConfig": return org.apache.camel.component.salesforce.SalesforceLoginConfig.class;
          case "loginurl":
          case "loginUrl": return java.lang.String.class;
          case "longpollingtransportproperties":
          case "longPollingTransportProperties": return java.util.Map.class;
          case "maxbackoff":
          case "maxBackoff": return long.class;
          case "maxrecords":
          case "maxRecords": return java.lang.Integer.class;
          case "notfoundbehaviour":
          case "notFoundBehaviour": return org.apache.camel.component.salesforce.NotFoundBehaviour.class;
          case "notifyforfields":
          case "notifyForFields": return org.apache.camel.component.salesforce.internal.dto.NotifyForFieldsEnum.class;
          case "notifyforoperationcreate":
          case "notifyForOperationCreate": return java.lang.Boolean.class;
          case "notifyforoperationdelete":
          case "notifyForOperationDelete": return java.lang.Boolean.class;
          case "notifyforoperationundelete":
          case "notifyForOperationUndelete": return java.lang.Boolean.class;
          case "notifyforoperationupdate":
          case "notifyForOperationUpdate": return java.lang.Boolean.class;
          case "notifyforoperations":
          case "notifyForOperations": return org.apache.camel.component.salesforce.internal.dto.NotifyForOperationsEnum.class;
          case "objectmapper":
          case "objectMapper": return com.fasterxml.jackson.databind.ObjectMapper.class;
          case "packages": return java.lang.String.class;
          case "password": return java.lang.String.class;
          case "pkchunking":
          case "pkChunking": return java.lang.Boolean.class;
          case "pkchunkingchunksize":
          case "pkChunkingChunkSize": return java.lang.Integer.class;
          case "pkchunkingparent":
          case "pkChunkingParent": return java.lang.String.class;
          case "pkchunkingstartrow":
          case "pkChunkingStartRow": return java.lang.String.class;
          case "pubsubbatchsize":
          case "pubSubBatchSize": return int.class;
          case "pubsubdeserializetype":
          case "pubSubDeserializeType": return org.apache.camel.component.salesforce.PubSubDeserializeType.class;
          case "pubsubhost":
          case "pubSubHost": return java.lang.String.class;
          case "pubsubpojoclass":
          case "pubSubPojoClass": return java.lang.String.class;
          case "pubsubport":
          case "pubSubPort": return int.class;
          case "pubsuballowusesystemproxy":
          case "pubsubAllowUseSystemProxy": return boolean.class;
          case "querylocator":
          case "queryLocator": return java.lang.String.class;
          case "rawhttpheaders":
          case "rawHttpHeaders": return java.lang.String.class;
          case "rawmethod":
          case "rawMethod": return java.lang.String.class;
          case "rawpath":
          case "rawPath": return java.lang.String.class;
          case "rawpayload":
          case "rawPayload": return boolean.class;
          case "rawqueryparameters":
          case "rawQueryParameters": return java.lang.String.class;
          case "refreshtoken":
          case "refreshToken": return java.lang.String.class;
          case "replaypreset":
          case "replayPreset": return com.salesforce.eventbus.protobuf.ReplayPreset.class;
          case "reportid":
          case "reportId": return java.lang.String.class;
          case "reportmetadata":
          case "reportMetadata": return org.apache.camel.component.salesforce.api.dto.analytics.reports.ReportMetadata.class;
          case "resultid":
          case "resultId": return java.lang.String.class;
          case "sobjectblobfieldname":
          case "sObjectBlobFieldName": return java.lang.String.class;
          case "sobjectclass":
          case "sObjectClass": return java.lang.String.class;
          case "sobjectfields":
          case "sObjectFields": return java.lang.String.class;
          case "sobjectid":
          case "sObjectId": return java.lang.String.class;
          case "sobjectidname":
          case "sObjectIdName": return java.lang.String.class;
          case "sobjectidvalue":
          case "sObjectIdValue": return java.lang.String.class;
          case "sobjectname":
          case "sObjectName": return java.lang.String.class;
          case "sobjectquery":
          case "sObjectQuery": return java.lang.String.class;
          case "sobjectsearch":
          case "sObjectSearch": return java.lang.String.class;
          case "sslcontextparameters":
          case "sslContextParameters": return org.apache.camel.support.jsse.SSLContextParameters.class;
          case "streamqueryresult":
          case "streamQueryResult": return java.lang.Boolean.class;
          case "updatetopic":
          case "updateTopic": return boolean.class;
          case "useglobalsslcontextparameters":
          case "useGlobalSslContextParameters": return boolean.class;
          case "username":
          case "userName": return java.lang.String.class;
          case "workerpoolmaxsize":
          case "workerPoolMaxSize": return int.class;
          case "workerpoolsize":
          case "workerPoolSize": return int.class;
          default: return null;
          }
      }
  
      @Override
      public Object getOptionValue(Object obj, String name, boolean ignoreCase) {
          SalesforceComponent target = (SalesforceComponent) obj;
          switch (ignoreCase ? name.toLowerCase() : name) {
          case "allornone":
          case "allOrNone": return getOrCreateConfig(target).isAllOrNone();
          case "apexmethod":
          case "apexMethod": return getOrCreateConfig(target).getApexMethod();
          case "apexqueryparams":
          case "apexQueryParams": return getOrCreateConfig(target).getApexQueryParams();
          case "apexurl":
          case "apexUrl": return getOrCreateConfig(target).getApexUrl();
          case "apiversion":
          case "apiVersion": return getOrCreateConfig(target).getApiVersion();
          case "authenticationtype":
          case "authenticationType": return target.getAuthenticationType();
          case "autowiredenabled":
          case "autowiredEnabled": return target.isAutowiredEnabled();
          case "backoffincrement":
          case "backoffIncrement": return getOrCreateConfig(target).getBackoffIncrement();
          case "batchid":
          case "batchId": return getOrCreateConfig(target).getBatchId();
          case "bridgeerrorhandler":
          case "bridgeErrorHandler": return target.isBridgeErrorHandler();
          case "clientid":
          case "clientId": return target.getClientId();
          case "clientsecret":
          case "clientSecret": return target.getClientSecret();
          case "compositemethod":
          case "compositeMethod": return getOrCreateConfig(target).getCompositeMethod();
          case "config": return target.getConfig();
          case "contenttype":
          case "contentType": return getOrCreateConfig(target).getContentType();
          case "defaultreplayid":
          case "defaultReplayId": return getOrCreateConfig(target).getDefaultReplayId();
          case "eventname":
          case "eventName": return getOrCreateConfig(target).getEventName();
          case "eventschemaformat":
          case "eventSchemaFormat": return getOrCreateConfig(target).getEventSchemaFormat();
          case "eventschemaid":
          case "eventSchemaId": return getOrCreateConfig(target).getEventSchemaId();
          case "fallbackreplayid":
          case "fallBackReplayId": return getOrCreateConfig(target).getFallBackReplayId();
          case "fallbacktolatestreplayid":
          case "fallbackToLatestReplayId": return getOrCreateConfig(target).isFallbackToLatestReplayId();
          case "format": return getOrCreateConfig(target).getFormat();
          case "httpclient":
          case "httpClient": return getOrCreateConfig(target).getHttpClient();
          case "httpclientconnectiontimeout":
          case "httpClientConnectionTimeout": return target.getHttpClientConnectionTimeout();
          case "httpclientidletimeout":
          case "httpClientIdleTimeout": return target.getHttpClientIdleTimeout();
          case "httpclientproperties":
          case "httpClientProperties": return target.getHttpClientProperties();
          case "httpmaxcontentlength":
          case "httpMaxContentLength": return target.getHttpMaxContentLength();
          case "httpproxyauthuri":
          case "httpProxyAuthUri": return target.getHttpProxyAuthUri();
          case "httpproxyexcludedaddresses":
          case "httpProxyExcludedAddresses": return target.getHttpProxyExcludedAddresses();
          case "httpproxyhost":
          case "httpProxyHost": return target.getHttpProxyHost();
          case "httpproxyincludedaddresses":
          case "httpProxyIncludedAddresses": return target.getHttpProxyIncludedAddresses();
          case "httpproxypassword":
          case "httpProxyPassword": return target.getHttpProxyPassword();
          case "httpproxyport":
          case "httpProxyPort": return target.getHttpProxyPort();
          case "httpproxyrealm":
          case "httpProxyRealm": return target.getHttpProxyRealm();
          case "httpproxysecure":
          case "httpProxySecure": return target.isHttpProxySecure();
          case "httpproxysocks4":
          case "httpProxySocks4": return target.isHttpProxySocks4();
          case "httpproxyusedigestauth":
          case "httpProxyUseDigestAuth": return target.isHttpProxyUseDigestAuth();
          case "httpproxyusername":
          case "httpProxyUsername": return target.getHttpProxyUsername();
          case "httprequestbuffersize":
          case "httpRequestBufferSize": return target.getHttpRequestBufferSize();
          case "httprequesttimeout":
          case "httpRequestTimeout": return target.getHttpRequestTimeout();
          case "includedetails":
          case "includeDetails": return getOrCreateConfig(target).getIncludeDetails();
          case "initialreplayidmap":
          case "initialReplayIdMap": return getOrCreateConfig(target).getInitialReplayIdMap();
          case "initialreplyidtimeout":
          case "initialReplyIdTimeout": return target.getInitialReplyIdTimeout();
          case "instanceid":
          case "instanceId": return getOrCreateConfig(target).getInstanceId();
          case "instanceurl":
          case "instanceUrl": return target.getInstanceUrl();
          case "jobid":
          case "jobId": return getOrCreateConfig(target).getJobId();
          case "jwtaudience":
          case "jwtAudience": return target.getJwtAudience();
          case "keystore": return target.getKeystore();
          case "lazylogin":
          case "lazyLogin": return target.isLazyLogin();
          case "lazystartproducer":
          case "lazyStartProducer": return target.isLazyStartProducer();
          case "limit": return getOrCreateConfig(target).getLimit();
          case "locator": return getOrCreateConfig(target).getLocator();
          case "loginconfig":
          case "loginConfig": return target.getLoginConfig();
          case "loginurl":
          case "loginUrl": return target.getLoginUrl();
          case "longpollingtransportproperties":
          case "longPollingTransportProperties": return target.getLongPollingTransportProperties();
          case "maxbackoff":
          case "maxBackoff": return getOrCreateConfig(target).getMaxBackoff();
          case "maxrecords":
          case "maxRecords": return getOrCreateConfig(target).getMaxRecords();
          case "notfoundbehaviour":
          case "notFoundBehaviour": return getOrCreateConfig(target).getNotFoundBehaviour();
          case "notifyforfields":
          case "notifyForFields": return getOrCreateConfig(target).getNotifyForFields();
          case "notifyforoperationcreate":
          case "notifyForOperationCreate": return getOrCreateConfig(target).getNotifyForOperationCreate();
          case "notifyforoperationdelete":
          case "notifyForOperationDelete": return getOrCreateConfig(target).getNotifyForOperationDelete();
          case "notifyforoperationundelete":
          case "notifyForOperationUndelete": return getOrCreateConfig(target).getNotifyForOperationUndelete();
          case "notifyforoperationupdate":
          case "notifyForOperationUpdate": return getOrCreateConfig(target).getNotifyForOperationUpdate();
          case "notifyforoperations":
          case "notifyForOperations": return getOrCreateConfig(target).getNotifyForOperations();
          case "objectmapper":
          case "objectMapper": return getOrCreateConfig(target).getObjectMapper();
          case "packages": return target.getPackages();
          case "password": return target.getPassword();
          case "pkchunking":
          case "pkChunking": return getOrCreateConfig(target).getPkChunking();
          case "pkchunkingchunksize":
          case "pkChunkingChunkSize": return getOrCreateConfig(target).getPkChunkingChunkSize();
          case "pkchunkingparent":
          case "pkChunkingParent": return getOrCreateConfig(target).getPkChunkingParent();
          case "pkchunkingstartrow":
          case "pkChunkingStartRow": return getOrCreateConfig(target).getPkChunkingStartRow();
          case "pubsubbatchsize":
          case "pubSubBatchSize": return getOrCreateConfig(target).getPubSubBatchSize();
          case "pubsubdeserializetype":
          case "pubSubDeserializeType": return getOrCreateConfig(target).getPubSubDeserializeType();
          case "pubsubhost":
          case "pubSubHost": return target.getPubSubHost();
          case "pubsubpojoclass":
          case "pubSubPojoClass": return getOrCreateConfig(target).getPubSubPojoClass();
          case "pubsubport":
          case "pubSubPort": return target.getPubSubPort();
          case "pubsuballowusesystemproxy":
          case "pubsubAllowUseSystemProxy": return target.isPubsubAllowUseSystemProxy();
          case "querylocator":
          case "queryLocator": return getOrCreateConfig(target).getQueryLocator();
          case "rawhttpheaders":
          case "rawHttpHeaders": return getOrCreateConfig(target).getRawHttpHeaders();
          case "rawmethod":
          case "rawMethod": return getOrCreateConfig(target).getRawMethod();
          case "rawpath":
          case "rawPath": return getOrCreateConfig(target).getRawPath();
          case "rawpayload":
          case "rawPayload": return getOrCreateConfig(target).isRawPayload();
          case "rawqueryparameters":
          case "rawQueryParameters": return getOrCreateConfig(target).getRawQueryParameters();
          case "refreshtoken":
          case "refreshToken": return target.getRefreshToken();
          case "replaypreset":
          case "replayPreset": return getOrCreateConfig(target).getReplayPreset();
          case "reportid":
          case "reportId": return getOrCreateConfig(target).getReportId();
          case "reportmetadata":
          case "reportMetadata": return getOrCreateConfig(target).getReportMetadata();
          case "resultid":
          case "resultId": return getOrCreateConfig(target).getResultId();
          case "sobjectblobfieldname":
          case "sObjectBlobFieldName": return getOrCreateConfig(target).getSObjectBlobFieldName();
          case "sobjectclass":
          case "sObjectClass": return getOrCreateConfig(target).getSObjectClass();
          case "sobjectfields":
          case "sObjectFields": return getOrCreateConfig(target).getSObjectFields();
          case "sobjectid":
          case "sObjectId": return getOrCreateConfig(target).getSObjectId();
          case "sobjectidname":
          case "sObjectIdName": return getOrCreateConfig(target).getSObjectIdName();
          case "sobjectidvalue":
          case "sObjectIdValue": return getOrCreateConfig(target).getSObjectIdValue();
          case "sobjectname":
          case "sObjectName": return getOrCreateConfig(target).getSObjectName();
          case "sobjectquery":
          case "sObjectQuery": return getOrCreateConfig(target).getSObjectQuery();
          case "sobjectsearch":
          case "sObjectSearch": return getOrCreateConfig(target).getSObjectSearch();
          case "sslcontextparameters":
          case "sslContextParameters": return target.getSslContextParameters();
          case "streamqueryresult":
          case "streamQueryResult": return getOrCreateConfig(target).getStreamQueryResult();
          case "updatetopic":
          case "updateTopic": return getOrCreateConfig(target).isUpdateTopic();
          case "useglobalsslcontextparameters":
          case "useGlobalSslContextParameters": return target.isUseGlobalSslContextParameters();
          case "username":
          case "userName": return target.getUserName();
          case "workerpoolmaxsize":
          case "workerPoolMaxSize": return target.getWorkerPoolMaxSize();
          case "workerpoolsize":
          case "workerPoolSize": return target.getWorkerPoolSize();
          default: return null;
          }
      }
  
      @Override
      public Object getCollectionValueType(Object target, String name, boolean ignoreCase) {
          switch (ignoreCase ? name.toLowerCase() : name) {
          case "apexqueryparams":
          case "apexQueryParams": return java.lang.Object.class;
          case "httpclientproperties":
          case "httpClientProperties": return java.lang.Object.class;
          case "httpproxyexcludedaddresses":
          case "httpProxyExcludedAddresses": return java.lang.String.class;
          case "httpproxyincludedaddresses":
          case "httpProxyIncludedAddresses": return java.lang.String.class;
          case "initialreplayidmap":
          case "initialReplayIdMap": return java.lang.Long.class;
          case "longpollingtransportproperties":
          case "longPollingTransportProperties": return java.lang.Object.class;
          default: return null;
          }
      }
  }
  
  