{"properties": [
  {
    "name": "error.path",
    "type": "java.lang.String",
    "description": "Path of the error controller.",
    "deprecation": {
      "replacement": "server.error.path"
    }
  },
  {
    "name": "server.error.whitelabel.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable the default error page displayed in browsers in case of a server error.",
    "defaultValue": true
  },
  {
    "name": "spring.aop.auto",
    "type": "java.lang.Boolean",
    "description": "Add @EnableAspectJAutoProxy.",
    "defaultValue": true
  },
  {
    "name": "spring.aop.proxy-target-class",
    "type": "java.lang.Boolean",
    "description": "Whether subclass-based (CGLIB) proxies are to be created (true) as opposed to standard Java interface-based proxies (false).",
    "defaultValue": false
  },
  {
    "name": "spring.application.admin.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable admin features for the application.",
    "defaultValue": false
  },
  {
    "name": "spring.application.admin.jmx-name",
    "type": "java.lang.String",
    "description": "JMX name of the application admin MBean.",
    "defaultValue": "org.springframework.boot:type=Admin,name=SpringApplication"
  },
  {
    "name": "spring.autoconfigure.exclude",
    "type": "java.util.List<java.lang.Class>",
    "description": "Auto-configuration classes to exclude."
  },
  {
    "name": "spring.batch.job.enabled",
    "type": "java.lang.Boolean",
    "description": "Execute all Spring Batch jobs in the context on startup.",
    "defaultValue": true
  },
  {
    "name": "spring.dao.exceptiontranslation.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable the PersistenceExceptionTranslationPostProcessor.",
    "defaultValue": true
  },
  {
    "name": "spring.datasource.jmx-enabled",
    "type": "java.lang.Boolean",
    "description": "Enable JMX support (if provided by the underlying pool).",
    "defaultValue": false
  },
  {
    "name": "spring.data.couchbase.repositories.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable Couchbase repositories.",
    "defaultValue": true
  },
  {
    "name": "spring.data.elasticsearch.repositories.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable Elasticsearch repositories.",
    "defaultValue": true
  },
  {
    "name": "spring.data.jpa.repositories.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable JPA repositories.",
    "defaultValue": true
  },
  {
    "name": "spring.data.mongodb.repositories.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable Mongo repositories.",
    "defaultValue": true
  },
  {
    "name": "spring.data.neo4j.open-in-view",
    "type": "java.lang.Boolean",
    "description": "Register OpenSessionInViewInterceptor. Binds a Neo4j Session to the thread for the entire processing of the request.",
    "defaultValue": false
  },
  {
    "name": "spring.data.neo4j.repositories.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable Neo4j repositories.",
    "defaultValue": true
  },
  {
    "name": "spring.data.redis.repositories.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable Redis repositories.",
    "defaultValue": true
  },
  {
    "name": "spring.data.solr.repositories.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable Solr repositories.",
    "defaultValue": true
  },
  {
    "name": "spring.elasticsearch.jest.uris",
    "defaultValue": ["http://localhost:9200"]
  },
  {
    "name": "spring.http.encoding.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable http encoding support.",
    "defaultValue": true
  },
  {
  	"name": "spring.http.converters.preferred-json-mapper",
  	"type": "java.lang.String",
  	"description": "Preferred JSON mapper to use for HTTP message conversion. Set to \"gson\" to force the use of Gson when both it and Jackson are on the classpath."
  },
  {
    "name": "spring.jmx.default-domain",
    "type": "java.lang.String",
    "description": "JMX domain name."
  },
  {
    "name": "spring.jmx.enabled",
    "type": "java.lang.Boolean",
    "description": "Expose management beans to the JMX domain.",
    "defaultValue": true
  },
  {
    "name": "spring.jmx.server",
    "type": "java.lang.String",
    "description": "MBeanServer bean name.",
    "defaultValue": "mbeanServer"
  },
  {
    "name": "spring.jpa.open-in-view",
    "type": "java.lang.Boolean",
    "description": "Register OpenEntityManagerInViewInterceptor. Binds a JPA EntityManager to the thread for the entire processing of the request.",
    "defaultValue": true
  },
  {
    "name": "spring.jta.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable JTA support.",
    "defaultValue": true
  },
  {
    "name": "spring.jta.bitronix.properties.allow-multiple-lrc",
    "description": "Allow multiple LRC resources to be enlisted into the same transaction.",
    "defaultValue": false
  },
  {
    "name": "spring.jta.bitronix.properties.asynchronous2-pc",
    "description": "Enable asynchronously execution of two phase commit.",
    "defaultValue": false
  },
  {
    "name": "spring.jta.bitronix.properties.background-recovery-interval",
    "description": "Interval in minutes at which to run the recovery process in the background.",
    "defaultValue": 1,
    "deprecation": {
      "replacement": "spring.jta.bitronix.properties.background-recovery-interval-seconds"
    }
  },
  {
    "name": "spring.jta.bitronix.properties.background-recovery-interval-seconds",
    "description": "Interval in seconds at which to run the recovery process in the background.",
    "defaultValue": 60
  },
  {
    "name": "spring.jta.bitronix.properties.current-node-only-recovery",
    "description": "Recover only the current node. Should be enabled if you run multiple instances of the transaction manager on the same JMS and JDBC resources.",
    "defaultValue": true
  },
  {
    "name": "spring.jta.bitronix.properties.debug-zero-resource-transaction",
    "description": "Log the creation and commit call stacks of transactions executed without a single enlisted resource.",
    "defaultValue": false
  },
  {
    "name": "spring.jta.bitronix.properties.default-transaction-timeout",
    "description": "Default transaction timeout in seconds.",
    "defaultValue": 60
  },
  {
    "name": "spring.jta.bitronix.properties.disable-jmx",
    "description": "Enable JMX support.",
    "defaultValue": false
  },
  {
    "name": "spring.jta.bitronix.properties.exception-analyzer",
    "description": "Set the fully qualified name of the exception analyzer implementation to use."
  },
  {
    "name": "spring.jta.bitronix.properties.filter-log-status",
    "description": "Enable filtering of logs so that only mandatory logs are written.",
    "defaultValue": false
  },
  {
    "name": "spring.jta.bitronix.properties.force-batching-enabled",
    "description": " Set if disk forces are batched.",
    "defaultValue": true
  },
  {
    "name": "spring.jta.bitronix.properties.forced-write-enabled",
    "description": "Set if logs are forced to disk.",
    "defaultValue": true
  },
  {
    "name": "spring.jta.bitronix.properties.graceful-shutdown-interval",
    "description": "Maximum amount of seconds the TM will wait for transactions to get done before aborting them at shutdown time.",
    "defaultValue": 60
  },
  {
    "name": "spring.jta.bitronix.properties.jndi-transaction-synchronization-registry-name",
    "description": "JNDI name of the TransactionSynchronizationRegistry."
  },
  {
    "name": "spring.jta.bitronix.properties.jndi-user-transaction-name",
    "description": "JNDI name of the UserTransaction."
  },
  {
    "name": "spring.jta.bitronix.properties.journal",
    "description": "Name of the journal. Can be 'disk', 'null' or a class name.",
    "defaultValue": "disk"
  },
  {
    "name": "spring.jta.bitronix.properties.log-part1-filename",
    "description": "Name of the first fragment of the journal.",
    "defaultValue": "btm1.tlog"
  },
  {
    "name": "spring.jta.bitronix.properties.log-part2-filename",
    "description": "Name of the second fragment of the journal.",
    "defaultValue": "btm2.tlog"
  },
  {
    "name": "spring.jta.bitronix.properties.max-log-size-in-mb",
    "description": "Maximum size in megabytes of the journal fragments.",
    "defaultValue": 2
  },
  {
    "name": "spring.jta.bitronix.properties.resource-configuration-filename",
    "description": "ResourceLoader configuration file name."
  },
  {
    "name": "spring.jta.bitronix.properties.server-id",
    "description": "ASCII ID that must uniquely identify this TM instance. Default to the machine's IP address."
  },
  {
    "name": "spring.jta.bitronix.properties.skip-corrupted-logs",
    "description": "Skip corrupted transactions log entries. Use only at last resort when all you have to recover is a pair of corrupted files.",
    "defaultValue": false
  },
  {
    "name": "spring.jta.bitronix.properties.warn-about-zero-resource-transaction",
    "description": "Log a warning for transactions executed without a single enlisted resource.",
    "defaultValue": true
  },
  {
    "name": "spring.mobile.devicedelegatingviewresolver.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable device view resolver.",
    "defaultValue": false
  },
  {
    "name": "spring.mobile.sitepreference.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable SitePreferenceHandler.",
    "defaultValue": true
  },
  {
    "name": "spring.mvc.favicon.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable resolution of favicon.ico.",
    "defaultValue": true
  },
  {
    "name": "spring.mvc.formcontent.putfilter.enabled",
    "type": "java.lang.Boolean",
    "description": "Enable Spring's HttpPutFormContentFilter.",
    "defaultValue": true
  },
  {
    "name": "spring.rabbitmq.dynamic",
    "type": "java.lang.Boolean",
    "description": "Create an AmqpAdmin bean.",
    "defaultValue": true
  },
  {
    "name": "spring.social.auto-connection-views",
    "type": "java.lang.Boolean",
    "description": "Enable the connection status view for supported providers.",
    "defaultValue": false
  }
],"hints": [
  {
    "name": "liquibase.change-log",
    "providers": [
      {
        "name": "handle-as",
        "parameters": {
          "target": "org.springframework.core.io.Resource"
        }
      }
    ]
  },
  {
    "name": "server.jsp-servlet.class-name",
    "providers": [
      {
        "name": "class-reference",
        "parameters": {
          "target": "javax.servlet.http.HttpServlet"
        }
      }
    ]
  },
  {
    "name": "spring.cache.jcache.provider",
    "providers": [
      {
        "name": "class-reference",
        "parameters": {
          "target": "javax.cache.spi.CachingProvider"
        }
      }
    ]
  },
  {
    "name": "spring.data.cassandra.schema-action",
    "providers": [
      {
        "name": "handle-as",
        "parameters": {
          "target": "org.springframework.data.cassandra.config.SchemaAction"
        }
      }
    ]
  },
  {
    "name": "spring.data.mongodb.field-naming-strategy",
    "providers": [
      {
        "name": "class-reference",
        "parameters": {
          "target": "org.springframework.data.mapping.model.FieldNamingStrategy"
        }
      }
    ]
  },
  {
    "name": "spring.data.neo4j.compiler",
    "providers": [
      {
        "name": "class-reference",
        "parameters": {
          "target": "org.neo4j.ogm.compiler.Compiler"
        }
      }
    ]
  },
  {
    "name": "spring.datasource.data",
    "providers": [
      {
        "name": "handle-as",
        "parameters": {
          "target": "java.util.List<org.springframework.core.io.Resource>"
        }
      }
    ]
  },
  {
    "name": "spring.datasource.driver-class-name",
    "providers": [
      {
        "name": "class-reference",
        "parameters": {
          "target": "java.sql.Driver"
        }
      }
    ]
  },
  {
    "name": "spring.datasource.schema",
    "providers": [
      {
        "name": "handle-as",
        "parameters": {
          "target": "java.util.List<org.springframework.core.io.Resource>"
        }
      }
    ]
  },
  {
    "name": "spring.datasource.xa.data-source-class-name",
    "providers": [
      {
        "name": "class-reference",
        "parameters": {
          "target": "javax.sql.XADataSource"
        }
      }
    ]
  },
  {
    "name": "spring.kafka.consumer.auto-offset-reset",
    "values": [
      {
        "value": "earliest",
        "description": "Automatically reset the offset to the earliest offset."
      },
      {
        "value": "latest",
        "description": "Automatically reset the offset to the latest offset."
      },
      {
        "value": "none",
        "description": "Throw exception to the consumer if no previous offset is found for the consumer's group."
      },
      {
        "value": "exception",
        "description": "Throw exception to the consumer."
      }
    ],
    "providers": [
      {
        "name": "any"
      }
    ]
  },
  {
    "name": "spring.kafka.consumer.key-deserializer",
    "providers": [
      {
        "name": "handle-as",
        "parameters": {
          "target": "org.apache.kafka.common.serialization.Deserializer"
        }
      }
    ]
  },
  {
    "name": "spring.kafka.consumer.value-deserializer",
    "providers": [
      {
        "name": "handle-as",
        "parameters": {
          "target": "org.apache.kafka.common.serialization.Deserializer"
        }
      }
    ]
  },
  {
    "name": "spring.kafka.producer.key-serializer",
    "providers": [
      {
        "name": "handle-as",
        "parameters": {
          "target": "org.apache.kafka.common.serialization.Serializer"
        }
      }
    ]
  },
  {
    "name": "spring.kafka.producer.value-serializer",
    "providers": [
      {
        "name": "handle-as",
        "parameters": {
          "target": "org.apache.kafka.common.serialization.Serializer"
        }
      }
    ]
  },
  {
    "name": "spring.http.converters.preferred-json-mapper",
    "values": [
      {
        "value": "gson"
      },
      {
        "value": "jackson"
      }
    ],
    "providers": [
      {
        "name": "any"
      }
    ]
  },
  {
    "name": "spring.jmx.server",
    "providers": [
      {
        "name": "spring-bean-reference",
        "parameters": {
          "target": "javax.management.MBeanServer"
        }
      }
    ]
  },
  {
    "name": "spring.jpa.hibernate.ddl-auto",
    "values": [
      {
        "value": "none",
        "description": "Disable DDL handling."
      },
      {
        "value": "validate",
        "description": "Validate the schema, make no changes to the database."
      },
      {
        "value": "update",
        "description": "Update the schema if necessary."
      },
      {
        "value": "create",
        "description": "Create the schema and destroy previous data."
      },
      {
        "value": "create-drop",
        "description": "Create and then destroy the schema at the end of the session."
      }
    ]
  },
  {
    "name": "spring.jpa.hibernate.naming.implicit-strategy",
    "providers": [
      {
        "name": "class-reference",
        "parameters": {
          "target": "org.hibernate.boot.model.naming.ImplicitNamingStrategy"
        }
      }
    ]
  },
  {
    "name": "spring.jpa.hibernate.naming.physical-strategy",
    "providers": [
      {
        "name": "class-reference",
        "parameters": {
          "target": "org.hibernate.boot.model.naming.PhysicalNamingStrategy"
        }
      }
    ]
  },
  {
    "name": "spring.jpa.hibernate.naming.strategy",
    "providers": [
      {
        "name": "class-reference",
        "parameters": {
          "target": "org.hibernate.cfg.NamingStrategy"
        }
      }
    ]
  }
]}

