{
  "groups": [
    {
      "name": "camel.component.google-calendar",
      "type": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream",
      "type": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.customizer",
      "type": "org.apache.camel.spring.boot.ComponentConfigurationPropertiesCommon$CustomizerProperties",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration",
      "sourceMethod": "getCustomizer()"
    },
    {
      "name": "camel.component.google-calendar.customizer",
      "type": "org.apache.camel.spring.boot.ComponentConfigurationPropertiesCommon$CustomizerProperties",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration",
      "sourceMethod": "getCustomizer()"
    }
  ],
  "properties": [
    {
      "name": "camel.component.google-calendar-stream.access-token",
      "type": "java.lang.String",
      "description": "OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage.",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.application-name",
      "type": "java.lang.String",
      "description": "Google Calendar application name. Example would be camel-google-calendar\/1.0",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.autowired-enabled",
      "type": "java.lang.Boolean",
      "description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which then gets configured on the component. This can be used for automatic configuring JDBC data sources, JMS connection factories, AWS Clients, etc.",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration",
      "defaultValue": true
    },
    {
      "name": "camel.component.google-calendar-stream.bridge-error-handler",
      "type": "java.lang.Boolean",
      "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored.",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration",
      "defaultValue": false
    },
    {
      "name": "camel.component.google-calendar-stream.calendar-id",
      "type": "java.lang.String",
      "description": "The calendarId to be used",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration",
      "defaultValue": "primary"
    },
    {
      "name": "camel.component.google-calendar-stream.client-factory",
      "type": "org.apache.camel.component.google.calendar.GoogleCalendarClientFactory",
      "description": "The client Factory. The option is a org.apache.camel.component.google.calendar.GoogleCalendarClientFactory type.",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.client-id",
      "type": "java.lang.String",
      "description": "Client ID of the calendar application",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.client-secret",
      "type": "java.lang.String",
      "description": "Client secret of the calendar application",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.configuration",
      "type": "org.apache.camel.component.google.calendar.stream.GoogleCalendarStreamConfiguration",
      "description": "The configuration. The option is a org.apache.camel.component.google.calendar.stream.GoogleCalendarStreamConfiguration type.",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.consider-last-update",
      "type": "java.lang.Boolean",
      "description": "Take into account the lastUpdate of the last event polled as start date for the next poll",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration",
      "defaultValue": false
    },
    {
      "name": "camel.component.google-calendar-stream.consume-from-now",
      "type": "java.lang.Boolean",
      "description": "Consume events in the selected calendar from now on",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration",
      "defaultValue": true
    },
    {
      "name": "camel.component.google-calendar-stream.customizer.enabled",
      "type": "java.lang.Boolean",
      "sourceType": "org.apache.camel.spring.boot.ComponentConfigurationPropertiesCommon$CustomizerProperties"
    },
    {
      "name": "camel.component.google-calendar-stream.delegate",
      "type": "java.lang.String",
      "description": "Delegate for wide-domain service account",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.email-address",
      "type": "java.lang.String",
      "description": "The emailAddress of the Google Service Account.",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.enabled",
      "type": "java.lang.Boolean",
      "description": "Whether to enable auto configuration of the google-calendar-stream component. This is enabled by default.",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.max-results",
      "type": "java.lang.Integer",
      "description": "Max results to be returned",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration",
      "defaultValue": 10
    },
    {
      "name": "camel.component.google-calendar-stream.p12-file-name",
      "type": "java.lang.String",
      "description": "The name of the p12 file which has the private key to use with the Google Service Account.",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.query",
      "type": "java.lang.String",
      "description": "The query to execute on calendar",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.refresh-token",
      "type": "java.lang.String",
      "description": "OAuth 2 refresh token. Using this, the Google Calendar component can obtain a new accessToken whenever the current one expires - a necessity if the application is long-lived.",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.scopes",
      "type": "java.util.List<java.lang.String>",
      "description": "Specifies the level of permissions you want a calendar application to have to a user account. See https:\/\/developers.google.com\/calendar\/auth for more info.",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.service-account-key",
      "type": "java.lang.String",
      "description": "Service account key in json format to authenticate an application as a service account. Accept base64 adding the prefix base64:",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar-stream.sync-flow",
      "type": "java.lang.Boolean",
      "description": "Sync events, see https:\/\/developers.google.com\/calendar\/v3\/sync Note: not compatible with: 'query' and 'considerLastUpdate' parameters",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration",
      "defaultValue": false
    },
    {
      "name": "camel.component.google-calendar-stream.user",
      "type": "java.lang.String",
      "description": "The email address of the user the application is trying to impersonate in the service account flow.",
      "sourceType": "org.apache.camel.component.google.calendar.stream.springboot.GoogleCalendarStreamComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar.access-token",
      "type": "java.lang.String",
      "description": "OAuth 2 access token. This typically expires after an hour so refreshToken is recommended for long term usage.",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar.application-name",
      "type": "java.lang.String",
      "description": "Google calendar application name. Example would be camel-google-calendar\/1.0",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar.autowired-enabled",
      "type": "java.lang.Boolean",
      "description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which then gets configured on the component. This can be used for automatic configuring JDBC data sources, JMS connection factories, AWS Clients, etc.",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration",
      "defaultValue": true
    },
    {
      "name": "camel.component.google-calendar.bridge-error-handler",
      "type": "java.lang.Boolean",
      "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored.",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration",
      "defaultValue": false
    },
    {
      "name": "camel.component.google-calendar.client-factory",
      "type": "org.apache.camel.component.google.calendar.GoogleCalendarClientFactory",
      "description": "To use the GoogleCalendarClientFactory as factory for creating the client. Will by default use BatchGoogleCalendarClientFactory. The option is a org.apache.camel.component.google.calendar.GoogleCalendarClientFactory type.",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar.client-id",
      "type": "java.lang.String",
      "description": "Client ID of the calendar application",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar.client-secret",
      "type": "java.lang.String",
      "description": "Client secret of the calendar application",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar.configuration",
      "type": "org.apache.camel.component.google.calendar.GoogleCalendarConfiguration",
      "description": "To use the shared configuration. The option is a org.apache.camel.component.google.calendar.GoogleCalendarConfiguration type.",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar.customizer.enabled",
      "type": "java.lang.Boolean",
      "sourceType": "org.apache.camel.spring.boot.ComponentConfigurationPropertiesCommon$CustomizerProperties"
    },
    {
      "name": "camel.component.google-calendar.delegate",
      "type": "java.lang.String",
      "description": "Delegate for wide-domain service account",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar.email-address",
      "type": "java.lang.String",
      "description": "The emailAddress of the Google Service Account.",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar.enabled",
      "type": "java.lang.Boolean",
      "description": "Whether to enable auto configuration of the google-calendar component. This is enabled by default.",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar.lazy-start-producer",
      "type": "java.lang.Boolean",
      "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing.",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration",
      "defaultValue": false
    },
    {
      "name": "camel.component.google-calendar.p12-file-name",
      "type": "java.lang.String",
      "description": "The name of the p12 file which has the private key to use with the Google Service Account.",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar.refresh-token",
      "type": "java.lang.String",
      "description": "OAuth 2 refresh token. Using this, the Google Calendar component can obtain a new accessToken whenever the current one expires - a necessity if the application is long-lived.",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar.scopes",
      "type": "java.util.List<java.lang.String>",
      "description": "Specifies the level of permissions you want a calendar application to have to a user account. You can separate multiple scopes by comma. See https:\/\/developers.google.com\/google-apps\/calendar\/auth for more info.",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar.service-account-key",
      "type": "java.lang.String",
      "description": "Service account key in json format to authenticate an application as a service account. Accept base64 adding the prefix base64:",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    },
    {
      "name": "camel.component.google-calendar.user",
      "type": "java.lang.String",
      "description": "The email address of the user the application is trying to impersonate in the service account flow",
      "sourceType": "org.apache.camel.component.google.calendar.springboot.GoogleCalendarComponentConfiguration"
    }
  ],
  "hints": []
}