This repository contains the auto-reconfiguration functionality for Spring and Play Framework auto-reconfiguration. It also contains a replacement Play Framework JPA Plugin that can be properly auto-reconfigured.
Auto-reconfiguration consists of three parts.
- it adds the
cloud
profile to Spring's list of active profiles - it exposes all of the properties contributed by Cloud Foundry as a
PropertySource
in theApplicationContext
- it re-writes the bean definitions of various types to connect automatically with services bound to the application.
The types that are rewritten are as follows:
Bean Type | Service Type |
---|---|
javax.sql.DataSource |
Relational Data Services (e.g. ClearDB, ElephantSQL) |
org.springframework.amqp.rabbit.connection.ConnectionFactory |
RabbitMQ Service (e.g. CloudAMQP) |
org.springframework.data.mongodb.MongoDbFactory |
Mongo Service (e.g. MongoLab) |
org.springframework.data.redis.connection.RedisConnectionFactory |
Redis Service (e.g. Redis Cloud) |
org.springframework.orm.hibernate3.AbstractSessionFactoryBean |
Relational Data Services (e.g. ClearDB, ElephantSQL) |
org.springframework.orm.hibernate4.LocalSessionFactoryBean |
Relational Data Services (e.g. ClearDB, ElephantSQL) |
org.springframework.orm.jpa.AbstractEntityManagerFactoryBean |
Relational Data Services (e.g. ClearDB, ElephantSQL) |
More information about Java application development on Cloud Foundry can be found here:
Pull requests are welcome; see the contributor guidelines for details.
This buildpack is released under version 2.0 of the Apache License.