├── .gitattributes
├── .github
├── CODEOWNERS
├── CODE_OF_CONDUCT.md
├── ISSUE_TEMPLATE.md
├── ISSUE_TEMPLATE
│ ├── bug_report.md
│ ├── feature_request.md
│ └── question-query-template.md
├── PULL_REQUEST_TEMPLATE.md
├── dependabot.yml
└── workflows
│ ├── .linkspector.yml
│ ├── ci.yml
│ ├── codeql-analysis.yml
│ ├── markdown-link-check.yml
│ └── sync-label-from-azsdk-repo.yml
├── .gitignore
├── CONTRIBUTING.md
├── LICENSE.md
├── README.md
├── aad
├── spring-cloud-azure-starter-active-directory-b2c
│ ├── aad-b2c-resource-server
│ │ ├── README.md
│ │ ├── docs
│ │ │ ├── image-add-application-roles.png
│ │ │ ├── image-add-delegated-permissions.png
│ │ │ ├── image-add-user-flow.png
│ │ │ ├── image-configuration-application-roles.png
│ │ │ ├── image-consent-application-and-delegated-permissions.png
│ │ │ ├── image-expose-an-api.png
│ │ │ ├── image-final-configuration.png
│ │ │ ├── image-select-a-user-flow-type.png
│ │ │ ├── image-selected-application.png
│ │ │ ├── image-setting-relevant-content.png
│ │ │ └── image-user-flow-finally.png
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── aad
│ │ │ │ └── b2c
│ │ │ │ ├── AadB2cResourceServerSampleApplication.java
│ │ │ │ ├── controller
│ │ │ │ └── WebController.java
│ │ │ │ └── security
│ │ │ │ └── WebSecurityConfiguration.java
│ │ │ └── resources
│ │ │ └── application.yml
│ └── aad-b2c-web-application
│ │ ├── README.md
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── sample
│ │ │ └── aad
│ │ │ └── b2c
│ │ │ ├── AadB2cOidcSampleApplication.java
│ │ │ ├── controller
│ │ │ └── WebController.java
│ │ │ └── security
│ │ │ └── WebSecurityConfiguration.java
│ │ └── resources
│ │ ├── application.yml
│ │ └── templates
│ │ └── home.html
├── spring-cloud-azure-starter-active-directory
│ ├── aad-resource-server-by-filter-stateless
│ │ ├── README.md
│ │ ├── docs
│ │ │ └── demo.webp
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── aad
│ │ │ │ │ ├── AadStatelessBackendSampleApplication.java
│ │ │ │ │ ├── controller
│ │ │ │ │ └── MainController.java
│ │ │ │ │ └── security
│ │ │ │ │ └── AadWebSecurityConfig.java
│ │ │ │ └── resources
│ │ │ │ ├── application.yml
│ │ │ │ └── static
│ │ │ │ └── index.html
│ │ └── terraform
│ │ │ ├── README.md
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ └── setup_env.sh
│ ├── aad-resource-server-by-filter
│ │ ├── README.md
│ │ ├── docs
│ │ │ ├── add-permissions.png
│ │ │ ├── application-registration-1.png
│ │ │ ├── application-registration-2.png
│ │ │ ├── create-secret.png
│ │ │ ├── grant-admin-consent.png
│ │ │ ├── secret-value.png
│ │ │ └── tokens-to-accept.png
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── aad
│ │ │ │ │ ├── AadIntegrationSpringBootAutoconfigureSampleApplication.java
│ │ │ │ │ ├── controller
│ │ │ │ │ └── TodoListController.java
│ │ │ │ │ ├── model
│ │ │ │ │ └── TodoItem.java
│ │ │ │ │ └── security
│ │ │ │ │ └── WebSecurityConfig.java
│ │ │ │ └── resources
│ │ │ │ ├── application.yml
│ │ │ │ ├── static
│ │ │ │ └── App
│ │ │ │ │ ├── Scripts
│ │ │ │ │ ├── app.js
│ │ │ │ │ ├── homeCtrl.js
│ │ │ │ │ ├── indexCtrl.js
│ │ │ │ │ ├── msal.js
│ │ │ │ │ ├── msalModule.js
│ │ │ │ │ ├── todoListCtrl.js
│ │ │ │ │ ├── todoListSvc.js
│ │ │ │ │ └── userDataCtrl.js
│ │ │ │ │ └── Views
│ │ │ │ │ ├── Home.html
│ │ │ │ │ ├── TodoList.html
│ │ │ │ │ └── UserData.html
│ │ │ │ └── templates
│ │ │ │ └── index.html
│ │ └── terraform
│ │ │ ├── README.md
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ └── setup_env.sh
│ ├── aad-web-application-and-resource-server
│ │ ├── README.md
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── aad
│ │ │ │ ├── AadOAuth2WebAppAndResourceServerSampleApplication.java
│ │ │ │ ├── config
│ │ │ │ └── WebClientConfig.java
│ │ │ │ ├── controller
│ │ │ │ ├── webapi
│ │ │ │ │ └── WebApiController.java
│ │ │ │ └── webapp
│ │ │ │ │ ├── AuthorityController.java
│ │ │ │ │ ├── CallWebApiController.java
│ │ │ │ │ ├── ClientController.java
│ │ │ │ │ ├── OnDemandClientController.java
│ │ │ │ │ └── RoleController.java
│ │ │ │ ├── security
│ │ │ │ ├── AadConditionalAccessFilter.java
│ │ │ │ └── AadWebApplicationAndResourceServerConfig.java
│ │ │ │ └── utils
│ │ │ │ └── JsonMapper.java
│ │ │ └── resources
│ │ │ ├── application.yml
│ │ │ └── templates
│ │ │ └── index.html
│ └── web-client-access-resource-server
│ │ ├── README.md
│ │ ├── aad-resource-server-obo
│ │ ├── README.md
│ │ ├── docs
│ │ │ ├── image-aad-obo-flow-and-client-credential-flow.png
│ │ │ ├── image-add-grant-admin-consent.png
│ │ │ ├── image-add-permissions.png
│ │ │ ├── image-resource-server-obo-add-scope.png
│ │ │ └── image-select-myapis.png
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── aad
│ │ │ │ ├── AadOAuth2ResourceServerOboSampleApplication.java
│ │ │ │ ├── configuration
│ │ │ │ └── AadSampleConfiguration.java
│ │ │ │ └── controller
│ │ │ │ └── SampleController.java
│ │ │ └── resources
│ │ │ └── application.yml
│ │ ├── aad-resource-server
│ │ ├── README.md
│ │ ├── docs
│ │ │ ├── image-add-a-scope.png
│ │ │ ├── image-add-custom-apis-to-webapp.png
│ │ │ ├── image-add-resource-server.png
│ │ │ ├── image-creat-secrets-api.png
│ │ │ ├── image-expose-api.png
│ │ │ ├── image-final.png
│ │ │ ├── image-granted-permission.png
│ │ │ ├── image-protal-manage.png
│ │ │ ├── image-register-a-web-api.png
│ │ │ └── image-set-application-id-url.png
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── aad
│ │ │ │ ├── AadOAuth2ResourceServerSampleApplication.java
│ │ │ │ └── controller
│ │ │ │ └── HomeController.java
│ │ │ └── resources
│ │ │ └── application.yml
│ │ ├── aad-web-application
│ │ ├── README.md
│ │ ├── docs
│ │ │ ├── image-add-a-platform.png
│ │ │ ├── image-add-grant-admin-consent.png
│ │ │ ├── image-add-permissions.png
│ │ │ ├── image-create-app-secrets.png
│ │ │ ├── image-permissions.png
│ │ │ ├── image-portal-manage.png
│ │ │ ├── image-register-a-web-app.png
│ │ │ ├── image-request-api-permissions.png
│ │ │ ├── image-secret-value.png
│ │ │ └── image-select-myapis.png
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── aad
│ │ │ │ ├── AadOAuth2WebAppSampleApplication.java
│ │ │ │ ├── config
│ │ │ │ └── WebClientConfig.java
│ │ │ │ ├── controller
│ │ │ │ ├── AuthorityController.java
│ │ │ │ ├── ClientController.java
│ │ │ │ ├── OnDemandClientController.java
│ │ │ │ ├── RoleController.java
│ │ │ │ └── WebApiController.java
│ │ │ │ ├── security
│ │ │ │ ├── AadConditionalAccessFilter.java
│ │ │ │ └── AadWebApplicationConfig.java
│ │ │ │ └── utils
│ │ │ │ └── JsonMapper.java
│ │ │ └── resources
│ │ │ ├── application.yml
│ │ │ └── templates
│ │ │ └── index.html
│ │ ├── pom.xml
│ │ ├── run_all.ps1
│ │ ├── run_all.sh
│ │ └── terraform
│ │ ├── kill-port.ps1
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ └── setup_env.sh
└── spring-security
│ ├── README.md
│ ├── docs
│ ├── README.md
│ ├── homework-answers.md
│ ├── reactive
│ │ └── webflux
│ │ │ └── oauth2
│ │ │ └── spring-cloud-gateway.md
│ └── servlet
│ │ └── oauth2
│ │ ├── client-access-multiple-resource-server.md
│ │ ├── client-access-resource-server.md
│ │ ├── login-authenticate-using-private-key-jwt.md
│ │ ├── login.md
│ │ ├── resource-server-check-permissions-by-claims-in-access-token.md
│ │ └── resource-server-support-on-behalf-of-flow.md
│ ├── reactive
│ └── webflux
│ │ └── oauth2
│ │ └── spring-cloud-gateway
│ │ ├── README.md
│ │ ├── client
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── activedirectory
│ │ │ │ └── reactive
│ │ │ │ └── webflux
│ │ │ │ └── oauth2
│ │ │ │ └── gateway
│ │ │ │ └── client
│ │ │ │ ├── ClientApplication.java
│ │ │ │ ├── configuration
│ │ │ │ ├── ApplicationConfiguration.java
│ │ │ │ └── SecurityConfiguration.java
│ │ │ │ └── controller
│ │ │ │ ├── HomeController.java
│ │ │ │ ├── ResourceServer1Controller.java
│ │ │ │ └── ResourceServer2Controller.java
│ │ │ └── resources
│ │ │ └── application.yml
│ │ ├── gateway
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── activedirectory
│ │ │ │ └── reactive
│ │ │ │ └── webflux
│ │ │ │ └── oauth2
│ │ │ │ └── gateway
│ │ │ │ └── gateway
│ │ │ │ ├── GatewayApplication.java
│ │ │ │ └── configuration
│ │ │ │ ├── ApplicationConfiguration.java
│ │ │ │ └── SecurityConfiguration.java
│ │ │ └── resources
│ │ │ └── application.yml
│ │ ├── pom.xml
│ │ ├── resource-server-1
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── activedirectory
│ │ │ │ └── oauth2
│ │ │ │ └── gateway
│ │ │ │ └── resourceserver1
│ │ │ │ ├── ResourceServer1Application.java
│ │ │ │ ├── configuration
│ │ │ │ ├── ApplicationConfiguration.java
│ │ │ │ └── SecurityConfiguration.java
│ │ │ │ └── controller
│ │ │ │ └── HomeController.java
│ │ │ └── resources
│ │ │ └── application.yml
│ │ ├── resource-server-2
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── activedirectory
│ │ │ │ └── reactive
│ │ │ │ └── webflux
│ │ │ │ └── oauth2
│ │ │ │ └── gateway
│ │ │ │ └── resourceserver2
│ │ │ │ ├── ResourceServer2Application.java
│ │ │ │ ├── configuration
│ │ │ │ ├── ApplicationConfiguration.java
│ │ │ │ └── SecurityConfiguration.java
│ │ │ │ └── controller
│ │ │ │ └── HomeController.java
│ │ │ └── resources
│ │ │ └── application.yml
│ │ ├── run_all.ps1
│ │ ├── run_all.sh
│ │ └── terraform
│ │ ├── kill-port.ps1
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ └── setup_env.sh
│ └── servlet
│ └── oauth2
│ ├── client-access-multiple-resource-server
│ ├── README.md
│ ├── client
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── active
│ │ │ │ └── directory
│ │ │ │ └── oauth2
│ │ │ │ └── servlet
│ │ │ │ └── sample03
│ │ │ │ └── client
│ │ │ │ ├── ClientApplication.java
│ │ │ │ ├── configuration
│ │ │ │ ├── ApplicationConfiguration.java
│ │ │ │ └── WebSecurityConfiguration.java
│ │ │ │ └── controller
│ │ │ │ ├── HomeController.java
│ │ │ │ ├── ResourceServer1Controller.java
│ │ │ │ ├── ResourceServer2Controller.java
│ │ │ │ └── ResourceServerAllController.java
│ │ │ └── resources
│ │ │ └── application.yml
│ ├── pom.xml
│ ├── resource-server-1
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── active
│ │ │ │ └── directory
│ │ │ │ └── oauth2
│ │ │ │ └── servlet
│ │ │ │ └── sample03
│ │ │ │ └── resource
│ │ │ │ └── server1
│ │ │ │ ├── ResourceServerApplication.java
│ │ │ │ ├── configuration
│ │ │ │ ├── ApplicationConfiguration.java
│ │ │ │ └── WebSecurityConfiguration.java
│ │ │ │ └── controller
│ │ │ │ └── HomeController.java
│ │ │ └── resources
│ │ │ └── application.yml
│ ├── resource-server-2
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── active
│ │ │ │ └── directory
│ │ │ │ └── oauth2
│ │ │ │ └── servlet
│ │ │ │ └── sample03
│ │ │ │ └── resource
│ │ │ │ └── server2
│ │ │ │ ├── ResourceServerApplication.java
│ │ │ │ ├── configuration
│ │ │ │ ├── ApplicationConfiguration.java
│ │ │ │ └── WebSecurityConfiguration.java
│ │ │ │ └── controller
│ │ │ │ └── HomeController.java
│ │ │ └── resources
│ │ │ └── application.yml
│ ├── run_all.ps1
│ ├── run_all.sh
│ └── terraform
│ │ ├── kill-port.ps1
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ └── setup_env.sh
│ ├── client-access-resource-server
│ ├── README.md
│ ├── client
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── active
│ │ │ │ └── directory
│ │ │ │ └── oauth2
│ │ │ │ └── servlet
│ │ │ │ └── sample01
│ │ │ │ └── client
│ │ │ │ ├── ClientApplication.java
│ │ │ │ ├── configuration
│ │ │ │ ├── ApplicationConfiguration.java
│ │ │ │ └── WebSecurityConfiguration.java
│ │ │ │ └── controller
│ │ │ │ ├── HomeController.java
│ │ │ │ └── ResourceServerController.java
│ │ │ └── resources
│ │ │ └── application.yml
│ ├── pom.xml
│ ├── resource-server
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── active
│ │ │ │ └── directory
│ │ │ │ └── oauth2
│ │ │ │ └── servlet
│ │ │ │ └── sample01
│ │ │ │ └── resource
│ │ │ │ └── server
│ │ │ │ ├── ResourceServerApplication.java
│ │ │ │ ├── configuration
│ │ │ │ ├── ApplicationConfiguration.java
│ │ │ │ └── WebSecurityConfiguration.java
│ │ │ │ └── controller
│ │ │ │ └── HomeController.java
│ │ │ └── resources
│ │ │ └── application.yml
│ ├── run_all.ps1
│ ├── run_all.sh
│ └── terraform
│ │ ├── kill-port.ps1
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ └── setup_env.sh
│ ├── login-authenticate-using-private-key-jwt
│ ├── README.md
│ ├── pom.xml
│ └── src
│ │ ├── main
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── reactive
│ │ │ │ └── servlet
│ │ │ │ └── oauth2
│ │ │ │ └── login
│ │ │ │ └── jwt
│ │ │ │ ├── SampleApplication.java
│ │ │ │ ├── azure
│ │ │ │ └── activedirectory
│ │ │ │ │ ├── AzureActiveDirectoryAssertionException.java
│ │ │ │ │ ├── AzureActiveDirectoryCertificateSignedJwtAssertionFactory.java
│ │ │ │ │ └── AzureActiveDirectoryJwtClientAuthenticationParametersConverter.java
│ │ │ │ ├── configuration
│ │ │ │ └── WebSecurityConfiguration.java
│ │ │ │ └── controller
│ │ │ │ └── HomeController.java
│ │ └── resources
│ │ │ └── application.yml
│ │ └── test
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── sample
│ │ │ └── reactive
│ │ │ └── servlet
│ │ │ └── oauth2
│ │ │ └── login
│ │ │ └── jwt
│ │ │ ├── azure
│ │ │ └── activedirectory
│ │ │ │ └── AzureActiveDirectoryCertificateSignedAssertionFactoryTest.java
│ │ │ └── configuration
│ │ │ └── WebSecurityConfigurationTest.java
│ │ └── resources
│ │ ├── encrypted-private-key-and-certificate.pem
│ │ └── encrypted-private-key-and-certificate.pfx
│ ├── login
│ ├── README.md
│ ├── pom.xml
│ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── active
│ │ │ │ └── directory
│ │ │ │ └── oauth2
│ │ │ │ └── servlet
│ │ │ │ └── sample00
│ │ │ │ ├── HomeController.java
│ │ │ │ └── SampleApplication.java
│ │ │ └── resources
│ │ │ └── application.yml
│ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ └── setup_env.sh
│ ├── resource-server-check-permissions-by-claims-in-access-token
│ ├── README.md
│ ├── client
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── active
│ │ │ │ └── directory
│ │ │ │ └── oauth2
│ │ │ │ └── servlet
│ │ │ │ └── sample02
│ │ │ │ └── client
│ │ │ │ ├── ClientApplication.java
│ │ │ │ ├── configuration
│ │ │ │ ├── ApplicationConfiguration.java
│ │ │ │ └── WebSecurityConfiguration.java
│ │ │ │ └── controller
│ │ │ │ ├── CheckPermissionByScopeController.java
│ │ │ │ ├── HomeController.java
│ │ │ │ └── ResourceServerController.java
│ │ │ └── resources
│ │ │ └── application.yml
│ ├── pom.xml
│ ├── resource-server
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── active
│ │ │ │ └── directory
│ │ │ │ └── oauth2
│ │ │ │ └── servlet
│ │ │ │ └── sample02
│ │ │ │ └── resource
│ │ │ │ └── server
│ │ │ │ ├── ResourceServerApplication.java
│ │ │ │ ├── configuration
│ │ │ │ ├── ApplicationConfiguration.java
│ │ │ │ └── WebSecurityConfiguration.java
│ │ │ │ └── controller
│ │ │ │ ├── CheckPermissionByRoleController.java
│ │ │ │ ├── CheckPermissionByScopeController.java
│ │ │ │ └── HomeController.java
│ │ │ └── resources
│ │ │ └── application.yml
│ ├── run_all.ps1
│ ├── run_all.sh
│ └── terraform
│ │ ├── kill-port.ps1
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ └── setup_env.sh
│ └── resource-server-support-on-behalf-of-flow
│ ├── README.md
│ ├── client
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── sample
│ │ │ └── active
│ │ │ └── directory
│ │ │ └── oauth2
│ │ │ └── servlet
│ │ │ └── sample04
│ │ │ └── client
│ │ │ ├── ClientApplication.java
│ │ │ ├── configuration
│ │ │ ├── ApplicationConfiguration.java
│ │ │ └── WebSecurityConfiguration.java
│ │ │ └── controller
│ │ │ ├── HomeController.java
│ │ │ └── ResourceServer1Controller.java
│ │ └── resources
│ │ └── application.yml
│ ├── pom.xml
│ ├── resource-server-1
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── sample
│ │ │ └── active
│ │ │ └── directory
│ │ │ └── oauth2
│ │ │ └── servlet
│ │ │ └── sample04
│ │ │ └── resource
│ │ │ └── server1
│ │ │ ├── ResourceServerApplication.java
│ │ │ ├── configuration
│ │ │ ├── AadJwtBearerGrantRequestEntityConverter.java
│ │ │ ├── ApplicationConfiguration.java
│ │ │ └── WebSecurityConfiguration.java
│ │ │ └── controller
│ │ │ ├── HomeController.java
│ │ │ └── ResourceServer2Controller.java
│ │ └── resources
│ │ └── application.yml
│ ├── resource-server-2
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── sample
│ │ │ └── active
│ │ │ └── directory
│ │ │ └── oauth2
│ │ │ └── servlet
│ │ │ └── sample04
│ │ │ └── resource
│ │ │ └── server2
│ │ │ ├── ResourceServerApplication.java
│ │ │ ├── configuration
│ │ │ ├── ApplicationConfiguration.java
│ │ │ └── WebSecurityConfiguration.java
│ │ │ └── controller
│ │ │ └── HomeController.java
│ │ └── resources
│ │ └── application.yml
│ ├── run_all.ps1
│ ├── run_all.sh
│ └── terraform
│ ├── kill-port.ps1
│ ├── main.tf
│ ├── outputs.tf
│ ├── setup_env.ps1
│ └── setup_env.sh
├── appconfiguration
├── spring-cloud-azure-appconfiguration-config
│ ├── spring-cloud-azure-appconfiguration-config-convert-sample
│ │ ├── README.md
│ │ ├── spring-cloud-azure-appconfiguration-config-convert-sample-complete
│ │ │ ├── README.md
│ │ │ ├── pom.xml
│ │ │ └── src
│ │ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── sample
│ │ │ │ │ └── convert
│ │ │ │ │ ├── ConvertSampleApplication.java
│ │ │ │ │ ├── User.java
│ │ │ │ │ └── UserRepository.java
│ │ │ │ └── resources
│ │ │ │ └── bootstrap.properties
│ │ └── spring-cloud-azure-appconfiguration-config-convert-sample-initial
│ │ │ ├── README.md
│ │ │ ├── pom.xml
│ │ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── sample
│ │ │ │ └── convert
│ │ │ │ ├── ConvertSampleApplication.java
│ │ │ │ ├── User.java
│ │ │ │ └── UserRepository.java
│ │ │ └── resources
│ │ │ └── application.properties
│ └── spring-cloud-azure-appconfiguration-config-sample
│ │ ├── README.md
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── example
│ │ │ ├── AzureConfigApplication.java
│ │ │ ├── BootstrapConfiguration.java
│ │ │ ├── HelloController.java
│ │ │ └── MessageProperties.java
│ │ └── resources
│ │ ├── bootstrap.yaml
│ │ └── data
│ │ └── sample-data.json
├── spring-cloud-azure-feature-management-web
│ ├── spring-cloud-azure-feature-management-web-sample
│ │ ├── README.md
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ ├── FeatureFilter.java
│ │ │ │ ├── FeatureManagerWebApplication.java
│ │ │ │ ├── HelloController.java
│ │ │ │ ├── MessageProperties.java
│ │ │ │ ├── MyDisabledFeaturesHandler.java
│ │ │ │ ├── TestComponent.java
│ │ │ │ └── filters
│ │ │ │ ├── ClientFilter.java
│ │ │ │ └── Random.java
│ │ │ └── resources
│ │ │ ├── application.yml
│ │ │ ├── data
│ │ │ └── sample-data.yml
│ │ │ ├── static
│ │ │ └── css
│ │ │ │ └── main.css
│ │ │ └── templates
│ │ │ ├── BetaA.html
│ │ │ ├── BetaB.html
│ │ │ ├── privacy.html
│ │ │ └── welcome.html
│ └── spring-cloud-azure-targeting-filter-web-sample
│ │ ├── README.md
│ │ ├── images
│ │ ├── default-page.png
│ │ └── page-with-included-user-id.png
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── example
│ │ │ └── demo
│ │ │ ├── DemoApplication.java
│ │ │ ├── configuration
│ │ │ └── AppConfiguration.java
│ │ │ ├── controllers
│ │ │ └── HelloController.java
│ │ │ └── impl
│ │ │ └── TargetingContextImpl.java
│ │ └── resources
│ │ ├── application.yml
│ │ ├── data
│ │ └── sample-data.yml
│ │ ├── static
│ │ └── css
│ │ │ └── main.css
│ │ └── templates
│ │ └── welcome.html
├── spring-cloud-azure-feature-management
│ └── spring-cloud-azure-feature-management-sample
│ │ ├── README.md
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── example
│ │ │ ├── ConsoleApplication.java
│ │ │ └── Random.java
│ │ └── resources
│ │ ├── application.yml
│ │ └── data
│ │ └── sample-data.yml
├── spring-cloud-azure-starter-appconfiguration-config
│ ├── spring-cloud-azure-starter-appconfiguration-config-entraid-sample
│ │ ├── README.md
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── example
│ │ │ │ ├── AppConfigClientCustomizer.java
│ │ │ │ ├── AppConfiguration.java
│ │ │ │ ├── Application.java
│ │ │ │ ├── HelloController.java
│ │ │ │ └── MessageProperties.java
│ │ │ └── resources
│ │ │ ├── META-INF
│ │ │ └── spring.factories
│ │ │ └── bootstrap.properties
│ └── spring-cloud-azure-starter-appconfiguration-config-sample
│ │ ├── README.md
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ ├── java
│ │ └── example
│ │ │ ├── Application.java
│ │ │ ├── HelloController.java
│ │ │ └── MessageProperties.java
│ │ └── resources
│ │ └── bootstrap.properties
└── spring-cloud-azure-starter-appconfiguration
│ └── appconfiguration-client
│ ├── README.md
│ ├── pom.xml
│ ├── src
│ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── sample
│ │ │ └── appconfiguration
│ │ │ └── AppConfigurationClientApplication.java
│ │ └── resources
│ │ └── application.yml
│ └── terraform
│ ├── main.tf
│ ├── outputs.tf
│ ├── setup_env.ps1
│ ├── setup_env.sh
│ └── variables.tf
├── cache
├── .gitignore
├── spring-cloud-azure-redis-sample-passwordless
│ ├── README.md
│ ├── pom.xml
│ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── cache
│ │ │ │ ├── CachePasswordlessApplication.java
│ │ │ │ └── WebController.java
│ │ │ └── resources
│ │ │ └── application.yaml
│ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
└── spring-cloud-azure-redis-sample
│ ├── README.md
│ ├── pom.xml
│ ├── src
│ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── sample
│ │ │ └── cache
│ │ │ ├── CacheApplication.java
│ │ │ └── WebController.java
│ │ └── resources
│ │ └── application.yaml
│ └── terraform
│ ├── main.tf
│ ├── outputs.tf
│ ├── setup_env.ps1
│ ├── setup_env.sh
│ └── variables.tf
├── cosmos
├── .gitignore
├── azure-spring-data-cosmos
│ ├── cosmos-aad-sample
│ │ ├── README.md
│ │ ├── media
│ │ │ └── aad-app.png
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── data
│ │ │ │ └── cosmos
│ │ │ │ └── example
│ │ │ │ ├── common
│ │ │ │ └── User.java
│ │ │ │ └── quickstart
│ │ │ │ └── sync
│ │ │ │ ├── CosmosProperties.java
│ │ │ │ ├── SampleAppConfiguration.java
│ │ │ │ ├── SampleAppConfigurationProd.java
│ │ │ │ ├── SampleApplication.java
│ │ │ │ └── UserRepository.java
│ │ │ └── resources
│ │ │ └── application.yaml
│ ├── cosmos-multi-database-multi-account
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── resource
│ │ │ ├── result-in-mysql.png
│ │ │ ├── result-in-primary-cosmos-database.png
│ │ │ └── result-in-secondary-cosmos-database.png
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── cosmos
│ │ │ │ │ └── multi
│ │ │ │ │ └── database
│ │ │ │ │ └── multiple
│ │ │ │ │ └── account
│ │ │ │ │ ├── CosmosProperties.java
│ │ │ │ │ ├── MultiDatabaseApplication.java
│ │ │ │ │ ├── PrimaryDatasourceConfiguration.java
│ │ │ │ │ ├── SecondaryDatasourceConfiguration.java
│ │ │ │ │ └── repository
│ │ │ │ │ ├── cosmos
│ │ │ │ │ ├── CosmosUser.java
│ │ │ │ │ └── CosmosUserRepository.java
│ │ │ │ │ └── mysql
│ │ │ │ │ ├── MysqlUser.java
│ │ │ │ │ └── MysqlUserRepository.java
│ │ │ │ └── resources
│ │ │ │ └── application.yaml
│ │ └── terraform
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ ├── setup_env.sh
│ │ │ └── variables.tf
│ ├── cosmos-multi-database-single-account
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── resource
│ │ │ ├── result-in-cosmos-database1.png
│ │ │ └── result-in-cosmos-database2.png
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── cosmos
│ │ │ │ │ └── multi
│ │ │ │ │ └── database
│ │ │ │ │ ├── CosmosProperties.java
│ │ │ │ │ ├── DatasourceConfiguration.java
│ │ │ │ │ ├── MultiDatabaseApplication.java
│ │ │ │ │ ├── repository1
│ │ │ │ │ ├── User1.java
│ │ │ │ │ └── User1Repository.java
│ │ │ │ │ └── repository2
│ │ │ │ │ ├── User2.java
│ │ │ │ │ └── User2Repository.java
│ │ │ │ └── resources
│ │ │ │ └── application.yaml
│ │ └── terraform
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ ├── setup_env.sh
│ │ │ └── variables.tf
│ ├── cosmos-multi-tenant-samples
│ │ ├── multi-tenant-by-container
│ │ │ ├── README.md
│ │ │ ├── pom.xml
│ │ │ └── src
│ │ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── data
│ │ │ │ │ └── cosmos
│ │ │ │ │ └── example
│ │ │ │ │ ├── AppConfiguration.java
│ │ │ │ │ ├── Application.java
│ │ │ │ │ ├── CosmosProperties.java
│ │ │ │ │ ├── HomeController.java
│ │ │ │ │ ├── Order.java
│ │ │ │ │ ├── OrderController.java
│ │ │ │ │ ├── OrderRepository.java
│ │ │ │ │ ├── User.java
│ │ │ │ │ ├── UserController.java
│ │ │ │ │ ├── UserRepository.java
│ │ │ │ │ └── tenant
│ │ │ │ │ ├── MultiTenantContainerCosmosFactory.java
│ │ │ │ │ ├── TenantInterceptor.java
│ │ │ │ │ ├── TenantStorage.java
│ │ │ │ │ └── WebConfiguration.java
│ │ │ │ └── resources
│ │ │ │ └── application.yaml
│ │ └── multi-tenant-by-database
│ │ │ ├── README.md
│ │ │ ├── pom.xml
│ │ │ └── src
│ │ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── data
│ │ │ │ └── cosmos
│ │ │ │ └── example
│ │ │ │ ├── AppConfiguration.java
│ │ │ │ ├── Application.java
│ │ │ │ ├── CosmosProperties.java
│ │ │ │ ├── HomeController.java
│ │ │ │ ├── Order.java
│ │ │ │ ├── OrderController.java
│ │ │ │ ├── OrderRepository.java
│ │ │ │ ├── User.java
│ │ │ │ ├── UserController.java
│ │ │ │ ├── UserRepository.java
│ │ │ │ └── tenant
│ │ │ │ ├── MultiTenantDBCosmosFactory.java
│ │ │ │ ├── TenantInterceptor.java
│ │ │ │ ├── TenantStorage.java
│ │ │ │ └── WebConfiguration.java
│ │ │ └── resources
│ │ │ └── application.yaml
│ ├── cosmos-mvc-sample
│ │ ├── BookStore.png
│ │ ├── README.md
│ │ ├── pom.xml
│ │ └── src
│ │ │ ├── main
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── data
│ │ │ │ │ └── cosmos
│ │ │ │ │ └── sample
│ │ │ │ │ └── ebookstore
│ │ │ │ │ ├── EBookStoreApplication.java
│ │ │ │ │ ├── Session
│ │ │ │ │ └── SessionConfig.java
│ │ │ │ │ ├── controller
│ │ │ │ │ ├── cart
│ │ │ │ │ │ └── CartController.java
│ │ │ │ │ ├── customer
│ │ │ │ │ │ ├── CustomerController.java
│ │ │ │ │ │ └── CustomerForm.java
│ │ │ │ │ ├── home
│ │ │ │ │ │ └── HomeController.java
│ │ │ │ │ └── order
│ │ │ │ │ │ ├── CheckOutForm.java
│ │ │ │ │ │ ├── OrderController.java
│ │ │ │ │ │ ├── OrderForm.java
│ │ │ │ │ │ └── OrderHelper.java
│ │ │ │ │ ├── cosmos
│ │ │ │ │ ├── BookRepositoryLoader.java
│ │ │ │ │ ├── CosmosProperties.java
│ │ │ │ │ └── StoreCosmosConfiguration.java
│ │ │ │ │ ├── model
│ │ │ │ │ ├── book
│ │ │ │ │ │ ├── Book.java
│ │ │ │ │ │ ├── BookRepository.java
│ │ │ │ │ │ ├── BookRepositoryAsync.java
│ │ │ │ │ │ └── Response.java
│ │ │ │ │ ├── cart
│ │ │ │ │ │ ├── Cart.java
│ │ │ │ │ │ ├── CartItem.java
│ │ │ │ │ │ ├── CartRepository.java
│ │ │ │ │ │ ├── CartService.java
│ │ │ │ │ │ └── DefaultCartService.java
│ │ │ │ │ ├── customer
│ │ │ │ │ │ ├── Address.java
│ │ │ │ │ │ ├── Contact.java
│ │ │ │ │ │ ├── CreditCard.java
│ │ │ │ │ │ ├── Customer.java
│ │ │ │ │ │ ├── CustomerRepository.java
│ │ │ │ │ │ └── Name.java
│ │ │ │ │ └── order
│ │ │ │ │ │ ├── LineItem.java
│ │ │ │ │ │ ├── Order.java
│ │ │ │ │ │ └── OrderRepository.java
│ │ │ │ │ └── security
│ │ │ │ │ ├── CustomerDetailService.java
│ │ │ │ │ ├── EBookStoreUserDetails.java
│ │ │ │ │ └── WebSecurityConfig.java
│ │ │ └── resources
│ │ │ │ ├── application.yaml
│ │ │ │ ├── logback.xml
│ │ │ │ ├── static
│ │ │ │ ├── css
│ │ │ │ │ ├── bootstrap.css
│ │ │ │ │ ├── bootstrap.css.map
│ │ │ │ │ ├── login.css
│ │ │ │ │ ├── responsive.css
│ │ │ │ │ ├── responsive.css.map
│ │ │ │ │ ├── ui.css
│ │ │ │ │ └── ui.css.map
│ │ │ │ ├── fonts
│ │ │ │ │ ├── fontawesome
│ │ │ │ │ │ ├── css
│ │ │ │ │ │ │ ├── fa-brands.css
│ │ │ │ │ │ │ ├── fa-brands.min.css
│ │ │ │ │ │ │ ├── fa-regular.css
│ │ │ │ │ │ │ ├── fa-regular.min.css
│ │ │ │ │ │ │ ├── fa-solid.css
│ │ │ │ │ │ │ ├── fa-solid.min.css
│ │ │ │ │ │ │ ├── fontawesome-all.css
│ │ │ │ │ │ │ ├── fontawesome-all.min.css
│ │ │ │ │ │ │ ├── fontawesome.css
│ │ │ │ │ │ │ └── fontawesome.min.css
│ │ │ │ │ │ ├── scss
│ │ │ │ │ │ │ ├── _animated.scss
│ │ │ │ │ │ │ ├── _bordered-pulled.scss
│ │ │ │ │ │ │ ├── _core.scss
│ │ │ │ │ │ │ ├── _fixed-width.scss
│ │ │ │ │ │ │ ├── _icons.scss
│ │ │ │ │ │ │ ├── _larger.scss
│ │ │ │ │ │ │ ├── _list.scss
│ │ │ │ │ │ │ ├── _mixins.scss
│ │ │ │ │ │ │ ├── _rotated-flipped.scss
│ │ │ │ │ │ │ ├── _screen-reader.scss
│ │ │ │ │ │ │ ├── _stacked.scss
│ │ │ │ │ │ │ ├── _variables.scss
│ │ │ │ │ │ │ ├── fa-brands.scss
│ │ │ │ │ │ │ ├── fa-regular.scss
│ │ │ │ │ │ │ ├── fa-solid.scss
│ │ │ │ │ │ │ └── fontawesome.scss
│ │ │ │ │ │ └── webfonts
│ │ │ │ │ │ │ ├── fa-brands-400.eot
│ │ │ │ │ │ │ ├── fa-brands-400.svg
│ │ │ │ │ │ │ ├── fa-brands-400.ttf
│ │ │ │ │ │ │ ├── fa-brands-400.woff
│ │ │ │ │ │ │ ├── fa-brands-400.woff2
│ │ │ │ │ │ │ ├── fa-regular-400.eot
│ │ │ │ │ │ │ ├── fa-regular-400.svg
│ │ │ │ │ │ │ ├── fa-regular-400.ttf
│ │ │ │ │ │ │ ├── fa-regular-400.woff
│ │ │ │ │ │ │ ├── fa-regular-400.woff2
│ │ │ │ │ │ │ ├── fa-solid-900.eot
│ │ │ │ │ │ │ ├── fa-solid-900.svg
│ │ │ │ │ │ │ ├── fa-solid-900.ttf
│ │ │ │ │ │ │ ├── fa-solid-900.woff
│ │ │ │ │ │ │ └── fa-solid-900.woff2
│ │ │ │ │ ├── material-icons
│ │ │ │ │ │ ├── MaterialIcons-Regular.eot
│ │ │ │ │ │ ├── MaterialIcons-Regular.ttf
│ │ │ │ │ │ ├── MaterialIcons-Regular.woff
│ │ │ │ │ │ ├── MaterialIcons-Regular.woff2
│ │ │ │ │ │ └── material-icons.css
│ │ │ │ │ └── roboto
│ │ │ │ │ │ ├── Roboto-Bold.ttf
│ │ │ │ │ │ ├── Roboto-Light.ttf
│ │ │ │ │ │ ├── Roboto-Medium.ttf
│ │ │ │ │ │ ├── Roboto-Regular.ttf
│ │ │ │ │ │ ├── Roboto-Thin.ttf
│ │ │ │ │ │ └── font.css
│ │ │ │ ├── images
│ │ │ │ │ ├── AzureAD.jpg
│ │ │ │ │ ├── AzureSQL.jpg
│ │ │ │ │ ├── CassandraDefinitiveguide.jpg
│ │ │ │ │ ├── CleanCode.jpg
│ │ │ │ │ ├── DockerInPractice.jpg
│ │ │ │ │ ├── DockerNetworking.jpg
│ │ │ │ │ ├── ElasticSearchInAction.jpg
│ │ │ │ │ ├── GoInPractice.jpg
│ │ │ │ │ ├── GraphAlgorithms.jpg
│ │ │ │ │ ├── GuideToGraphDatabases.jpg
│ │ │ │ │ ├── JavaConcurrency.jpg
│ │ │ │ │ ├── Kubernetes.jpg
│ │ │ │ │ ├── ProgrammingInRuby.jpg
│ │ │ │ │ ├── RustProgrammingLanguage.jpg
│ │ │ │ │ ├── Scala.jpg
│ │ │ │ │ ├── ServiceFabric.jpg
│ │ │ │ │ ├── SevenDatabasesInSevenWeeks.jpg
│ │ │ │ │ ├── SpringMicroServices.jpg
│ │ │ │ │ ├── blackHatGo.jpg
│ │ │ │ │ ├── csharpInANutshell.jpg
│ │ │ │ │ ├── dataIntensiveApplication.jpg
│ │ │ │ │ ├── effectivejava.jpg
│ │ │ │ │ ├── getProgrammingWithGo.jpg
│ │ │ │ │ ├── highPerformaceMysql.jpg
│ │ │ │ │ ├── kaafkDefnitiveGuide.jpg
│ │ │ │ │ ├── masterring-kotlin.jpg
│ │ │ │ │ ├── mongodb.jpg
│ │ │ │ │ ├── node-design-patterns.jpg
│ │ │ │ │ ├── nodeCookBook.jpg
│ │ │ │ │ ├── patternsOfEAA.jpg
│ │ │ │ │ ├── pragmaticProgrammer.jpg
│ │ │ │ │ ├── programmingcsharp8.0.jpg
│ │ │ │ │ ├── rabbitMQCookBook.jpg
│ │ │ │ │ ├── softwareArchitect.jpg
│ │ │ │ │ └── unitTesting.jpg
│ │ │ │ ├── js
│ │ │ │ │ ├── bootstrap.bundle.min.js
│ │ │ │ │ ├── createaccount.js
│ │ │ │ │ └── jquery-2.0.0.min.js
│ │ │ │ └── plugins
│ │ │ │ │ ├── fancybox
│ │ │ │ │ ├── fancybox.min.css
│ │ │ │ │ ├── fancybox.min.js
│ │ │ │ │ └── index.html
│ │ │ │ │ ├── owlcarousel
│ │ │ │ │ ├── assets
│ │ │ │ │ │ ├── ajax-loader.gif
│ │ │ │ │ │ ├── owl.carousel.css
│ │ │ │ │ │ ├── owl.carousel.min.css
│ │ │ │ │ │ ├── owl.theme.default.css
│ │ │ │ │ │ ├── owl.theme.default.min.css
│ │ │ │ │ │ ├── owl.theme.green.css
│ │ │ │ │ │ ├── owl.theme.green.min.css
│ │ │ │ │ │ └── owl.video.play.png
│ │ │ │ │ ├── owl.carousel.js
│ │ │ │ │ └── owl.carousel.min.js
│ │ │ │ │ ├── prism
│ │ │ │ │ ├── prism.css
│ │ │ │ │ └── prism.js
│ │ │ │ │ └── slickslider
│ │ │ │ │ ├── ajax-loader.gif
│ │ │ │ │ ├── fonts
│ │ │ │ │ ├── slick.eot
│ │ │ │ │ ├── slick.svg
│ │ │ │ │ ├── slick.ttf
│ │ │ │ │ └── slick.woff
│ │ │ │ │ ├── slick-theme.css
│ │ │ │ │ ├── slick.css
│ │ │ │ │ ├── slick.js
│ │ │ │ │ └── slick.min.js
│ │ │ │ └── templates
│ │ │ │ ├── cart.html
│ │ │ │ ├── checkout.html
│ │ │ │ ├── create-account.html
│ │ │ │ ├── index.html
│ │ │ │ ├── login.html
│ │ │ │ ├── orderconfirmation.html
│ │ │ │ └── orders.html
│ │ │ └── test
│ │ │ └── java
│ │ │ └── com
│ │ │ └── spring
│ │ │ └── cosmos
│ │ │ └── ebookstore
│ │ │ └── StoreApplicationTests.java
│ └── cosmos-quickstart-samples
│ │ ├── README.md
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── data
│ │ │ └── cosmos
│ │ │ └── samples
│ │ │ ├── common
│ │ │ └── User.java
│ │ │ ├── featureexamples
│ │ │ └── Pagination.java
│ │ │ └── quickstart
│ │ │ ├── CosmosProperties.java
│ │ │ ├── ReactiveUserRepository.java
│ │ │ ├── SampleAppConfiguration.java
│ │ │ ├── SampleApplication.java
│ │ │ └── UserRepository.java
│ │ └── resources
│ │ └── application.yaml
├── spring-cloud-azure-starter-cosmos
│ └── spring-cloud-azure-cosmos-sample
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── cosmos
│ │ │ │ ├── CosmosSampleApplication.java
│ │ │ │ └── common
│ │ │ │ ├── Address.java
│ │ │ │ ├── Child.java
│ │ │ │ ├── Family.java
│ │ │ │ ├── Parent.java
│ │ │ │ └── Pet.java
│ │ │ └── resources
│ │ │ └── application.yml
│ │ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
└── spring-cloud-azure-starter-data-cosmos
│ └── spring-cloud-azure-data-cosmos-sample
│ ├── README.md
│ ├── pom.xml
│ ├── src
│ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── sample
│ │ │ └── cosmos
│ │ │ ├── CosmosSampleApplication.java
│ │ │ ├── User.java
│ │ │ └── UserRepository.java
│ │ └── resources
│ │ └── application.yml
│ └── terraform
│ ├── main.tf
│ ├── outputs.tf
│ ├── setup_env.ps1
│ ├── setup_env.sh
│ └── variables.tf
├── create-sp-using-azure-cli.md
├── eventgrid
└── spring-cloud-azure-starter-eventgrid
│ └── spring-cloud-azure-sample-eventgrid
│ ├── README.md
│ ├── pom.xml
│ └── src
│ └── main
│ ├── java
│ └── com
│ │ └── azure
│ │ └── spring
│ │ └── sample
│ │ └── eventgrid
│ │ ├── EventGridController.java
│ │ └── EventGridSampleApplication.java
│ └── resources
│ └── application.yaml
├── eventhubs
├── spring-cloud-azure-starter-eventhubs
│ └── eventhubs-client
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── eventhubs
│ │ │ │ └── client
│ │ │ │ └── EventHubClientApplication.java
│ │ │ └── resources
│ │ │ └── application.yaml
│ │ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
├── spring-cloud-azure-starter-integration-eventhubs
│ └── eventhubs-integration
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── eventhubs
│ │ │ │ ├── EventHubIntegrationApplication.java
│ │ │ │ ├── EventHubIntegrationConfiguration.java
│ │ │ │ ├── ReceiveService.java
│ │ │ │ └── SendController.java
│ │ │ └── resources
│ │ │ └── application.yaml
│ │ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
├── spring-cloud-azure-starter
│ └── spring-cloud-azure-sample-eventhubs-kafka
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── eventhubs
│ │ │ │ └── kafka
│ │ │ │ ├── EventHubKafkaBinderApplication.java
│ │ │ │ └── SourceExample.java
│ │ │ └── resources
│ │ │ ├── application-rm.yaml
│ │ │ └── application.yaml
│ │ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
├── spring-cloud-azure-stream-binder-eventhubs
│ ├── eventhubs-binder
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── eventhubs
│ │ │ │ │ └── binder
│ │ │ │ │ ├── BatchProducerAndConsumerConfiguration.java
│ │ │ │ │ ├── DefaultProducerAndConsumerConfiguration.java
│ │ │ │ │ ├── EventHubBinderApplication.java
│ │ │ │ │ ├── ImperativeEventProducerController.java
│ │ │ │ │ ├── ManualProducerAndConsumerConfiguration.java
│ │ │ │ │ └── ReactiveEventProducerController.java
│ │ │ │ └── resources
│ │ │ │ ├── application-batch.yaml
│ │ │ │ └── application.yaml
│ │ └── terraform
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ ├── setup_env.sh
│ │ │ └── variables.tf
│ └── eventhubs-multibinders
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── eventhubs
│ │ │ │ └── multibinders
│ │ │ │ ├── EventHubMultiBindersApplication.java
│ │ │ │ ├── EventProducerConfiguration.java
│ │ │ │ ├── EventProducerController.java
│ │ │ │ └── ManualEventProducerConfiguration.java
│ │ │ └── resources
│ │ │ └── application.yaml
│ │ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
└── spring-messaging-azure-eventhubs
│ └── eventhubs-spring-messaging
│ ├── README.md
│ ├── pom.xml
│ ├── src
│ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── sample
│ │ │ └── eventhubs
│ │ │ └── messaging
│ │ │ ├── ConsumerService.java
│ │ │ └── EventHubMessagingApplication.java
│ │ └── resources
│ │ └── application.yaml
│ └── terraform
│ ├── main.tf
│ ├── outputs.tf
│ ├── setup_env.ps1
│ ├── setup_env.sh
│ └── variables.tf
├── keyvault
├── azure-securtiy-keyvault-jca
│ ├── README.md
│ ├── run-with-command-line-client-side
│ │ ├── README.md
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ └── java
│ │ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── sample
│ │ │ └── web
│ │ │ └── client
│ │ │ └── SampleClient.java
│ └── run-with-command-line-server-side
│ │ ├── README.md
│ │ ├── pom.xml
│ │ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── boot
│ │ │ └── sample
│ │ │ └── webapp
│ │ │ ├── SampleController.java
│ │ │ └── SpringBootWebappApplication.java
│ │ └── resources
│ │ └── keyvault.dummy
├── spring-cloud-azure-starter-keyvault-jca
│ ├── README.md
│ ├── ssl-bundles-rest-template
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── keyvault
│ │ │ │ │ └── jca
│ │ │ │ │ ├── RestTemplateConfiguration.java
│ │ │ │ │ ├── RestTemplateController.java
│ │ │ │ │ └── SslBundlesRestTemplateApplication.java
│ │ │ │ └── resources
│ │ │ │ └── application.yaml
│ │ └── terraform
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ ├── setup_env.sh
│ │ │ └── variables.tf
│ ├── ssl-bundles-server
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── keyvault
│ │ │ │ │ └── jca
│ │ │ │ │ ├── KeyVaultSslBundlesServerApplication.java
│ │ │ │ │ ├── WebConfiguration.java
│ │ │ │ │ └── WebController.java
│ │ │ │ └── resources
│ │ │ │ ├── application-client-auth.yaml
│ │ │ │ └── application.yaml
│ │ └── terraform
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ ├── setup_env.sh
│ │ │ └── variables.tf
│ └── ssl-bundles-web-client
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── keyvault
│ │ │ │ └── jca
│ │ │ │ ├── KeyVaultSslBundlesWebClientApplication.java
│ │ │ │ ├── WebClientConfiguration.java
│ │ │ │ └── WebClientController.java
│ │ │ └── resources
│ │ │ └── application.yaml
│ │ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
└── spring-cloud-azure-starter-keyvault-secrets
│ ├── property-source
│ ├── README.md
│ ├── pom.xml
│ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── keyvault
│ │ │ │ └── secrets
│ │ │ │ └── sample
│ │ │ │ └── single
│ │ │ │ └── property
│ │ │ │ └── source
│ │ │ │ └── PropertySourceApplication.java
│ │ │ └── resources
│ │ │ ├── application-secrets.yml
│ │ │ └── application.yml
│ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
│ └── secret-client
│ ├── README.md
│ ├── pom.xml
│ ├── src
│ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── keyvault
│ │ │ └── secrets
│ │ │ └── sample
│ │ │ └── secret
│ │ │ └── client
│ │ │ └── SecretClientApplication.java
│ │ └── resources
│ │ └── application.yml
│ └── terraform
│ ├── main.tf
│ ├── outputs.tf
│ ├── setup_env.ps1
│ ├── setup_env.sh
│ └── variables.tf
├── mysql
└── spring-cloud-azure-starter-jdbc-mysql
│ └── spring-cloud-azure-mysql-sample
│ ├── README.md
│ ├── pom.xml
│ ├── src
│ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── sample
│ │ │ └── passwordless
│ │ │ └── mysql
│ │ │ ├── MysqlApplication.java
│ │ │ ├── Todo.java
│ │ │ ├── TodoController.java
│ │ │ └── TodoRepository.java
│ │ └── resources
│ │ └── application.yml
│ └── terraform
│ ├── main.tf
│ ├── mysql_create_user.sql
│ ├── outputs.tf
│ ├── set_up_azure_ad_user.ps1
│ ├── set_up_azure_ad_user.sh
│ ├── setup_env.ps1
│ ├── setup_env.sh
│ └── variables.tf
├── pom.xml
├── postgresql
└── spring-cloud-azure-starter-jdbc-postgresql
│ └── spring-cloud-azure-postgresql-sample
│ ├── README.md
│ ├── pom.xml
│ ├── src
│ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── sample
│ │ │ └── passwordless
│ │ │ └── postgresql
│ │ │ ├── PostgresqlApplication.java
│ │ │ ├── Todo.java
│ │ │ ├── TodoController.java
│ │ │ └── TodoRepository.java
│ │ └── resources
│ │ └── application.yml
│ └── terraform
│ ├── create_non_admin_user.ps1
│ ├── create_non_admin_user.sh
│ ├── main.tf
│ ├── outputs.tf
│ ├── postgresql_create_user.sql
│ ├── setup_env.ps1
│ ├── setup_env.sh
│ └── variables.tf
├── servicebus
├── spring-cloud-azure-starter-integration-servicebus
│ ├── multiple-namespaces
│ │ ├── README.md
│ │ ├── migration-guide.md
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── servicebus
│ │ │ │ │ ├── CustomizedServiceBusProperties.java
│ │ │ │ │ ├── IntegrationFlowConfiguration.java
│ │ │ │ │ ├── MultipleAzureServiceBusNamespacesConfiguration.java
│ │ │ │ │ └── ServiceBusIntegrationApplication.java
│ │ │ │ └── resources
│ │ │ │ └── application.yaml
│ │ └── terraform
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ ├── setup_env.sh
│ │ │ └── variables.tf
│ └── single-namespace
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── servicebus
│ │ │ │ ├── QueueReceiveController.java
│ │ │ │ ├── QueueSendController.java
│ │ │ │ ├── ServiceBusIntegrationApplication.java
│ │ │ │ ├── TopicReceiveController.java
│ │ │ │ └── TopicSendController.java
│ │ │ └── resources
│ │ │ └── application.yaml
│ │ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
├── spring-cloud-azure-starter-servicebus-jms
│ ├── servicebus-jms-dlq-queue
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── jms
│ │ │ │ │ └── queue
│ │ │ │ │ ├── QueueReceiveService.java
│ │ │ │ │ ├── QueueSendController.java
│ │ │ │ │ ├── ServiceBusJmsDlqQueueApplication.java
│ │ │ │ │ └── User.java
│ │ │ │ └── resources
│ │ │ │ ├── application.yaml
│ │ │ │ └── log4j.properties
│ │ └── terraform
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ ├── setup_env.sh
│ │ │ └── variables.tf
│ ├── servicebus-jms-queue
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── jms
│ │ │ │ │ └── queue
│ │ │ │ │ ├── QueueReceiveService.java
│ │ │ │ │ ├── QueueSendController.java
│ │ │ │ │ ├── ServiceBusJMSQueueApplication.java
│ │ │ │ │ └── User.java
│ │ │ │ └── resources
│ │ │ │ ├── application.yaml
│ │ │ │ └── log4j.properties
│ │ └── terraform
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ ├── setup_env.sh
│ │ │ └── variables.tf
│ └── servicebus-jms-topic
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── jms
│ │ │ │ └── topic
│ │ │ │ ├── ServiceBusJMSTopicApplication.java
│ │ │ │ ├── TopicReceiveService.java
│ │ │ │ ├── TopicSendController.java
│ │ │ │ └── User.java
│ │ │ └── resources
│ │ │ ├── application.yaml
│ │ │ └── log4j.properties
│ │ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
├── spring-cloud-azure-starter-servicebus
│ ├── servicebus-queue
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── jms
│ │ │ │ │ └── queue
│ │ │ │ │ ├── ServiceBusProcessorClientConfiguration.java
│ │ │ │ │ └── ServiceBusQueueApplication.java
│ │ │ │ └── resources
│ │ │ │ └── application.yaml
│ │ └── terraform
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ ├── setup_env.sh
│ │ │ └── variables.tf
│ └── servicebus-topic
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── jms
│ │ │ │ └── topic
│ │ │ │ ├── ServiceBusProcessorClientConfiguration.java
│ │ │ │ └── ServiceBusTopicApplication.java
│ │ │ └── resources
│ │ │ └── application.yaml
│ │ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
├── spring-cloud-azure-stream-binder-servicebus
│ ├── servicebus-multibinders
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── servicebus
│ │ │ │ │ └── queue
│ │ │ │ │ └── multibinders
│ │ │ │ │ ├── ManualServiceProducerConfiguration.java
│ │ │ │ │ ├── ServiceBusQueueMultiBindersApplication.java
│ │ │ │ │ ├── ServiceProducerConfiguration.java
│ │ │ │ │ └── ServiceProducerController.java
│ │ │ │ └── resources
│ │ │ │ └── application.yaml
│ │ └── terraform
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ ├── setup_env.sh
│ │ │ └── variables.tf
│ ├── servicebus-queue-binder-arm
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── servicebus
│ │ │ │ │ └── queue
│ │ │ │ │ └── binder
│ │ │ │ │ └── arm
│ │ │ │ │ ├── ServiceBusQueueBinderArmApplication.java
│ │ │ │ │ └── ServiceProducerConfiguration.java
│ │ │ │ └── resources
│ │ │ │ └── application.yaml
│ │ └── terraform
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ ├── setup_env.sh
│ │ │ └── variables.tf
│ ├── servicebus-queue-binder
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── servicebus
│ │ │ │ │ └── queue
│ │ │ │ │ └── binder
│ │ │ │ │ ├── ManualServiceProducerConfiguration.java
│ │ │ │ │ ├── ServiceBusQueueBinderApplication.java
│ │ │ │ │ ├── ServiceProducerConfiguration.java
│ │ │ │ │ └── ServiceProducerController.java
│ │ │ │ └── resources
│ │ │ │ ├── application-rm.yaml
│ │ │ │ └── application.yaml
│ │ └── terraform
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ ├── setup_env.sh
│ │ │ └── variables.tf
│ └── servicebus-topic-binder
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── servicebus
│ │ │ │ └── topic
│ │ │ │ └── binder
│ │ │ │ ├── ManualServiceProducerConfiguration.java
│ │ │ │ ├── ServiceBusTopicBinderApplication.java
│ │ │ │ ├── ServiceProducerConfiguration.java
│ │ │ │ └── ServiceProducerController.java
│ │ │ └── resources
│ │ │ ├── application-rm.yaml
│ │ │ └── application.yaml
│ │ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
└── spring-messaging-azure-servicebus
│ └── servicebus-spring-messaging
│ ├── README.md
│ ├── pom.xml
│ ├── src
│ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── sample
│ │ │ └── servicebus
│ │ │ └── messaging
│ │ │ ├── ConsumerService.java
│ │ │ └── ServiceBusMessagingApplication.java
│ │ └── resources
│ │ └── application.yaml
│ └── terraform
│ ├── main.tf
│ ├── outputs.tf
│ ├── setup_env.ps1
│ ├── setup_env.sh
│ └── variables.tf
├── storage
├── spring-cloud-azure-starter-integration-storage-queue
│ ├── storage-queue-integration
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ │ └── main
│ │ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── azure
│ │ │ │ │ └── spring
│ │ │ │ │ └── sample
│ │ │ │ │ └── storage
│ │ │ │ │ └── queue
│ │ │ │ │ ├── ReceiveService.java
│ │ │ │ │ ├── SendController.java
│ │ │ │ │ └── StorageQueueIntegrationApplication.java
│ │ │ │ └── resources
│ │ │ │ └── application.yaml
│ │ └── terraform
│ │ │ ├── main.tf
│ │ │ ├── outputs.tf
│ │ │ ├── setup_env.ps1
│ │ │ ├── setup_env.sh
│ │ │ └── variables.tf
│ └── storage-queue-operation
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── storage
│ │ │ │ └── queue
│ │ │ │ └── operation
│ │ │ │ ├── StorageQueueOperationApplication.java
│ │ │ │ └── WebController.java
│ │ │ └── resources
│ │ │ └── application.yaml
│ │ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
├── spring-cloud-azure-starter-storage-blob
│ └── storage-blob-sample
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── storage
│ │ │ │ └── resource
│ │ │ │ ├── BlobController.java
│ │ │ │ ├── SampleDataInitializer.java
│ │ │ │ └── StorageBlobApplication.java
│ │ │ └── resources
│ │ │ └── application.yml
│ │ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
├── spring-cloud-azure-starter-storage-file-share
│ └── storage-file-sample
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── storage
│ │ │ │ └── resource
│ │ │ │ ├── FileController.java
│ │ │ │ ├── SampleDataInitializer.java
│ │ │ │ └── StorageFileShareApplication.java
│ │ │ └── resources
│ │ │ └── application.yml
│ │ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
├── spring-cloud-azure-starter-storage-queue
│ └── storage-queue-client
│ │ ├── README.md
│ │ ├── pom.xml
│ │ ├── src
│ │ └── main
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── azure
│ │ │ │ └── spring
│ │ │ │ └── sample
│ │ │ │ └── storage
│ │ │ │ └── queue
│ │ │ │ └── StorageQueueClientApplication.java
│ │ │ └── resources
│ │ │ └── application.yaml
│ │ └── terraform
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ ├── setup_env.ps1
│ │ ├── setup_env.sh
│ │ └── variables.tf
└── spring-messaging-azure-storage-queue
│ └── storage-queue-spring-messaging
│ ├── README.md
│ ├── pom.xml
│ ├── src
│ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── azure
│ │ │ └── spring
│ │ │ └── sample
│ │ │ └── storage
│ │ │ └── queue
│ │ │ └── messaging
│ │ │ └── StorageQueueMessagingApplication.java
│ │ └── resources
│ │ └── application.yml
│ └── terraform
│ ├── main.tf
│ ├── outputs.tf
│ ├── setup_env.ps1
│ ├── setup_env.sh
│ └── variables.tf
└── testcontainers
├── README.md
├── spring-cloud-azure-testcontainers-for-cosmos-sample
├── pom.xml
└── src
│ └── test
│ └── java
│ └── CosmosTestcontainersTest.java
├── spring-cloud-azure-testcontainers-for-storage-blob-sample
├── pom.xml
└── src
│ └── test
│ └── java
│ └── StorageBlobTestcontainersTest.java
└── spring-cloud-azure-testcontainers-for-storage-queue-sample
├── pom.xml
└── src
└── test
└── java
└── StorageQueueTestcontainersTest.java
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Declare files that will always have LF line endings.
2 | *.tf text eol=lf
3 | *.sh text eol=lf
4 |
--------------------------------------------------------------------------------
/.github/CODEOWNERS:
--------------------------------------------------------------------------------
1 | # Instructions for CODEOWNERS file format and automatic build failure notifications:
2 | # https://github.blog/2017-07-06-introducing-code-owners/
3 | # https://docs.github.com/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners
4 |
5 | * @Azure-Samples/spring-cloud-azure-maintain
6 | /appconfiguration/ @mrm9084 @Azure-Samples/spring-cloud-azure-maintain
7 |
--------------------------------------------------------------------------------
/.github/CODE_OF_CONDUCT.md:
--------------------------------------------------------------------------------
1 | # Microsoft Open Source Code of Conduct
2 |
3 | This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
4 |
5 | Resources:
6 |
7 | - [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/)
8 | - [Microsoft Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/)
9 | - Contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with questions or concerns
10 |
--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | # To get started with Dependabot version updates, you'll need to specify which
2 | # package ecosystems to update and where the package manifests are located.
3 | # Please see the documentation for all configuration options:
4 | # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5 |
6 | version: 2
7 | updates:
8 | - package-ecosystem: "maven" # See documentation for possible values
9 | directory: "/" # Location of package manifests
10 | schedule:
11 | interval: "daily"
12 | target-branch: "main"
13 |
--------------------------------------------------------------------------------
/.github/workflows/.linkspector.yml:
--------------------------------------------------------------------------------
1 | dirs:
2 | - ./
3 | ignorePatterns:
4 | - pattern: "^http://127.0.0.1"
5 | - pattern: "^https://127.0.0.1"
6 | - pattern: "^http://localhost"
7 | - pattern: "^https://localhost"
8 | - pattern: "^https://www.terraform.io"
9 | - pattern: "^https://mvnrepository.com/artifact/com.azure/azure-security-keyvault-jca"
10 | - pattern: "^https://www.microsoft.com/edge"
11 | - pattern: "^https://dev.mysql.com/downloads/shell/"
12 | aliveStatusCodes:
13 | - 200
--------------------------------------------------------------------------------
/.github/workflows/markdown-link-check.yml:
--------------------------------------------------------------------------------
1 | name: Markdown Links Check
2 |
3 | on: [push, pull_request]
4 |
5 | jobs:
6 | markdown-link-check:
7 | runs-on: ubuntu-22.04 #workaround https://github.com/UmbrellaDocs/action-linkspector/issues/32
8 | steps:
9 | - uses: actions/checkout@master
10 | - uses: umbrelladocs/action-linkspector@v1.1.3
11 | with:
12 | reporter: github-pr-review
13 | config_file: '.github/workflows/.linkspector.yml'
14 | level: error
15 | fail_on_error: true
16 |
--------------------------------------------------------------------------------
/.github/workflows/sync-label-from-azsdk-repo.yml:
--------------------------------------------------------------------------------
1 | name: Sync Labels
2 | on:
3 | workflow_dispatch:
4 |
5 | jobs:
6 | build:
7 | runs-on: ubuntu-latest
8 | steps:
9 | - name: Fetch Labels
10 | run: curl https://api.github.com/repos/Azure/azure-sdk-for-java/labels\?per_page\=1000 | jq -c '.[] | select(.name | contains("spring"))' | jq -s >> labels.json
11 |
12 | - name: Label Sync
13 | uses: EndBug/label-sync@v2.1.0
14 | with:
15 | config-file: ./labels.json
16 | dry-run: false
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-add-application-roles.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-add-application-roles.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-add-delegated-permissions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-add-delegated-permissions.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-add-user-flow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-add-user-flow.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-configuration-application-roles.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-configuration-application-roles.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-consent-application-and-delegated-permissions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-consent-application-and-delegated-permissions.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-expose-an-api.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-expose-an-api.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-final-configuration.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-final-configuration.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-select-a-user-flow-type.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-select-a-user-flow-type.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-selected-application.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-selected-application.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-setting-relevant-content.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-setting-relevant-content.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-user-flow-finally.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/docs/image-user-flow-finally.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-resource-server/src/main/java/com/azure/spring/sample/aad/b2c/AadB2cResourceServerSampleApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.aad.b2c;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | @SpringBootApplication
10 | public class AadB2cResourceServerSampleApplication {
11 |
12 | public static void main(String[] args) {
13 | SpringApplication.run(AadB2cResourceServerSampleApplication.class, args);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory-b2c/aad-b2c-web-application/src/main/java/com/azure/spring/sample/aad/b2c/AadB2cOidcSampleApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.aad.b2c;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | @SpringBootApplication
10 | public class AadB2cOidcSampleApplication {
11 |
12 | public static void main(String[] args) {
13 | //
14 | SpringApplication.run(AadB2cOidcSampleApplication.class, args);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter-stateless/docs/demo.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter-stateless/docs/demo.webp
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter-stateless/src/main/java/com/azure/spring/sample/aad/AadStatelessBackendSampleApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.aad;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | @SpringBootApplication
10 | public class AadStatelessBackendSampleApplication {
11 |
12 | public static void main(String[] args) {
13 | SpringApplication.run(AadStatelessBackendSampleApplication.class, args);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/docs/add-permissions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/docs/add-permissions.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/docs/application-registration-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/docs/application-registration-1.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/docs/application-registration-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/docs/application-registration-2.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/docs/create-secret.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/docs/create-secret.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/docs/grant-admin-consent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/docs/grant-admin-consent.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/docs/secret-value.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/docs/secret-value.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/docs/tokens-to-accept.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/docs/tokens-to-accept.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/src/main/java/com/azure/spring/sample/aad/AadIntegrationSpringBootAutoconfigureSampleApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.aad;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | @SpringBootApplication
10 | public class AadIntegrationSpringBootAutoconfigureSampleApplication {
11 |
12 | public static void main(String[] args) {
13 | SpringApplication.run(AadIntegrationSpringBootAutoconfigureSampleApplication.class, args);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/src/main/resources/static/App/Scripts/homeCtrl.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | angular.module('todoApp')
3 | .controller('homeCtrl', ['$scope', 'msalAuthenticationService', '$location', function ($scope, msalService, $location) {
4 | $scope.login = function () {
5 | msalService.loginRedirect({
6 | scopes: ["User.Read"]
7 | });
8 | };
9 | $scope.logout = function () {
10 | msalService.logout();
11 | };
12 | $scope.isActive = function (viewLocation) {
13 | return viewLocation === $location.path();
14 | };
15 | }]);
16 |
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/src/main/resources/static/App/Scripts/indexCtrl.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | angular.module('todoApp')
3 | .controller('indexCtrl', ['$scope', 'msalAuthenticationService', function ($scope, msalService) {
4 |
5 | }]);
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/src/main/resources/static/App/Scripts/userDataCtrl.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | angular.module('todoApp')
3 | .controller('userDataCtrl', ['$scope', 'msalAuthenticationService', function ($scope, msalService) {
4 |
5 |
6 | }]);
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-resource-server-by-filter/src/main/resources/static/App/Views/Home.html:
--------------------------------------------------------------------------------
1 |
2 | home sweet home
3 |
4 |
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/aad-web-application-and-resource-server/src/main/java/com/azure/spring/sample/aad/AadOAuth2WebAppAndResourceServerSampleApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.aad;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | @SpringBootApplication
10 | public class AadOAuth2WebAppAndResourceServerSampleApplication {
11 |
12 | public static void main(String[] args) {
13 | SpringApplication.run(AadOAuth2WebAppAndResourceServerSampleApplication.class, args);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server-obo/docs/image-aad-obo-flow-and-client-credential-flow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server-obo/docs/image-aad-obo-flow-and-client-credential-flow.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server-obo/docs/image-add-grant-admin-consent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server-obo/docs/image-add-grant-admin-consent.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server-obo/docs/image-add-permissions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server-obo/docs/image-add-permissions.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server-obo/docs/image-resource-server-obo-add-scope.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server-obo/docs/image-resource-server-obo-add-scope.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server-obo/docs/image-select-myapis.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server-obo/docs/image-select-myapis.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server-obo/src/main/java/com/azure/spring/sample/aad/AadOAuth2ResourceServerOboSampleApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.aad;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | @SpringBootApplication
10 | public class AadOAuth2ResourceServerOboSampleApplication {
11 |
12 | public static void main(String[] args) {
13 | SpringApplication.run(AadOAuth2ResourceServerOboSampleApplication.class, args);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-add-a-scope.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-add-a-scope.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-add-custom-apis-to-webapp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-add-custom-apis-to-webapp.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-add-resource-server.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-add-resource-server.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-creat-secrets-api.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-creat-secrets-api.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-expose-api.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-expose-api.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-final.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-final.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-granted-permission.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-granted-permission.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-protal-manage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-protal-manage.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-register-a-web-api.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-register-a-web-api.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-set-application-id-url.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/docs/image-set-application-id-url.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-resource-server/src/main/java/com/azure/spring/sample/aad/AadOAuth2ResourceServerSampleApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.aad;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | @SpringBootApplication
10 | public class AadOAuth2ResourceServerSampleApplication {
11 |
12 | public static void main(String[] args) {
13 | SpringApplication.run(AadOAuth2ResourceServerSampleApplication.class, args);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-add-a-platform.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-add-a-platform.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-add-grant-admin-consent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-add-grant-admin-consent.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-add-permissions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-add-permissions.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-create-app-secrets.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-create-app-secrets.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-permissions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-permissions.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-portal-manage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-portal-manage.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-register-a-web-app.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-register-a-web-app.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-request-api-permissions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-request-api-permissions.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-secret-value.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-secret-value.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-select-myapis.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/docs/image-select-myapis.png
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/aad-web-application/src/main/java/com/azure/spring/sample/aad/AadOAuth2WebAppSampleApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.aad;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | @SpringBootApplication
10 | public class AadOAuth2WebAppSampleApplication {
11 |
12 | public static void main(String[] args) {
13 | SpringApplication.run(AadOAuth2WebAppSampleApplication.class, args);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/aad/spring-cloud-azure-starter-active-directory/web-client-access-resource-server/terraform/kill-port.ps1:
--------------------------------------------------------------------------------
1 | param ($port)
2 |
3 | $foundProcesses = netstat -ano|findstr $port
4 | $activePortPattern = ":$port\s.+LISTENING\s+\d+$"
5 | $pidNumberPattern = "\d+$"
6 |
7 | IF ($foundProcesses | Select-String -Pattern $activePortPattern -Quiet) {
8 | $matches = $foundProcesses | Select-String -Pattern $activePortPattern
9 | $firstMatch = $matches.Matches.Get(0).Value
10 |
11 | $pidNumber = [regex]::match($firstMatch, $pidNumberPattern).Value
12 |
13 | taskkill /pid $pidNumber /f
14 | }
--------------------------------------------------------------------------------
/aad/spring-security/reactive/webflux/oauth2/spring-cloud-gateway/client/src/main/java/com/azure/spring/sample/activedirectory/reactive/webflux/oauth2/gateway/client/ClientApplication.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.activedirectory.reactive.webflux.oauth2.gateway.client;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ClientApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ClientApplication.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/reactive/webflux/oauth2/spring-cloud-gateway/client/src/main/java/com/azure/spring/sample/activedirectory/reactive/webflux/oauth2/gateway/client/controller/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.activedirectory.reactive.webflux.oauth2.gateway.client.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/")
10 | public String home() {
11 | return "Hello, this is client-1.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/reactive/webflux/oauth2/spring-cloud-gateway/gateway/src/main/java/com/azure/spring/sample/activedirectory/reactive/webflux/oauth2/gateway/gateway/GatewayApplication.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.activedirectory.reactive.webflux.oauth2.gateway.gateway;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class GatewayApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(GatewayApplication.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/reactive/webflux/oauth2/spring-cloud-gateway/gateway/src/main/java/com/azure/spring/sample/activedirectory/reactive/webflux/oauth2/gateway/gateway/configuration/SecurityConfiguration.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.activedirectory.reactive.webflux.oauth2.gateway.gateway.configuration;
2 |
3 | import org.springframework.context.annotation.Configuration;
4 | import org.springframework.security.config.annotation.web.reactive.EnableWebFluxSecurity;
5 |
6 | @EnableWebFluxSecurity
7 | @Configuration
8 | public class SecurityConfiguration {
9 |
10 | }
11 |
--------------------------------------------------------------------------------
/aad/spring-security/reactive/webflux/oauth2/spring-cloud-gateway/resource-server-1/src/main/java/com/azure/spring/sample/activedirectory/oauth2/gateway/resourceserver1/ResourceServer1Application.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.activedirectory.oauth2.gateway.resourceserver1;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ResourceServer1Application {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ResourceServer1Application.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/reactive/webflux/oauth2/spring-cloud-gateway/resource-server-1/src/main/java/com/azure/spring/sample/activedirectory/oauth2/gateway/resourceserver1/configuration/SecurityConfiguration.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.activedirectory.oauth2.gateway.resourceserver1.configuration;
2 |
3 | import org.springframework.context.annotation.Configuration;
4 | import org.springframework.security.config.annotation.web.reactive.EnableWebFluxSecurity;
5 |
6 | @EnableWebFluxSecurity
7 | @Configuration
8 | public class SecurityConfiguration {
9 |
10 | }
11 |
--------------------------------------------------------------------------------
/aad/spring-security/reactive/webflux/oauth2/spring-cloud-gateway/resource-server-1/src/main/java/com/azure/spring/sample/activedirectory/oauth2/gateway/resourceserver1/controller/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.activedirectory.oauth2.gateway.resourceserver1.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/resource-server-1")
10 | public String home() {
11 | return "Hello, this is resource-server-1.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/reactive/webflux/oauth2/spring-cloud-gateway/resource-server-1/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | # Please fill these placeholders before running this application:
2 | # 1. ${TENANT_ID}
3 | # 2. ${RESOURCE_SERVER_1_CLIENT_ID}
4 |
5 | logging:
6 | level:
7 | root: DEBUG
8 | server:
9 | port: 8081
10 | spring:
11 | http:
12 | client:
13 | factory: jdk
14 | security:
15 | oauth2:
16 | resourceserver:
17 | jwt:
18 | jwk-set-uri: https://login.microsoftonline.com/${TENANT_ID}/discovery/v2.0/keys
19 | issuer-uri: https://login.microsoftonline.com/${TENANT_ID}/v2.0
20 | audiences: ${RESOURCE_SERVER_1_CLIENT_ID}
21 | profiles:
22 | active: develop
23 |
--------------------------------------------------------------------------------
/aad/spring-security/reactive/webflux/oauth2/spring-cloud-gateway/resource-server-2/src/main/java/com/azure/spring/sample/activedirectory/reactive/webflux/oauth2/gateway/resourceserver2/ResourceServer2Application.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.activedirectory.reactive.webflux.oauth2.gateway.resourceserver2;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ResourceServer2Application {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ResourceServer2Application.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/reactive/webflux/oauth2/spring-cloud-gateway/resource-server-2/src/main/java/com/azure/spring/sample/activedirectory/reactive/webflux/oauth2/gateway/resourceserver2/configuration/SecurityConfiguration.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.activedirectory.reactive.webflux.oauth2.gateway.resourceserver2.configuration;
2 |
3 | import org.springframework.context.annotation.Configuration;
4 | import org.springframework.security.config.annotation.web.reactive.EnableWebFluxSecurity;
5 |
6 | @EnableWebFluxSecurity
7 | @Configuration
8 | public class SecurityConfiguration {
9 |
10 | }
11 |
--------------------------------------------------------------------------------
/aad/spring-security/reactive/webflux/oauth2/spring-cloud-gateway/resource-server-2/src/main/java/com/azure/spring/sample/activedirectory/reactive/webflux/oauth2/gateway/resourceserver2/controller/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.activedirectory.reactive.webflux.oauth2.gateway.resourceserver2.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/resource-server-2")
10 | public String home() {
11 | return "Hello, this is resource-server-2.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/reactive/webflux/oauth2/spring-cloud-gateway/resource-server-2/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | # Please fill these placeholders before running this application:
2 | # 1. ${TENANT_ID}
3 | # 2. ${RESOURCE_SERVER_2_CLIENT_ID}
4 |
5 | logging:
6 | level:
7 | root: DEBUG
8 | server:
9 | port: 8082
10 | spring:
11 | http:
12 | client:
13 | factory: jdk
14 | security:
15 | oauth2:
16 | resourceserver:
17 | jwt:
18 | jwk-set-uri: https://login.microsoftonline.com/${TENANT_ID}/discovery/v2.0/keys
19 | issuer-uri: https://login.microsoftonline.com/${TENANT_ID}/v2.0
20 | audiences: ${RESOURCE_SERVER_2_CLIENT_ID}
21 | profiles:
22 | active: develop
23 |
--------------------------------------------------------------------------------
/aad/spring-security/reactive/webflux/oauth2/spring-cloud-gateway/terraform/kill-port.ps1:
--------------------------------------------------------------------------------
1 | param ($port)
2 |
3 | $foundProcesses = netstat -ano|findstr $port
4 | $activePortPattern = ":$port\s.+LISTENING\s+\d+$"
5 | $pidNumberPattern = "\d+$"
6 |
7 | IF ($foundProcesses | Select-String -Pattern $activePortPattern -Quiet) {
8 | $matches = $foundProcesses | Select-String -Pattern $activePortPattern
9 | $firstMatch = $matches.Matches.Get(0).Value
10 |
11 | $pidNumber = [regex]::match($firstMatch, $pidNumberPattern).Value
12 |
13 | taskkill /pid $pidNumber /f
14 | }
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-multiple-resource-server/client/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample03/client/ClientApplication.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample03.client;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ClientApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ClientApplication.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-multiple-resource-server/client/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample03/client/controller/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample03.client.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/")
10 | public String home() {
11 | return "Hello, this is client-1.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-multiple-resource-server/resource-server-1/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample03/resource/server1/ResourceServerApplication.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample03.resource.server1;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ResourceServerApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ResourceServerApplication.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-multiple-resource-server/resource-server-1/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample03/resource/server1/controller/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample03.resource.server1.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/")
10 | public String home() {
11 | return "Hello, this is resource-server-1.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-multiple-resource-server/resource-server-1/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | # Please fill these placeholders before running this application:
2 | # 1. ${TENANT_ID}
3 | # 2. ${RESOURCE_SERVER_1_CLIENT_ID}
4 |
5 | logging:
6 | level:
7 | root: DEBUG
8 | server:
9 | port: 8081
10 | spring:
11 | security:
12 | oauth2:
13 | resourceserver:
14 | jwt:
15 | jwk-set-uri: https://login.microsoftonline.com/${TENANT_ID}/discovery/v2.0/keys
16 | issuer-uri: https://login.microsoftonline.com/${TENANT_ID}/v2.0
17 | audience: ${RESOURCE_SERVER_1_CLIENT_ID}
18 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-multiple-resource-server/resource-server-2/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample03/resource/server2/ResourceServerApplication.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample03.resource.server2;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ResourceServerApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ResourceServerApplication.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-multiple-resource-server/resource-server-2/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample03/resource/server2/controller/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample03.resource.server2.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/")
10 | public String home() {
11 | return "Hello, this is resource-server-2.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-multiple-resource-server/resource-server-2/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | # Please fill these placeholders before running this application:
2 | # 1. ${TENANT_ID}
3 | # 2. ${RESOURCE_SERVER_2_CLIENT_ID}
4 |
5 | logging:
6 | level:
7 | root: DEBUG
8 | server:
9 | port: 8082
10 | spring:
11 | security:
12 | oauth2:
13 | resourceserver:
14 | jwt:
15 | jwk-set-uri: https://login.microsoftonline.com/${TENANT_ID}/discovery/v2.0/keys
16 | issuer-uri: https://login.microsoftonline.com/${TENANT_ID}/v2.0
17 | audience: ${RESOURCE_SERVER_2_CLIENT_ID}
18 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-multiple-resource-server/terraform/kill-port.ps1:
--------------------------------------------------------------------------------
1 | param ($port)
2 |
3 | $foundProcesses = netstat -ano|findstr $port
4 | $activePortPattern = ":$port\s.+LISTENING\s+\d+$"
5 | $pidNumberPattern = "\d+$"
6 |
7 | IF ($foundProcesses | Select-String -Pattern $activePortPattern -Quiet) {
8 | $matches = $foundProcesses | Select-String -Pattern $activePortPattern
9 | $firstMatch = $matches.Matches.Get(0).Value
10 |
11 | $pidNumber = [regex]::match($firstMatch, $pidNumberPattern).Value
12 |
13 | taskkill /pid $pidNumber /f
14 | }
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-resource-server/client/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample01/client/ClientApplication.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample01.client;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ClientApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ClientApplication.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-resource-server/client/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample01/client/controller/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample01.client.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/")
10 | public String home() {
11 | return "Hello, this is client-1.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-resource-server/resource-server/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample01/resource/server/ResourceServerApplication.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample01.resource.server;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ResourceServerApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ResourceServerApplication.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-resource-server/resource-server/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample01/resource/server/controller/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample01.resource.server.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/")
10 | public String home() {
11 | return "Hello, this is resource-server-1.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-resource-server/resource-server/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | # Please fill these placeholders before running this application:
2 | # 1. ${TENANT_ID}
3 | # 2. ${RESOURCE_SERVER_1_CLIENT_ID}
4 |
5 | logging:
6 | level:
7 | root: DEBUG
8 | server:
9 | port: 8081
10 | spring:
11 | security:
12 | oauth2:
13 | resourceserver:
14 | jwt:
15 | jwk-set-uri: https://login.microsoftonline.com/${TENANT_ID}/discovery/v2.0/keys
16 | issuer-uri: https://login.microsoftonline.com/${TENANT_ID}/v2.0
17 | audience: ${RESOURCE_SERVER_1_CLIENT_ID}
18 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/client-access-resource-server/terraform/kill-port.ps1:
--------------------------------------------------------------------------------
1 | param ($port)
2 |
3 | $foundProcesses = netstat -ano|findstr $port
4 | $activePortPattern = ":$port\s.+LISTENING\s+\d+$"
5 | $pidNumberPattern = "\d+$"
6 |
7 | IF ($foundProcesses | Select-String -Pattern $activePortPattern -Quiet) {
8 | $matches = $foundProcesses | Select-String -Pattern $activePortPattern
9 | $firstMatch = $matches.Matches.Get(0).Value
10 |
11 | $pidNumber = [regex]::match($firstMatch, $pidNumberPattern).Value
12 |
13 | taskkill /pid $pidNumber /f
14 | }
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/login-authenticate-using-private-key-jwt/README.md:
--------------------------------------------------------------------------------
1 | ---
2 | page_type: sample
3 | languages:
4 | - java
5 | products:
6 | - azure-active-directory
7 | name: Developing a Spring Bott Web Application Supports Login by Microsoft Entra ID Account via Certificate
8 | description: This sample demonstrates how to develop a Spring Boot web application supports login by Microsoft Entra ID account via certificate.
9 | ---
10 |
11 | # Developing a Spring Bott Web Application Supports Login by Microsoft Entra Account via Certificate
12 |
13 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/login-authenticate-using-private-key-jwt/src/main/java/com/azure/spring/sample/reactive/servlet/oauth2/login/jwt/SampleApplication.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.reactive.servlet.oauth2.login.jwt;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class SampleApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(SampleApplication.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/login-authenticate-using-private-key-jwt/src/main/java/com/azure/spring/sample/reactive/servlet/oauth2/login/jwt/controller/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.reactive.servlet.oauth2.login.jwt.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/")
10 | public String home() {
11 | return "Hello, this is client-1.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/login-authenticate-using-private-key-jwt/src/test/resources/encrypted-private-key-and-certificate.pfx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/aad/spring-security/servlet/oauth2/login-authenticate-using-private-key-jwt/src/test/resources/encrypted-private-key-and-certificate.pfx
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/login/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample00/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample00;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/")
10 | public String home() {
11 | return "Hello, this is client-1.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/login/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample00/SampleApplication.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample00;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class SampleApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(SampleApplication.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/login/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:TENANT_ID=$(terraform -chdir=terraform output -raw TENANT_ID)
2 | $env:CLIENT_1_CLIENT_ID=$(terraform -chdir=terraform output -raw CLIENT_1_CLIENT_ID)
3 | $env:CLIENT_1_CLIENT_SECRET=$(terraform -chdir=terraform output -raw CLIENT_1_CLIENT_SECRET)
4 | $env:USER_NAME=$(terraform -chdir=terraform output -raw USER_NAME)
5 | $env:USER_PASSWORD=$(terraform -chdir=terraform output -raw USER_PASSWORD)
6 |
7 | echo TENANT_ID=$env:TENANT_ID
8 | echo CLIENT_1_CLIENT_ID=$env:CLIENT_1_CLIENT_ID
9 | echo CLIENT_1_CLIENT_SECRET=$env:CLIENT_1_CLIENT_SECRET
10 |
11 | echo "--------created user--------"
12 | echo USER_NAME=$env:USER_NAME
13 | echo USER_PASSWORD=$env:USER_PASSWORD
14 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/resource-server-check-permissions-by-claims-in-access-token/client/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample02/client/ClientApplication.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample02.client;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ClientApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ClientApplication.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/resource-server-check-permissions-by-claims-in-access-token/client/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample02/client/controller/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample02.client.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/")
10 | public String home() {
11 | return "Hello, this is client-1.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/resource-server-check-permissions-by-claims-in-access-token/resource-server/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample02/resource/server/ResourceServerApplication.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample02.resource.server;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ResourceServerApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ResourceServerApplication.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/resource-server-check-permissions-by-claims-in-access-token/resource-server/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample02/resource/server/controller/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample02.resource.server.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/")
10 | public String home() {
11 | return "Hello, this is resource-server-1.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/resource-server-check-permissions-by-claims-in-access-token/resource-server/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | # Please fill these placeholders before running this application:
2 | # 1. ${TENANT_ID}
3 | # 2. ${RESOURCE_SERVER_1_CLIENT_ID}
4 |
5 | logging:
6 | level:
7 | root: DEBUG
8 | server:
9 | port: 8081
10 | spring:
11 | security:
12 | oauth2:
13 | resourceserver:
14 | jwt:
15 | jwk-set-uri: https://login.microsoftonline.com/${TENANT_ID}/discovery/v2.0/keys
16 | issuer-uri: https://login.microsoftonline.com/${TENANT_ID}/v2.0
17 | audience: ${RESOURCE_SERVER_1_CLIENT_ID}
18 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/resource-server-check-permissions-by-claims-in-access-token/terraform/kill-port.ps1:
--------------------------------------------------------------------------------
1 | param ($port)
2 |
3 | $foundProcesses = netstat -ano|findstr $port
4 | $activePortPattern = ":$port\s.+LISTENING\s+\d+$"
5 | $pidNumberPattern = "\d+$"
6 |
7 | IF ($foundProcesses | Select-String -Pattern $activePortPattern -Quiet) {
8 | $matches = $foundProcesses | Select-String -Pattern $activePortPattern
9 | $firstMatch = $matches.Matches.Get(0).Value
10 |
11 | $pidNumber = [regex]::match($firstMatch, $pidNumberPattern).Value
12 |
13 | taskkill /pid $pidNumber /f
14 | }
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/resource-server-support-on-behalf-of-flow/client/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample04/client/ClientApplication.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample04.client;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ClientApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ClientApplication.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/resource-server-support-on-behalf-of-flow/client/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample04/client/controller/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample04.client.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/")
10 | public String home() {
11 | return "Hello, this is client-1.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/resource-server-support-on-behalf-of-flow/resource-server-1/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample04/resource/server1/ResourceServerApplication.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample04.resource.server1;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ResourceServerApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ResourceServerApplication.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/resource-server-support-on-behalf-of-flow/resource-server-1/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample04/resource/server1/controller/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample04.resource.server1.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/")
10 | public String home() {
11 | return "Hello, this is resource-server-1.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/resource-server-support-on-behalf-of-flow/resource-server-2/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample04/resource/server2/ResourceServerApplication.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample04.resource.server2;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ResourceServerApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ResourceServerApplication.class, args);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/resource-server-support-on-behalf-of-flow/resource-server-2/src/main/java/com/azure/spring/sample/active/directory/oauth2/servlet/sample04/resource/server2/controller/HomeController.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.active.directory.oauth2.servlet.sample04.resource.server2.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | @RestController
7 | public class HomeController {
8 |
9 | @GetMapping("/")
10 | public String home() {
11 | return "Hello, this is resource-server-2.";
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/resource-server-support-on-behalf-of-flow/resource-server-2/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | # Please fill these placeholders before running this application:
2 | # 1. ${TENANT_ID}
3 | # 2. ${RESOURCE_SERVER_2_CLIENT_ID}
4 |
5 | logging:
6 | level:
7 | root: DEBUG
8 | server:
9 | port: 8082
10 | spring:
11 | security:
12 | oauth2:
13 | resourceserver:
14 | jwt:
15 | jwk-set-uri: https://login.microsoftonline.com/${TENANT_ID}/discovery/v2.0/keys
16 | issuer-uri: https://login.microsoftonline.com/${TENANT_ID}/v2.0
17 | audience: ${RESOURCE_SERVER_2_CLIENT_ID}
18 |
--------------------------------------------------------------------------------
/aad/spring-security/servlet/oauth2/resource-server-support-on-behalf-of-flow/terraform/kill-port.ps1:
--------------------------------------------------------------------------------
1 | param ($port)
2 |
3 | $foundProcesses = netstat -ano|findstr $port
4 | $activePortPattern = ":$port\s.+LISTENING\s+\d+$"
5 | $pidNumberPattern = "\d+$"
6 |
7 | IF ($foundProcesses | Select-String -Pattern $activePortPattern -Quiet) {
8 | $matches = $foundProcesses | Select-String -Pattern $activePortPattern
9 | $firstMatch = $matches.Matches.Get(0).Value
10 |
11 | $pidNumber = [regex]::match($firstMatch, $pidNumberPattern).Value
12 |
13 | taskkill /pid $pidNumber /f
14 | }
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-appconfiguration-config/spring-cloud-azure-appconfiguration-config-convert-sample/README.md:
--------------------------------------------------------------------------------
1 | ---
2 | page_type: sample
3 | languages:
4 | - java
5 | products:
6 | - azure-app-configuration
7 | name: Converting a Spring Boot Application With Cosmos Db to Be Using App Configuration and Key Vault
8 | description: This sample demonstrates how to convert a Spring Boot application with Cosmos DB to be using App Configuration and Key Vault.
9 | ---
10 |
11 | # Converting a Spring Boot Application With Cosmos Db to Be Using App Configuration and Key Vault
12 |
13 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-appconfiguration-config/spring-cloud-azure-appconfiguration-config-convert-sample/spring-cloud-azure-appconfiguration-config-convert-sample-complete/README.md:
--------------------------------------------------------------------------------
1 | Please refer to [spring-cloud-azure-appconfiguration-config-convert-sample-initial](../spring-cloud-azure-appconfiguration-config-convert-sample-initial/README.md) to get more information about this sample.
2 |
3 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-appconfiguration-config/spring-cloud-azure-appconfiguration-config-convert-sample/spring-cloud-azure-appconfiguration-config-convert-sample-complete/src/main/java/sample/convert/UserRepository.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package sample.convert;
5 |
6 | import com.azure.spring.data.cosmos.repository.ReactiveCosmosRepository;
7 | import org.springframework.stereotype.Repository;
8 | import reactor.core.publisher.Flux;
9 |
10 | @Repository
11 | public interface UserRepository extends ReactiveCosmosRepository {
12 |
13 | Flux findByFirstName(String firstName);
14 | }
15 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-appconfiguration-config/spring-cloud-azure-appconfiguration-config-convert-sample/spring-cloud-azure-appconfiguration-config-convert-sample-complete/src/main/resources/bootstrap.properties:
--------------------------------------------------------------------------------
1 | spring.cloud.azure.appconfiguration.stores[0].connection-string=${CONFIG_STORE_CONNECTION_STRING}
2 | spring.cloud.azure.cosmos.endpoint=${COSMOS-URL}
3 | spring.cloud.azure.cosmos.key=${COSMOS-KEY}
4 | spring.cloud.azure.cosmos.database=${COSMOS-DATABASENAME}
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-appconfiguration-config/spring-cloud-azure-appconfiguration-config-convert-sample/spring-cloud-azure-appconfiguration-config-convert-sample-initial/src/main/java/sample/convert/UserRepository.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package sample.convert;
5 |
6 | import com.azure.spring.data.cosmos.repository.ReactiveCosmosRepository;
7 | import org.springframework.stereotype.Repository;
8 | import reactor.core.publisher.Flux;
9 |
10 | @Repository
11 | public interface UserRepository extends ReactiveCosmosRepository {
12 |
13 | Flux findByFirstName(String firstName);
14 | }
15 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-appconfiguration-config/spring-cloud-azure-appconfiguration-config-convert-sample/spring-cloud-azure-appconfiguration-config-convert-sample-initial/src/main/resources/application.properties:
--------------------------------------------------------------------------------
1 | spring.cloud.azure.cosmos.endpoint=${COSMOS-URL}
2 | spring.cloud.azure.cosmos.key=${COSMOS-KEY}
3 | spring.cloud.azure.cosmos.database=${COSMOS-DATABASENAME}
4 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-appconfiguration-config/spring-cloud-azure-appconfiguration-config-sample/src/main/java/com/example/BootstrapConfiguration.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.example;
4 |
5 | import org.slf4j.Logger;
6 | import org.slf4j.LoggerFactory;
7 | import org.springframework.context.annotation.Configuration;
8 |
9 | @Configuration
10 | public class BootstrapConfiguration {
11 |
12 | private static final Logger LOGGER = LoggerFactory.getLogger(BootstrapConfiguration.class);
13 | }
14 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-appconfiguration-config/spring-cloud-azure-appconfiguration-config-sample/src/main/java/com/example/MessageProperties.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.example;
4 |
5 | import org.springframework.boot.context.properties.ConfigurationProperties;
6 |
7 | @ConfigurationProperties(prefix = "config")
8 | public class MessageProperties {
9 | private String message;
10 |
11 | public String getMessage() {
12 | return message;
13 | }
14 |
15 | public void setMessage(String message) {
16 | this.message = message;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-appconfiguration-config/spring-cloud-azure-appconfiguration-config-sample/src/main/resources/bootstrap.yaml:
--------------------------------------------------------------------------------
1 | # Use default application name and no profile configured
2 | # Keys starting with /application/ will be matched
3 | spring:
4 | cloud:
5 | azure:
6 | appconfiguration:
7 | stores:
8 | - connection-string: ${CONFIG_STORE_CONNECTION_STRING}
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-appconfiguration-config/spring-cloud-azure-appconfiguration-config-sample/src/main/resources/data/sample-data.json:
--------------------------------------------------------------------------------
1 | {
2 | "/application/config.message": "hello from default application",
3 | "/application_dev/config.message": "hello from default application dev profile",
4 | "/foo/config.message": "hello from foo application",
5 | "/foo_dev/config.message": "hello from foo application dev profile"
6 | }
7 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-feature-management-web/spring-cloud-azure-feature-management-web-sample/src/main/java/com/example/FeatureManagerWebApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.example;
4 |
5 | import org.springframework.boot.SpringApplication;
6 | import org.springframework.boot.autoconfigure.SpringBootApplication;
7 |
8 | @SpringBootApplication
9 | public class FeatureManagerWebApplication {
10 | public static void main(String[] args) {
11 | SpringApplication.run(FeatureManagerWebApplication.class, args);
12 | }
13 |
14 | }
15 |
16 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-feature-management-web/spring-cloud-azure-feature-management-web-sample/src/main/resources/data/sample-data.yml:
--------------------------------------------------------------------------------
1 | .appconfig:
2 | featureflag/Beta: >-
3 | {"id":"Beta","description":"Test
4 | Feature","enabled":true,"conditions":{"client_filters":[{"name":"Random","parameters":{"chance":"50"}}]}}
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-feature-management-web/spring-cloud-azure-targeting-filter-web-sample/images/default-page.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/appconfiguration/spring-cloud-azure-feature-management-web/spring-cloud-azure-targeting-filter-web-sample/images/default-page.png
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-feature-management-web/spring-cloud-azure-targeting-filter-web-sample/images/page-with-included-user-id.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/appconfiguration/spring-cloud-azure-feature-management-web/spring-cloud-azure-targeting-filter-web-sample/images/page-with-included-user-id.png
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-feature-management-web/spring-cloud-azure-targeting-filter-web-sample/src/main/java/com/example/demo/DemoApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.example.demo;
4 |
5 | import org.springframework.boot.SpringApplication;
6 | import org.springframework.boot.autoconfigure.SpringBootApplication;
7 |
8 | @SpringBootApplication
9 | public class DemoApplication {
10 |
11 | public static void main(String[] args) {
12 | SpringApplication.run(DemoApplication.class, args);
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-feature-management-web/spring-cloud-azure-targeting-filter-web-sample/src/main/resources/data/sample-data.yml:
--------------------------------------------------------------------------------
1 | .appconfig:
2 | featureflag/beta: >-
3 | {"id":"beta","description":"Test
4 | Feature","enabled":true,"conditions":{"client_filters":[{"name":"targetingFilter","parameters":{"Audience":{"Users":["Jeff","Alicia"],"Groups":[{"Name":"Ring0","RolloutPercentage":100},{"Name":"Ring1","RolloutPercentage":100}],"DefaultRolloutPercentage":50,"Exclusion":{"Users":["Ross"],"Groups":["Ring2"]}}}}]}}
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-feature-management-web/spring-cloud-azure-targeting-filter-web-sample/src/main/resources/static/css/main.css:
--------------------------------------------------------------------------------
1 | html {
2 | position: relative;
3 | min-height: 100%;
4 | }
5 | body {
6 | margin-bottom: 60px;
7 | }
8 | .footer {
9 | position: absolute;
10 | bottom: 0;
11 | width: 100%;
12 | height: 60px;
13 | line-height: 60px;
14 | background-color: #f5f5f5;
15 | }
16 |
17 | body > .container {
18 | padding: 60px 15px 0;
19 | }
20 |
21 | .footer > .container {
22 | padding-right: 15px;
23 | padding-left: 15px;
24 | }
25 |
26 | code {
27 | font-size: 80%;
28 | }
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-feature-management/spring-cloud-azure-feature-management-sample/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | feature-management:
2 | beta:
3 | enabled-for:
4 | - name: Random
5 | parameters:
6 | chance: "80"
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-feature-management/spring-cloud-azure-feature-management-sample/src/main/resources/data/sample-data.yml:
--------------------------------------------------------------------------------
1 | .appconfig:
2 | featureflag/Beta: >-
3 | {"id":"Beta","description":"Test
4 | Feature","enabled":true,"conditions":{"client_filters":[{"name":"Random","parameters":{"chance":"50"}}]}}
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-starter-appconfiguration-config/spring-cloud-azure-starter-appconfiguration-config-entraid-sample/src/main/java/example/AppConfiguration.java:
--------------------------------------------------------------------------------
1 | package example;
2 |
3 | import org.springframework.context.annotation.Bean;
4 | import org.springframework.context.annotation.Configuration;
5 |
6 | @Configuration
7 | public class AppConfiguration {
8 |
9 | @Bean
10 | public AppConfigClientCustomizer clientCustomizers() {
11 | return new AppConfigClientCustomizer();
12 | }
13 |
14 | }
15 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-starter-appconfiguration-config/spring-cloud-azure-starter-appconfiguration-config-entraid-sample/src/main/java/example/Application.java:
--------------------------------------------------------------------------------
1 | package example;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 | import org.springframework.boot.context.properties.EnableConfigurationProperties;
6 |
7 | @SpringBootApplication
8 | @EnableConfigurationProperties
9 | public class Application {
10 |
11 | public static void main(String[] args) {
12 | SpringApplication.run(Application.class, args);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-starter-appconfiguration-config/spring-cloud-azure-starter-appconfiguration-config-entraid-sample/src/main/resources/META-INF/spring.factories:
--------------------------------------------------------------------------------
1 | org.springframework.cloud.bootstrap.BootstrapConfiguration=\
2 | example.AppConfiguration
3 |
4 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-starter-appconfiguration-config/spring-cloud-azure-starter-appconfiguration-config-entraid-sample/src/main/resources/bootstrap.properties:
--------------------------------------------------------------------------------
1 | spring.cloud.azure.appconfiguration.stores[0].endpoint=${CONFIG_STORE_ENDPOINT}
2 |
3 | spring.cloud.azure.appconfiguration.stores[0].monitoring.enabled=true
4 | spring.cloud.azure.appconfiguration.stores[0].monitoring.refresh-interval=5s
5 | spring.cloud.azure.appconfiguration.stores[0].monitoring.triggers[0].key=sentinel
6 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-starter-appconfiguration-config/spring-cloud-azure-starter-appconfiguration-config-sample/src/main/java/example/Application.java:
--------------------------------------------------------------------------------
1 | package example;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 | import org.springframework.boot.context.properties.EnableConfigurationProperties;
6 |
7 | @SpringBootApplication
8 | @EnableConfigurationProperties
9 | public class Application {
10 |
11 | public static void main(String[] args) {
12 | SpringApplication.run(Application.class, args);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-starter-appconfiguration-config/spring-cloud-azure-starter-appconfiguration-config-sample/src/main/resources/bootstrap.properties:
--------------------------------------------------------------------------------
1 | spring.cloud.azure.appconfiguration.stores[0].connection-string=${CONFIG_STORE_CONNECTION_STRING}
2 |
3 | spring.cloud.azure.appconfiguration.stores[0].selects[0].label-filter=,${spring.profiles.active}
4 | spring.cloud.azure.appconfiguration.stores[0].monitoring.enabled=true
5 | spring.cloud.azure.appconfiguration.stores[0].monitoring.refresh-interval=5s
6 | spring.cloud.azure.appconfiguration.stores[0].monitoring.triggers[0].key=sentinel
7 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-starter-appconfiguration/appconfiguration-client/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | appconfiguration:
5 | endpoint: ${APPCONFIGURATION_ENDPOINT}
6 |
7 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-starter-appconfiguration/appconfiguration-client/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "APPCONFIGURATION_ENDPOINT" {
2 | value = azurerm_app_configuration.appconfig_resource.endpoint
3 | description = "The app configuration endpoint."
4 | }
5 |
6 | output "RESOURCE_GROUP_NAME" {
7 | value = azurerm_resource_group.main.name
8 | description = "The resource group name."
9 | }
10 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-starter-appconfiguration/appconfiguration-client/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:APPCONFIGURATION_ENDPOINT=$(terraform -chdir=terraform output -raw APPCONFIGURATION_ENDPOINT)
2 |
3 | echo APPCONFIGURATION_ENDPOINT=$env:APPCONFIGURATION_ENDPOINT
4 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-starter-appconfiguration/appconfiguration-client/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export APPCONFIGURATION_ENDPOINT=$(terraform -chdir=./terraform output -raw APPCONFIGURATION_ENDPOINT)
2 | echo APPCONFIGURATION_ENDPOINT=$APPCONFIGURATION_ENDPOINT
3 |
--------------------------------------------------------------------------------
/appconfiguration/spring-cloud-azure-starter-appconfiguration/appconfiguration-client/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "appconfiguration-client"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/cache/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cache/.gitignore
--------------------------------------------------------------------------------
/cache/spring-cloud-azure-redis-sample-passwordless/src/main/java/com/azure/spring/sample/cache/CachePasswordlessApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.cache;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 | import org.springframework.cache.annotation.EnableCaching;
9 |
10 | @SpringBootApplication
11 | @EnableCaching
12 | public class CachePasswordlessApplication {
13 |
14 | public static void main(String[] args) {
15 | SpringApplication.run(CachePasswordlessApplication.class, args);
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/cache/spring-cloud-azure-redis-sample-passwordless/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | data:
3 | redis:
4 | host: ${AZURE_CACHE_REDIS_HOST}
5 | port: 6380
6 | username: ${AZURE_CACHE_REDIS_USERNAME}
7 | ssl:
8 | enabled: true
9 | azure:
10 | passwordless-enabled: true
11 |
--------------------------------------------------------------------------------
/cache/spring-cloud-azure-redis-sample-passwordless/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "AZURE_CACHE_REDIS_HOST" {
2 | value = azurerm_redis_cache.redis.hostname
3 | description = "The host name of the Redis instance."
4 | }
5 |
6 | output "AZURE_CACHE_REDIS_USERNAME" {
7 | value = data.azuread_client_config.current.object_id
8 | description = "The username of the Redis instance."
9 | }
--------------------------------------------------------------------------------
/cache/spring-cloud-azure-redis-sample-passwordless/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:AZURE_CACHE_REDIS_HOST=$(terraform -chdir=terraform output -raw AZURE_CACHE_REDIS_HOST)
2 | $env:AZURE_CACHE_REDIS_USERNAME=$(terraform -chdir=terraform output -raw AZURE_CACHE_REDIS_USERNAME)
3 |
4 | echo AZURE_CACHE_REDIS_HOST=$env:AZURE_CACHE_REDIS_HOST
5 | echo AZURE_CACHE_REDIS_USERNAME=$env:AZURE_CACHE_REDIS_USERNAME
6 |
--------------------------------------------------------------------------------
/cache/spring-cloud-azure-redis-sample-passwordless/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export AZURE_CACHE_REDIS_HOST=$(terraform -chdir=./terraform output -raw AZURE_CACHE_REDIS_HOST)
2 | export AZURE_CACHE_REDIS_USERNAME=$(terraform -chdir=./terraform output -raw AZURE_CACHE_REDIS_USERNAME)
3 |
4 | echo AZURE_CACHE_REDIS_HOST=AZURE_CACHE_REDIS_HOST
5 | echo AZURE_CACHE_REDIS_USERNAME=AZURE_CACHE_REDIS_USERNAME
6 |
--------------------------------------------------------------------------------
/cache/spring-cloud-azure-redis-sample-passwordless/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "cache-sample"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/cache/spring-cloud-azure-redis-sample/src/main/java/com/azure/spring/sample/cache/CacheApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.cache;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 | import org.springframework.cache.annotation.EnableCaching;
9 |
10 | @SpringBootApplication
11 | @EnableCaching
12 | public class CacheApplication {
13 |
14 | public static void main(String[] args) {
15 | SpringApplication.run(CacheApplication.class, args);
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/cache/spring-cloud-azure-redis-sample/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | profile:
5 | subscription-id: ${AZURE_SUBSCRIPTION_ID}
6 | redis:
7 | name: ${AZURE_CACHE_REDIS_NAME}
8 | resource:
9 | resource-group: ${AZURE_RESOURCE_GROUP}
10 |
--------------------------------------------------------------------------------
/cache/spring-cloud-azure-redis-sample/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "AZURE_SUBSCRIPTION_ID" {
2 | value = data.azurerm_subscription.current.subscription_id
3 | description = "The subscription ID of the resource."
4 | }
5 |
6 | output "AZURE_RESOURCE_GROUP" {
7 | value = azurerm_redis_cache.redis.resource_group_name
8 | description = "The resource group name of the resource."
9 | }
10 |
11 | output "AZURE_CACHE_REDIS_NAME" {
12 | value = azurerm_redis_cache.redis.name
13 | description = "The DNS name of the Redis instance."
14 | }
15 |
--------------------------------------------------------------------------------
/cache/spring-cloud-azure-redis-sample/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:AZURE_SUBSCRIPTION_ID=$(terraform -chdir=terraform output -raw AZURE_SUBSCRIPTION_ID)
2 | $env:AZURE_RESOURCE_GROUP=$(terraform -chdir=terraform output -raw AZURE_RESOURCE_GROUP)
3 | $env:AZURE_CACHE_REDIS_NAME=$(terraform -chdir=terraform output -raw AZURE_CACHE_REDIS_NAME)
4 |
5 | echo AZURE_SUBSCRIPTION_ID=$env:AZURE_SUBSCRIPTION_ID
6 | echo AZURE_RESOURCE_GROUP=$env:AZURE_RESOURCE_GROUP
7 | echo AZURE_CACHE_REDIS_NAME=$env:AZURE_CACHE_REDIS_NAME
8 |
--------------------------------------------------------------------------------
/cache/spring-cloud-azure-redis-sample/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export AZURE_SUBSCRIPTION_ID=$(terraform -chdir=./terraform output -raw AZURE_SUBSCRIPTION_ID)
2 | export AZURE_RESOURCE_GROUP=$(terraform -chdir=./terraform output -raw AZURE_RESOURCE_GROUP)
3 | export AZURE_CACHE_REDIS_NAME=$(terraform -chdir=./terraform output -raw AZURE_CACHE_REDIS_NAME)
4 |
5 | echo AZURE_SUBSCRIPTION_ID=$AZURE_SUBSCRIPTION_ID
6 | echo AZURE_RESOURCE_GROUP=$AZURE_RESOURCE_GROUP
7 | echo AZURE_CACHE_REDIS_NAME=$AZURE_CACHE_REDIS_NAME
8 |
--------------------------------------------------------------------------------
/cache/spring-cloud-azure-redis-sample/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "cache-sample"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/cosmos/.gitignore:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/.gitignore
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-aad-sample/media/aad-app.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-aad-sample/media/aad-app.png
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-aad-sample/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | profiles:
3 | active: dev
4 | data:
5 | cosmos:
6 | uri:
7 | tenantId:
8 | clientId:
9 | clientSecret:
10 | defaultScope: https://.documents.azure.com/.default
11 | databaseName: testdb
12 | queryMetricsEnabled: true
13 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-database-multi-account/resource/result-in-mysql.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-multi-database-multi-account/resource/result-in-mysql.png
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-database-multi-account/resource/result-in-primary-cosmos-database.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-multi-database-multi-account/resource/result-in-primary-cosmos-database.png
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-database-multi-account/resource/result-in-secondary-cosmos-database.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-multi-database-multi-account/resource/result-in-secondary-cosmos-database.png
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-database-multi-account/src/main/java/com/azure/spring/sample/cosmos/multi/database/multiple/account/repository/cosmos/CosmosUserRepository.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.cosmos.multi.database.multiple.account.repository.cosmos;
5 | import com.azure.spring.data.cosmos.repository.ReactiveCosmosRepository;
6 | import org.springframework.stereotype.Repository;
7 |
8 | @Repository
9 | public interface CosmosUserRepository extends ReactiveCosmosRepository {
10 | }
11 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-database-multi-account/src/main/java/com/azure/spring/sample/cosmos/multi/database/multiple/account/repository/mysql/MysqlUserRepository.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.sample.cosmos.multi.database.multiple.account.repository.mysql;
2 |
3 | import org.springframework.data.repository.CrudRepository;
4 |
5 | public interface MysqlUserRepository extends CrudRepository {
6 |
7 | }
8 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-database-single-account/resource/result-in-cosmos-database1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-multi-database-single-account/resource/result-in-cosmos-database1.png
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-database-single-account/resource/result-in-cosmos-database2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-multi-database-single-account/resource/result-in-cosmos-database2.png
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-database-single-account/src/main/java/com/azure/spring/sample/cosmos/multi/database/repository1/User1Repository.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.cosmos.multi.database.repository1;
5 |
6 | import com.azure.spring.data.cosmos.repository.ReactiveCosmosRepository;
7 | import org.springframework.stereotype.Repository;
8 |
9 | @Repository
10 | public interface User1Repository extends ReactiveCosmosRepository {
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-database-single-account/src/main/java/com/azure/spring/sample/cosmos/multi/database/repository2/User2Repository.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.cosmos.multi.database.repository2;
5 |
6 | import com.azure.spring.data.cosmos.repository.ReactiveCosmosRepository;
7 | import org.springframework.stereotype.Repository;
8 |
9 | @Repository
10 | public interface User2Repository extends ReactiveCosmosRepository {
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-database-single-account/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | azure:
2 | cosmos:
3 | uri: ${AZURE_COSMOS_URI}
4 | key: ${AZURE_COSMOS_KEY}
5 | secondary-key: ${AZURE_COSMOS_SECONDARY_KEY}
6 | database: ${AZURE_COSMOS_DATABASE}
7 | populate-query-metrics: if-populate-query-metrics
8 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-database-single-account/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:AZURE_COSMOS_URI=$(terraform -chdir=terraform output -raw azure_cosmos_endpoint)
2 | $env:AZURE_COSMOS_KEY=$(terraform -chdir=terraform output -raw azure_cosmos_primary_key)
3 | $env:AZURE_COSMOS_SECONDARY_KEY=$(terraform -chdir=terraform output -raw azure_cosmos_secondary_key)
4 | $env:AZURE_COSMOS_DATABASE=$(terraform -chdir=terraform output -raw cosmos_database_name)
5 |
6 | echo AZURE_COSMOS_URI=$env:AZURE_COSMOS_URI
7 | echo AZURE_COSMOS_KEY=$env:AZURE_COSMOS_KEY
8 | echo AZURE_COSMOS_SECONDARY_KEY=$env:AZURE_COSMOS_SECONDARY_KEY
9 | echo AZURE_COSMOS_DATABASE=$env:AZURE_COSMOS_DATABASE
10 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-database-single-account/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export AZURE_COSMOS_URI=$(terraform -chdir=./terraform output -raw azure_cosmos_endpoint)
2 | export AZURE_COSMOS_KEY=$(terraform -chdir=./terraform output -raw azure_cosmos_primary_key)
3 | export AZURE_COSMOS_SECONDARY_KEY=$(terraform -chdir=./terraform output -raw azure_cosmos_secondary_key)
4 | export AZURE_COSMOS_DATABASE=$(terraform -chdir=./terraform output -raw cosmos_database_name)
5 |
6 | echo AZURE_COSMOS_URI=$AZURE_COSMOS_URI
7 | echo AZURE_COSMOS_KEY=$AZURE_COSMOS_KEY
8 | echo AZURE_COSMOS_SECONDARY_KEY=$AZURE_COSMOS_SECONDARY_KEY
9 | echo AZURE_COSMOS_DATABASE=$AZURE_COSMOS_DATABASE
10 |
11 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-tenant-samples/multi-tenant-by-container/src/main/java/com/azure/spring/data/cosmos/example/Application.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.azure.spring.data.cosmos.example;
4 |
5 | import org.springframework.boot.SpringApplication;
6 | import org.springframework.boot.autoconfigure.SpringBootApplication;
7 |
8 | @SpringBootApplication
9 | public class Application {
10 | public static void main(String[] args) {
11 | SpringApplication.run(Application.class, args);
12 | }
13 | }
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-tenant-samples/multi-tenant-by-container/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | data:
3 | cosmos:
4 | uri: ${ACCOUNT_HOST}
5 | key: ${ACCOUNT_KEY}
6 | databaseName: tenants
7 | partitionKeyPath: /lastName
8 | queryMetricsEnabled: true
9 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-tenant-samples/multi-tenant-by-database/src/main/java/com/azure/spring/data/cosmos/example/Application.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.azure.spring.data.cosmos.example;
4 |
5 | import org.springframework.boot.SpringApplication;
6 | import org.springframework.boot.autoconfigure.SpringBootApplication;
7 |
8 | @SpringBootApplication
9 | public class Application {
10 | public static void main(String[] args) {
11 | SpringApplication.run(Application.class, args);
12 | }
13 | }
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-tenant-samples/multi-tenant-by-database/src/main/java/com/azure/spring/data/cosmos/example/OrderRepository.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.azure.spring.data.cosmos.example;
4 |
5 | import com.azure.spring.data.cosmos.repository.CosmosRepository;
6 | import org.springframework.stereotype.Repository;
7 |
8 | @Repository
9 | public interface OrderRepository extends CosmosRepository {
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-tenant-samples/multi-tenant-by-database/src/main/java/com/azure/spring/data/cosmos/example/UserRepository.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.azure.spring.data.cosmos.example;
4 |
5 | import com.azure.spring.data.cosmos.repository.CosmosRepository;
6 | import org.springframework.stereotype.Repository;
7 |
8 | @Repository
9 | public interface UserRepository extends CosmosRepository {
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-multi-tenant-samples/multi-tenant-by-database/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | data:
3 | cosmos:
4 | uri: ${ACCOUNT_HOST}
5 | key: ${ACCOUNT_KEY}
6 | databaseName: default
7 | queryMetricsEnabled: true
8 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/BookStore.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/BookStore.png
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/java/com/azure/spring/data/cosmos/sample/ebookstore/EBookStoreApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.azure.spring.data.cosmos.sample.ebookstore;
4 |
5 | import org.springframework.boot.SpringApplication;
6 | import org.springframework.boot.autoconfigure.SpringBootApplication;
7 |
8 | @SpringBootApplication
9 | public class EBookStoreApplication {
10 | public static void main(String[] args) {
11 | SpringApplication.run(EBookStoreApplication.class, args);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/java/com/azure/spring/data/cosmos/sample/ebookstore/Session/SessionConfig.java:
--------------------------------------------------------------------------------
1 | package com.azure.spring.data.cosmos.sample.ebookstore.Session;
2 |
3 | import org.springframework.context.annotation.Configuration;
4 | import org.springframework.session.web.context.AbstractHttpSessionApplicationInitializer;
5 |
6 | @Configuration
7 | public class SessionConfig extends AbstractHttpSessionApplicationInitializer {
8 | }
9 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/java/com/azure/spring/data/cosmos/sample/ebookstore/controller/order/CheckOutForm.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.azure.spring.data.cosmos.sample.ebookstore.controller.order;
4 |
5 | public class CheckOutForm {
6 | }
7 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/java/com/azure/spring/data/cosmos/sample/ebookstore/model/book/BookRepository.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.azure.spring.data.cosmos.sample.ebookstore.model.book;
4 |
5 | import com.azure.spring.data.cosmos.repository.CosmosRepository;
6 | import org.springframework.stereotype.Repository;
7 |
8 | @Repository
9 | public interface BookRepository extends CosmosRepository {
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/java/com/azure/spring/data/cosmos/sample/ebookstore/model/cart/CartRepository.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.azure.spring.data.cosmos.sample.ebookstore.model.cart;
4 |
5 | import com.azure.spring.data.cosmos.repository.CosmosRepository;
6 | import org.springframework.stereotype.Repository;
7 |
8 | @Repository
9 | public interface CartRepository extends CosmosRepository {
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/java/com/azure/spring/data/cosmos/sample/ebookstore/model/cart/CartService.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.azure.spring.data.cosmos.sample.ebookstore.model.cart;
4 |
5 | public interface CartService {
6 | public void removeItemFromCart(String cartId, String itemId);
7 | public Integer getNumberOfItemsInTheCart(String id);
8 | public void deleteCart(String id, String partitionKey);
9 | public void addItemToCart(String cartId, CartItem item);
10 | public Cart getCart(String id);
11 | }
12 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/java/com/azure/spring/data/cosmos/sample/ebookstore/model/customer/CustomerRepository.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.azure.spring.data.cosmos.sample.ebookstore.model.customer;
4 |
5 | import com.azure.spring.data.cosmos.repository.CosmosRepository;
6 | import org.springframework.stereotype.Repository;
7 |
8 | @Repository
9 | public interface CustomerRepository extends CosmosRepository {
10 | }
11 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring.main.allow-circular-references: true
2 | server:
3 | port: 81
4 | azure:
5 | cosmos:
6 | bookstore:
7 | uri:
8 | key:
9 | secondaryKey:
10 | storeDatabase: store
11 | securityDatabase: security
12 | populateQueryMetrics: if-populate-query-metrics
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/logback.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/scss/_animated.scss:
--------------------------------------------------------------------------------
1 | // Animated Icons
2 | // --------------------------
3 |
4 | .#{$fa-css-prefix}-spin {
5 | animation: fa-spin 2s infinite linear;
6 | }
7 |
8 | .#{$fa-css-prefix}-pulse {
9 | animation: fa-spin 1s infinite steps(8);
10 | }
11 |
12 | @keyframes fa-spin {
13 | 0% {
14 | transform: rotate(0deg);
15 | }
16 |
17 | 100% {
18 | transform: rotate(360deg);
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/scss/_bordered-pulled.scss:
--------------------------------------------------------------------------------
1 | // Bordered & Pulled
2 | // -------------------------
3 |
4 | .#{$fa-css-prefix}-border {
5 | border: solid .08em $fa-border-color;
6 | border-radius: .1em;
7 | padding: .2em .25em .15em;
8 | }
9 |
10 | .#{$fa-css-prefix}-pull-left { float: left; }
11 | .#{$fa-css-prefix}-pull-right { float: right; }
12 |
13 | .#{$fa-css-prefix},
14 | .fas,
15 | .far,
16 | .fal,
17 | .fab {
18 | &.#{$fa-css-prefix}-pull-left { margin-right: .3em; }
19 | &.#{$fa-css-prefix}-pull-right { margin-left: .3em; }
20 | }
21 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/scss/_core.scss:
--------------------------------------------------------------------------------
1 | // Base Class Definition
2 | // -------------------------
3 |
4 | .#{$fa-css-prefix},
5 | .fas,
6 | .far,
7 | .fal,
8 | .fab {
9 | -moz-osx-font-smoothing: grayscale;
10 | -webkit-font-smoothing: antialiased;
11 | display: inline-block;
12 | font-style: normal;
13 | font-variant: normal;
14 | text-rendering: auto;
15 | line-height: 1;
16 | }
17 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/scss/_fixed-width.scss:
--------------------------------------------------------------------------------
1 | // Fixed Width Icons
2 | // -------------------------
3 | .#{$fa-css-prefix}-fw {
4 | text-align: center;
5 | width: (20em / 16);
6 | }
7 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/scss/_larger.scss:
--------------------------------------------------------------------------------
1 | // Icon Sizes
2 | // -------------------------
3 |
4 | // makes the font 33% larger relative to the icon container
5 | .#{$fa-css-prefix}-lg {
6 | font-size: (4em / 3);
7 | line-height: (3em / 4);
8 | vertical-align: -.0667em;
9 | }
10 |
11 | .#{$fa-css-prefix}-xs {
12 | font-size: .75em;
13 | }
14 |
15 | .#{$fa-css-prefix}-sm {
16 | font-size: .875em;
17 | }
18 |
19 | @for $i from 1 through 10 {
20 | .#{$fa-css-prefix}-#{$i}x {
21 | font-size: $i * 1em;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/scss/_list.scss:
--------------------------------------------------------------------------------
1 | // List Icons
2 | // -------------------------
3 |
4 | .#{$fa-css-prefix}-ul {
5 | list-style-type: none;
6 | margin-left: $fa-li-width * 5/4;
7 | padding-left: 0;
8 |
9 | > li { position: relative; }
10 | }
11 |
12 | .#{$fa-css-prefix}-li {
13 | left: -$fa-li-width;
14 | position: absolute;
15 | text-align: center;
16 | width: $fa-li-width;
17 | line-height: inherit;
18 | }
19 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/scss/_screen-reader.scss:
--------------------------------------------------------------------------------
1 | // Screen Readers
2 | // -------------------------
3 |
4 | .sr-only { @include sr-only; }
5 | .sr-only-focusable { @include sr-only-focusable; }
6 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/scss/fontawesome.scss:
--------------------------------------------------------------------------------
1 | /*!
2 | * Font Awesome Free 5.0.8 by @fontawesome - https://fontawesome.com
3 | * License - https://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
4 | */
5 | @import 'variables';
6 | @import 'mixins';
7 | @import 'core';
8 | @import 'larger';
9 | @import 'fixed-width';
10 | @import 'list';
11 | @import 'bordered-pulled';
12 | @import 'animated';
13 | @import 'rotated-flipped';
14 | @import 'stacked';
15 | @import 'icons';
16 | @import 'screen-reader';
17 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-brands-400.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-brands-400.eot
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-brands-400.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-brands-400.ttf
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-brands-400.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-brands-400.woff
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-brands-400.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-brands-400.woff2
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-regular-400.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-regular-400.eot
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-regular-400.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-regular-400.ttf
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-regular-400.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-regular-400.woff
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-regular-400.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-regular-400.woff2
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-solid-900.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-solid-900.eot
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-solid-900.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-solid-900.ttf
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-solid-900.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-solid-900.woff
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-solid-900.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/fontawesome/webfonts/fa-solid-900.woff2
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/material-icons/MaterialIcons-Regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/material-icons/MaterialIcons-Regular.eot
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/material-icons/MaterialIcons-Regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/material-icons/MaterialIcons-Regular.ttf
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/material-icons/MaterialIcons-Regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/material-icons/MaterialIcons-Regular.woff
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/material-icons/MaterialIcons-Regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/material-icons/MaterialIcons-Regular.woff2
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/roboto/Roboto-Bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/roboto/Roboto-Bold.ttf
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/roboto/Roboto-Light.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/roboto/Roboto-Light.ttf
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/roboto/Roboto-Medium.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/roboto/Roboto-Medium.ttf
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/roboto/Roboto-Regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/roboto/Roboto-Regular.ttf
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/roboto/Roboto-Thin.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/roboto/Roboto-Thin.ttf
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/fonts/roboto/font.css:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-family: "Roboto";
3 | src: url(Roboto-Thin.ttf);
4 | font-weight: 200; }
5 | @font-face {
6 | font-family: "Roboto";
7 | src: url(Roboto-Light.ttf);
8 | font-weight: 300; }
9 | @font-face {
10 | font-family: "Roboto";
11 | src: url(Roboto-Regular.ttf);
12 | font-weight: 400; }
13 | @font-face {
14 | font-family: "Roboto";
15 | src: url(Roboto-Medium.ttf);
16 | font-weight: 500; }
17 | @font-face {
18 | font-family: "Roboto";
19 | src: url(Roboto-Bold.ttf);
20 | font-weight: 700; }
21 | /*
22 | font-family: "Roboto", sans-serif;
23 | */
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/AzureAD.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/AzureAD.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/AzureSQL.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/AzureSQL.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/CassandraDefinitiveguide.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/CassandraDefinitiveguide.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/CleanCode.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/CleanCode.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/DockerInPractice.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/DockerInPractice.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/DockerNetworking.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/DockerNetworking.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/ElasticSearchInAction.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/ElasticSearchInAction.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/GoInPractice.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/GoInPractice.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/GraphAlgorithms.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/GraphAlgorithms.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/GuideToGraphDatabases.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/GuideToGraphDatabases.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/JavaConcurrency.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/JavaConcurrency.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/Kubernetes.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/Kubernetes.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/ProgrammingInRuby.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/ProgrammingInRuby.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/RustProgrammingLanguage.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/RustProgrammingLanguage.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/Scala.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/Scala.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/ServiceFabric.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/ServiceFabric.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/SevenDatabasesInSevenWeeks.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/SevenDatabasesInSevenWeeks.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/SpringMicroServices.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/SpringMicroServices.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/blackHatGo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/blackHatGo.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/csharpInANutshell.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/csharpInANutshell.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/dataIntensiveApplication.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/dataIntensiveApplication.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/effectivejava.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/effectivejava.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/getProgrammingWithGo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/getProgrammingWithGo.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/highPerformaceMysql.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/highPerformaceMysql.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/kaafkDefnitiveGuide.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/kaafkDefnitiveGuide.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/masterring-kotlin.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/masterring-kotlin.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/mongodb.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/mongodb.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/node-design-patterns.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/node-design-patterns.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/nodeCookBook.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/nodeCookBook.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/patternsOfEAA.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/patternsOfEAA.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/pragmaticProgrammer.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/pragmaticProgrammer.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/programmingcsharp8.0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/programmingcsharp8.0.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/rabbitMQCookBook.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/rabbitMQCookBook.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/softwareArchitect.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/softwareArchitect.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/unitTesting.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/images/unitTesting.jpg
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/plugins/owlcarousel/assets/ajax-loader.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/plugins/owlcarousel/assets/ajax-loader.gif
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/plugins/owlcarousel/assets/owl.video.play.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/plugins/owlcarousel/assets/owl.video.play.png
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/plugins/slickslider/ajax-loader.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/plugins/slickslider/ajax-loader.gif
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/plugins/slickslider/fonts/slick.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/plugins/slickslider/fonts/slick.eot
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/plugins/slickslider/fonts/slick.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/plugins/slickslider/fonts/slick.ttf
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/plugins/slickslider/fonts/slick.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Azure-Samples/azure-spring-boot-samples/7ba5e6e8a541d4d22d44321851ae9ae60f5be73d/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/main/resources/static/plugins/slickslider/fonts/slick.woff
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-mvc-sample/src/test/java/com/spring/cosmos/ebookstore/StoreApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.spring.cosmos.ebookstore;
2 |
3 | import org.junit.jupiter.api.Test;
4 |
5 | class StoreApplicationTests {
6 | @Test
7 | void contextLoads() {
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-quickstart-samples/src/main/java/com/azure/spring/data/cosmos/samples/quickstart/ReactiveUserRepository.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 | package com.azure.spring.data.cosmos.samples.quickstart;
4 |
5 | import com.azure.spring.data.cosmos.samples.common.User;
6 | import com.azure.spring.data.cosmos.repository.ReactiveCosmosRepository;
7 | import org.springframework.stereotype.Repository;
8 | import reactor.core.publisher.Flux;
9 |
10 | @Repository
11 | public interface ReactiveUserRepository extends ReactiveCosmosRepository {
12 |
13 | Flux findByFirstName(String firstName);
14 | }
15 |
16 |
--------------------------------------------------------------------------------
/cosmos/azure-spring-data-cosmos/cosmos-quickstart-samples/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | data:
3 | cosmos:
4 | uri: ${ACCOUNT_HOST}
5 | key: ${ACCOUNT_KEY}
6 | secondaryKey: ${SECONDARY_ACCOUNT_KEY}
7 | databaseName: testdb
8 | # Set to true to populate query metrics -
9 | # NOTE: this will NOT give request information about point reads (only queries)
10 | # See https://aka.ms/PointReadsInSpring for more information on the difference between point reads and queries.
11 | queryMetricsEnabled: false
12 |
13 |
--------------------------------------------------------------------------------
/cosmos/spring-cloud-azure-starter-cosmos/spring-cloud-azure-cosmos-sample/src/main/java/com/azure/spring/sample/cosmos/common/Pet.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.cosmos.common;
5 |
6 | public class Pet {
7 | public String getGivenName() {
8 | return givenName;
9 | }
10 |
11 | public void setGivenName(String givenName) {
12 | this.givenName = givenName;
13 | }
14 |
15 | private String givenName;
16 | }
17 |
--------------------------------------------------------------------------------
/cosmos/spring-cloud-azure-starter-cosmos/spring-cloud-azure-cosmos-sample/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | cosmos:
5 | endpoint: ${AZURE_COSMOS_ENDPOINT}
6 |
--------------------------------------------------------------------------------
/cosmos/spring-cloud-azure-starter-cosmos/spring-cloud-azure-cosmos-sample/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:AZURE_COSMOS_ENDPOINT=$(terraform -chdir=terraform output -raw azure_cosmos_endpoint)
2 |
3 | echo AZURE_COSMOS_ENDPOINT=$env:AZURE_COSMOS_ENDPOINT
4 |
--------------------------------------------------------------------------------
/cosmos/spring-cloud-azure-starter-cosmos/spring-cloud-azure-cosmos-sample/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export AZURE_COSMOS_ENDPOINT=$(terraform -chdir=./terraform output -raw azure_cosmos_endpoint)
2 |
3 | echo AZURE_COSMOS_ENDPOINT=$AZURE_COSMOS_ENDPOINT
4 |
--------------------------------------------------------------------------------
/cosmos/spring-cloud-azure-starter-cosmos/spring-cloud-azure-cosmos-sample/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "cosmos-sample"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
--------------------------------------------------------------------------------
/cosmos/spring-cloud-azure-starter-data-cosmos/spring-cloud-azure-data-cosmos-sample/src/main/java/com/azure/spring/sample/cosmos/UserRepository.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.cosmos;
5 |
6 | import com.azure.spring.data.cosmos.repository.ReactiveCosmosRepository;
7 | import org.springframework.stereotype.Repository;
8 | import reactor.core.publisher.Flux;
9 |
10 | @Repository
11 | public interface UserRepository extends ReactiveCosmosRepository {
12 |
13 | Flux findByFirstName(String firstName);
14 | }
15 |
--------------------------------------------------------------------------------
/cosmos/spring-cloud-azure-starter-data-cosmos/spring-cloud-azure-data-cosmos-sample/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | cosmos:
5 | endpoint: ${AZURE_COSMOS_ENDPOINT}
6 | database: ${COSMOS_DATABASE}
7 |
8 |
--------------------------------------------------------------------------------
/cosmos/spring-cloud-azure-starter-data-cosmos/spring-cloud-azure-data-cosmos-sample/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:AZURE_COSMOS_ENDPOINT=$(terraform -chdir=terraform output -raw azure_cosmos_endpoint)
2 | $env:COSMOS_DATABASE=$(terraform -chdir=terraform output -raw cosmos_database_name)
3 |
4 | echo AZURE_COSMOS_ENDPOINT=$env:AZURE_COSMOS_ENDPOINT
5 | echo COSMOS_DATABASE=$env:COSMOS_DATABASE
6 |
--------------------------------------------------------------------------------
/cosmos/spring-cloud-azure-starter-data-cosmos/spring-cloud-azure-data-cosmos-sample/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export AZURE_COSMOS_ENDPOINT=$(terraform -chdir=./terraform output -raw azure_cosmos_endpoint)
2 | export COSMOS_DATABASE=$(terraform -chdir=./terraform output -raw cosmos_database_name)
3 |
4 | echo AZURE_COSMOS_ENDPOINT=$AZURE_COSMOS_ENDPOINT
5 | echo COSMOS_DATABASE=$COSMOS_DATABASE
6 |
--------------------------------------------------------------------------------
/eventgrid/spring-cloud-azure-starter-eventgrid/spring-cloud-azure-sample-eventgrid/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | eventgrid:
5 | endpoint: ${AZURE_EVENTGRID_ENDPOINT}
6 | key: ${AZURE_EVENTGRID_KEY}
7 | servicebus:
8 | connection-string: ${AZURE_SERVICEBUS_CONNECTION_STRING}
9 | function:
10 | definition: consume
11 | stream:
12 | bindings:
13 | consume-in-0:
14 | destination: ${AZURE_SERVICEBUS_QUEUE_NAME}
15 | servicebus:
16 | bindings:
17 | consume-in-0:
18 | consumer:
19 | auto-complete: false
20 |
--------------------------------------------------------------------------------
/eventhubs/spring-cloud-azure-starter-eventhubs/eventhubs-client/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | eventhubs:
5 | namespace: ${AZURE_EVENTHUBS_NAMESPACE}
6 | event-hub-name: ${AZURE_EVENTHUB_NAME}
7 | consumer:
8 | consumer-group: $Default
9 |
--------------------------------------------------------------------------------
/eventhubs/spring-cloud-azure-starter-eventhubs/eventhubs-client/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "AZURE_EVENTHUBS_NAMESPACE" {
2 | value = azurerm_eventhub_namespace.eventhubs_namespace.name
3 | description = "The event hubs namespace."
4 | }
5 |
6 | output "AZURE_EVENTHUB_NAME" {
7 | value = azurerm_eventhub.eventhubs.name
8 | description = "The name of created event hubs."
9 | }
10 |
11 | output "RESOURCE_GROUP_NAME" {
12 | value = azurerm_resource_group.main.name
13 | description = "The resource group name."
14 | }
15 |
--------------------------------------------------------------------------------
/eventhubs/spring-cloud-azure-starter-eventhubs/eventhubs-client/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:AZURE_EVENTHUBS_NAMESPACE=$(terraform -chdir=terraform output -raw AZURE_EVENTHUBS_NAMESPACE)
2 | $env:AZURE_EVENTHUB_NAME=$(terraform -chdir=terraform output -raw AZURE_EVENTHUB_NAME)
3 |
4 | echo AZURE_EVENTHUBS_NAMESPACE=$env:AZURE_EVENTHUBS_NAMESPACE
5 | echo AZURE_EVENTHUB_NAME=$env:AZURE_EVENTHUB_NAME
6 |
--------------------------------------------------------------------------------
/eventhubs/spring-cloud-azure-starter-eventhubs/eventhubs-client/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export AZURE_EVENTHUBS_NAMESPACE=$(terraform -chdir=./terraform output -raw AZURE_EVENTHUBS_NAMESPACE)
2 | export AZURE_EVENTHUB_NAME=$(terraform -chdir=./terraform output -raw AZURE_EVENTHUB_NAME)
3 |
4 | echo AZURE_EVENTHUBS_NAMESPACE=$AZURE_EVENTHUBS_NAMESPACE
5 | echo AZURE_EVENTHUB_NAME=$AZURE_EVENTHUB_NAME
6 |
--------------------------------------------------------------------------------
/eventhubs/spring-cloud-azure-starter-eventhubs/eventhubs-client/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "eventhubs-client"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/eventhubs/spring-cloud-azure-starter-integration-eventhubs/eventhubs-integration/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | eventhubs:
5 | namespace: ${AZURE_EVENTHUBS_NAMESPACE}
6 | processor:
7 | checkpoint-store:
8 | container-name: ${AZURE_STORAGE_CONTAINER_NAME}
9 | account-name: ${AZURE_STORAGE_ACCOUNT_NAME}
10 |
--------------------------------------------------------------------------------
/eventhubs/spring-cloud-azure-starter-integration-eventhubs/eventhubs-integration/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:AZURE_EVENTHUBS_NAMESPACE=$(terraform -chdir=terraform output -raw AZURE_EVENTHUBS_NAMESPACE)
2 | $env:AZURE_STORAGE_CONTAINER_NAME=$(terraform -chdir=terraform output -raw AZURE_STORAGE_CONTAINER_NAME)
3 | $env:AZURE_STORAGE_ACCOUNT_NAME=$(terraform -chdir=terraform output -raw AZURE_STORAGE_ACCOUNT_NAME)
4 |
5 | echo AZURE_EVENTHUBS_NAMESPACE=$env:AZURE_EVENTHUBS_NAMESPACE
6 | echo AZURE_STORAGE_CONTAINER_NAME=$env:AZURE_STORAGE_CONTAINER_NAME
7 | echo AZURE_STORAGE_ACCOUNT_NAME=$env:AZURE_STORAGE_ACCOUNT_NAME
8 |
--------------------------------------------------------------------------------
/eventhubs/spring-cloud-azure-starter-integration-eventhubs/eventhubs-integration/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export AZURE_EVENTHUBS_NAMESPACE=$(terraform -chdir=./terraform output -raw AZURE_EVENTHUBS_NAMESPACE)
2 | export AZURE_STORAGE_CONTAINER_NAME=$(terraform -chdir=./terraform output -raw AZURE_STORAGE_CONTAINER_NAME)
3 | export AZURE_STORAGE_ACCOUNT_NAME=$(terraform -chdir=./terraform output -raw AZURE_STORAGE_ACCOUNT_NAME)
4 |
5 | echo AZURE_EVENTHUBS_NAMESPACE=$AZURE_EVENTHUBS_NAMESPACE
6 | echo AZURE_STORAGE_CONTAINER_NAME=$AZURE_STORAGE_CONTAINER_NAME
7 | echo AZURE_STORAGE_ACCOUNT_NAME=$AZURE_STORAGE_ACCOUNT_NAME
8 |
--------------------------------------------------------------------------------
/eventhubs/spring-cloud-azure-starter-integration-eventhubs/eventhubs-integration/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "eh-integration"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/eventhubs/spring-cloud-azure-starter/spring-cloud-azure-sample-eventhubs-kafka/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "eventhubs-kafka"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/eventhubs/spring-cloud-azure-stream-binder-eventhubs/eventhubs-binder/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "eh-binder"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/eventhubs/spring-cloud-azure-stream-binder-eventhubs/eventhubs-multibinders/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "eh-multibinders"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/eventhubs/spring-messaging-azure-eventhubs/eventhubs-spring-messaging/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | eventhubs:
5 | namespace: ${AZURE_EVENTHUBS_NAMESPACE}
6 | processor:
7 | checkpoint-store:
8 | container-name: ${AZURE_STORAGE_CONTAINER_NAME}
9 | account-name: ${AZURE_STORAGE_ACCOUNT_NAME}
10 |
--------------------------------------------------------------------------------
/eventhubs/spring-messaging-azure-eventhubs/eventhubs-spring-messaging/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "AZURE_EVENTHUBS_NAMESPACE" {
2 | value = azurerm_eventhub_namespace.eventhubs_namespace.name
3 | description = "The event hubs namespace."
4 | }
5 |
6 | output "AZURE_STORAGE_ACCOUNT_NAME" {
7 | value = azurerm_storage_account.storage_account.name
8 | description = "The storage account name."
9 | }
10 |
11 | output "AZURE_STORAGE_CONTAINER_NAME" {
12 | value = azurerm_storage_container.storage_container.name
13 | description = "The container name created in storage account."
14 | }
15 |
16 |
--------------------------------------------------------------------------------
/eventhubs/spring-messaging-azure-eventhubs/eventhubs-spring-messaging/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:AZURE_EVENTHUBS_NAMESPACE=$(terraform -chdir=terraform output -raw AZURE_EVENTHUBS_NAMESPACE)
2 | $env:AZURE_STORAGE_CONTAINER_NAME=$(terraform -chdir=terraform output -raw AZURE_STORAGE_CONTAINER_NAME)
3 | $env:AZURE_STORAGE_ACCOUNT_NAME=$(terraform -chdir=terraform output -raw AZURE_STORAGE_ACCOUNT_NAME)
4 |
5 | echo AZURE_EVENTHUBS_NAMESPACE=$env:AZURE_EVENTHUBS_NAMESPACE
6 | echo AZURE_STORAGE_CONTAINER_NAME=$env:AZURE_STORAGE_CONTAINER_NAME
7 | echo AZURE_STORAGE_ACCOUNT_NAME=$env:AZURE_STORAGE_ACCOUNT_NAME
8 |
--------------------------------------------------------------------------------
/eventhubs/spring-messaging-azure-eventhubs/eventhubs-spring-messaging/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export AZURE_EVENTHUBS_NAMESPACE=$(terraform -chdir=./terraform output -raw AZURE_EVENTHUBS_NAMESPACE)
2 | export AZURE_STORAGE_CONTAINER_NAME=$(terraform -chdir=./terraform output -raw AZURE_STORAGE_CONTAINER_NAME)
3 | export AZURE_STORAGE_ACCOUNT_NAME=$(terraform -chdir=./terraform output -raw AZURE_STORAGE_ACCOUNT_NAME)
4 |
5 | echo AZURE_EVENTHUBS_NAMESPACE=$AZURE_EVENTHUBS_NAMESPACE
6 | echo AZURE_STORAGE_CONTAINER_NAME=$AZURE_STORAGE_CONTAINER_NAME
7 | echo AZURE_STORAGE_ACCOUNT_NAME=$AZURE_STORAGE_ACCOUNT_NAME
8 |
--------------------------------------------------------------------------------
/eventhubs/spring-messaging-azure-eventhubs/eventhubs-spring-messaging/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "eventhubs"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/keyvault/azure-securtiy-keyvault-jca/README.md:
--------------------------------------------------------------------------------
1 | ---
2 | page_type: sample
3 | languages:
4 | - java
5 | products:
6 | - azure-key-vault
7 | name: Enabling HTTPS Connection by Certificate Stored in Azure Key Vault in Java Application
8 | description: This sample demonstrates how to enable HTTPS connection by certificate stored in Azure Key Vault in Java application.
9 | ---
10 |
11 | # Enabling HTTPS Connection by Certificate Stored in Azure Key Vault in Java Application
12 |
13 |
--------------------------------------------------------------------------------
/keyvault/azure-securtiy-keyvault-jca/run-with-command-line-server-side/src/main/java/com/azure/spring/boot/sample/webapp/SampleController.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.boot.sample.webapp;
5 |
6 | import org.springframework.web.bind.annotation.GetMapping;
7 | import org.springframework.web.bind.annotation.RestController;
8 |
9 |
10 | /**
11 | * A controller that accepts http requests and returns response.
12 | */
13 | @RestController
14 | public class SampleController {
15 | @GetMapping("/")
16 | public String helloWorld() {
17 | return "Hello World!";
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/keyvault/azure-securtiy-keyvault-jca/run-with-command-line-server-side/src/main/java/com/azure/spring/boot/sample/webapp/SpringBootWebappApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.boot.sample.webapp;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | /**
10 | * Web app.
11 | */
12 | @SpringBootApplication
13 | public class SpringBootWebappApplication {
14 | public static void main(String[] args) {
15 | SpringApplication.run(SpringBootWebappApplication.class, args);
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/keyvault/azure-securtiy-keyvault-jca/run-with-command-line-server-side/src/main/resources/keyvault.dummy:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-jca/ssl-bundles-rest-template/src/main/java/com/azure/spring/sample/keyvault/jca/SslBundlesRestTemplateApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.keyvault.jca;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | @SpringBootApplication
10 | public class SslBundlesRestTemplateApplication {
11 |
12 | public static void main(String[] args) {
13 | SpringApplication.run(SslBundlesRestTemplateApplication.class, args);
14 | }
15 |
16 | }
17 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-jca/ssl-bundles-rest-template/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "ssl-bundles-rest-template"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-jca/ssl-bundles-server/src/main/java/com/azure/spring/sample/keyvault/jca/KeyVaultSslBundlesServerApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.keyvault.jca;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | @SpringBootApplication
10 | public class KeyVaultSslBundlesServerApplication {
11 |
12 | public static void main(String[] args) {
13 | SpringApplication.run(KeyVaultSslBundlesServerApplication.class, args);
14 | }
15 |
16 | }
17 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-jca/ssl-bundles-server/src/main/resources/application-client-auth.yaml:
--------------------------------------------------------------------------------
1 | server:
2 | ssl:
3 | client-auth: NEED
4 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-jca/ssl-bundles-server/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "ssl-bundles-server"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-jca/ssl-bundles-web-client/src/main/java/com/azure/spring/sample/keyvault/jca/KeyVaultSslBundlesWebClientApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.keyvault.jca;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | @SpringBootApplication
10 | public class KeyVaultSslBundlesWebClientApplication {
11 |
12 | public static void main(String[] args) {
13 | SpringApplication.run(KeyVaultSslBundlesWebClientApplication.class, args);
14 | }
15 |
16 | }
17 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-jca/ssl-bundles-web-client/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "ssl-bundles-web-client"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-secrets/property-source/src/main/resources/application-secrets.yml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | keyvault:
5 | secret:
6 | property-sources[0]:
7 | endpoint: ${ENDPOINT_1}
8 | secret-keys:
9 | - sampleProperty1
10 | - samplePropertyInMultipleKeyVault
11 | property-sources[1]:
12 | endpoint: ${ENDPOINT_2}
13 | secret-keys:
14 | - sampleProperty2
15 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-secrets/property-source/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | keyvault:
5 | secret:
6 | property-source-enabled: true
7 | property-sources:
8 | - name: key-vault-property-source-1
9 | endpoint: ${ENDPOINT_1}
10 | - name: key-vault-property-source-2
11 | endpoint: ${ENDPOINT_2}
12 | profiles:
13 | active: develop
14 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-secrets/property-source/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "KEYVAULT_URI_01" {
2 | value = azurerm_key_vault.kv_account_01.vault_uri
3 | description = "The key vault uri 01."
4 | }
5 |
6 | output "KEYVAULT_URI_02" {
7 | value = azurerm_key_vault.kv_account_02.vault_uri
8 | description = "The key vault uri 02."
9 | }
10 |
11 | output "RESOURCE_GROUP_NAME" {
12 | value = azurerm_resource_group.main.name
13 | description = "The resource group name."
14 | }
15 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-secrets/property-source/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:ENDPOINT_1=$(terraform -chdir=terraform output -raw KEYVAULT_URI_01)
2 | $env:ENDPOINT_2=$(terraform -chdir=terraform output -raw KEYVAULT_URI_02)
3 |
4 | echo ENDPOINT_1=$env:ENDPOINT_1
5 | echo ENDPOINT_2=$env:ENDPOINT_2
6 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-secrets/property-source/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export ENDPOINT_1=$(terraform -chdir=./terraform output -raw KEYVAULT_URI_01)
2 | export ENDPOINT_2=$(terraform -chdir=./terraform output -raw KEYVAULT_URI_02)
3 |
4 | echo ENDPOINT_1=$ENDPOINT_1
5 | echo ENDPOINT_2=$ENDPOINT_2
6 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-secrets/property-source/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "mul-keyvault"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-secrets/secret-client/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | keyvault:
5 | secret:
6 | property-source-enabled: true
7 | endpoint: ${ENDPOINT}
8 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-secrets/secret-client/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "KEYVAULT_URI" {
2 | value = azurerm_key_vault.kv_account.vault_uri
3 | description = "The key vault uri."
4 | }
5 |
6 | output "RESOURCE_GROUP_NAME" {
7 | value = azurerm_resource_group.main.name
8 | description = "The resource group name."
9 | }
10 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-secrets/secret-client/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:ENDPOINT=$(terraform -chdir=terraform output -raw KEYVAULT_URI)
2 |
3 | echo ENDPOINT=$env:ENDPOINT
4 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-secrets/secret-client/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export ENDPOINT=$(terraform -chdir=./terraform output -raw KEYVAULT_URI)
2 | echo ENDPOINT=$ENDPOINT
3 |
--------------------------------------------------------------------------------
/keyvault/spring-cloud-azure-starter-keyvault-secrets/secret-client/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "keyvault"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/mysql/spring-cloud-azure-starter-jdbc-mysql/spring-cloud-azure-mysql-sample/src/main/java/com/azure/spring/sample/passwordless/mysql/MysqlApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.passwordless.mysql;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | @SpringBootApplication
10 | public class MysqlApplication {
11 |
12 | public static void main(String[] args) {
13 | SpringApplication.run(MysqlApplication.class, args);
14 | }
15 |
16 | }
17 |
--------------------------------------------------------------------------------
/mysql/spring-cloud-azure-starter-jdbc-mysql/spring-cloud-azure-mysql-sample/src/main/java/com/azure/spring/sample/passwordless/mysql/TodoRepository.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.passwordless.mysql;
5 |
6 | import org.springframework.data.repository.CrudRepository;
7 |
8 | public interface TodoRepository extends CrudRepository {
9 | }
10 |
--------------------------------------------------------------------------------
/mysql/spring-cloud-azure-starter-jdbc-mysql/spring-cloud-azure-mysql-sample/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | spring:
2 | jpa:
3 | generate-ddl: true
4 | datasource:
5 | azure:
6 | passwordless-enabled: true
7 | url: jdbc:mysql://${AZ_DATABASE_SERVER_NAME}.mysql.database.azure.com:3306/${AZ_DATABASE_NAME}?serverTimezone=UTC
8 | username: ${AZ_MYSQL_AD_NON_ADMIN_USERNAME}
9 | sql:
10 | init:
11 | mode: always
12 |
--------------------------------------------------------------------------------
/mysql/spring-cloud-azure-starter-jdbc-mysql/spring-cloud-azure-mysql-sample/terraform/mysql_create_user.sql:
--------------------------------------------------------------------------------
1 | SET aad_auth_validate_oids_in_tenant = OFF;
2 | CREATE AADUSER '%%AZ_MYSQL_AD_NON_ADMIN_USERNAME%%' IDENTIFIED BY '%%AZ_MYSQL_AD_NON_ADMIN_USERID%%';
3 | GRANT ALL PRIVILEGES ON %%dbname%%.* TO '%%AZ_MYSQL_AD_NON_ADMIN_USERNAME%%'@'%';
4 | FLUSH privileges;
--------------------------------------------------------------------------------
/mysql/spring-cloud-azure-starter-jdbc-mysql/spring-cloud-azure-mysql-sample/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:AZ_DATABASE_SERVER_NAME=$(terraform -chdir=terraform output -raw azure_mysql_server_name)
2 | $env:AZ_DATABASE_NAME=$(terraform -chdir=terraform output -raw azure_mysql_server_database_name)
3 | $env:AZ_MYSQL_AD_NON_ADMIN_USERNAME=$(terraform -chdir=terraform output -raw aad_user_name)
4 |
5 | echo AZ_DATABASE_SERVER_NAME=$env:AZ_DATABASE_SERVER_NAME
6 | echo AZ_DATABASE_NAME=$env:AZ_DATABASE_NAME
7 | echo AZ_MYSQL_AD_NON_ADMIN_USERNAME=$env:AZ_MYSQL_AD_NON_ADMIN_USERNAME
8 |
--------------------------------------------------------------------------------
/mysql/spring-cloud-azure-starter-jdbc-mysql/spring-cloud-azure-mysql-sample/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export AZ_DATABASE_SERVER_NAME=$(terraform -chdir=./terraform output -raw azure_mysql_server_name)
2 | export AZ_DATABASE_NAME=$(terraform -chdir=./terraform output -raw azure_mysql_server_database_name)
3 | export AZ_MYSQL_AD_NON_ADMIN_USERNAME=$(terraform -chdir=./terraform output -raw aad_user_name)
4 |
5 | echo AZ_DATABASE_SERVER_NAME=$AZ_DATABASE_SERVER_NAME
6 | echo AZ_DATABASE_NAME=$AZ_DATABASE_NAME
7 | echo AZ_MYSQL_AD_NON_ADMIN_USERNAME=$AZ_MYSQL_AD_NON_ADMIN_USERNAME
8 |
--------------------------------------------------------------------------------
/postgresql/spring-cloud-azure-starter-jdbc-postgresql/spring-cloud-azure-postgresql-sample/src/main/java/com/azure/spring/sample/passwordless/postgresql/PostgresqlApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.passwordless.postgresql;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | @SpringBootApplication
10 | public class PostgresqlApplication {
11 |
12 | public static void main(String[] args) {
13 | SpringApplication.run(PostgresqlApplication.class, args);
14 | }
15 |
16 | }
17 |
--------------------------------------------------------------------------------
/postgresql/spring-cloud-azure-starter-jdbc-postgresql/spring-cloud-azure-postgresql-sample/src/main/java/com/azure/spring/sample/passwordless/postgresql/TodoRepository.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.passwordless.postgresql;
5 |
6 | import org.springframework.data.repository.CrudRepository;
7 |
8 | public interface TodoRepository extends CrudRepository {
9 | }
10 |
--------------------------------------------------------------------------------
/postgresql/spring-cloud-azure-starter-jdbc-postgresql/spring-cloud-azure-postgresql-sample/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | spring:
2 | jpa:
3 | generate-ddl: true
4 | datasource:
5 | azure:
6 | passwordless-enabled: true
7 | url: jdbc:postgresql://${AZ_DATABASE_SERVER_NAME}.postgres.database.azure.com:5432/${AZ_DATABASE_NAME}?sslmode=require
8 | username: ${AZ_POSTGRESQL_AD_NON_ADMIN_USERNAME}
9 | sql:
10 | init:
11 | mode: always
12 |
--------------------------------------------------------------------------------
/postgresql/spring-cloud-azure-starter-jdbc-postgresql/spring-cloud-azure-postgresql-sample/terraform/postgresql_create_user.sql:
--------------------------------------------------------------------------------
1 | select * from pgaadauth_create_principal('%%AZ_POSTGRESQL_AD_NON_ADMIN_USERNAME%%', false, false);
--------------------------------------------------------------------------------
/postgresql/spring-cloud-azure-starter-jdbc-postgresql/spring-cloud-azure-postgresql-sample/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:AZ_DATABASE_SERVER_NAME=$(terraform -chdir=terraform output -raw azure_postgresql_server_name)
2 | $env:AZ_DATABASE_NAME=$(terraform -chdir=terraform output -raw azure_postgresql_server_database_name)
3 | $env:AZ_POSTGRESQL_AD_NON_ADMIN_USERNAME=$(az ad signed-in-user show --query userPrincipalName -o tsv)
4 |
5 | echo AZ_DATABASE_SERVER_NAME=$env:AZ_DATABASE_SERVER_NAME
6 | echo AZ_DATABASE_NAME=$env:AZ_DATABASE_NAME
7 | echo AZ_POSTGRESQL_AD_NON_ADMIN_USERNAME=$env:AZ_POSTGRESQL_AD_NON_ADMIN_USERNAME
8 |
--------------------------------------------------------------------------------
/postgresql/spring-cloud-azure-starter-jdbc-postgresql/spring-cloud-azure-postgresql-sample/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export AZ_DATABASE_SERVER_NAME=$(terraform -chdir=./terraform output -raw azure_postgresql_server_name)
2 | export AZ_DATABASE_NAME=$(terraform -chdir=./terraform output -raw azure_postgresql_server_database_name)
3 | export AZ_POSTGRESQL_AD_NON_ADMIN_USERNAME=$(echo $(az ad signed-in-user show --query userPrincipalName --output tsv) | sed -e 's/\r//g')
4 |
5 | echo AZ_DATABASE_SERVER_NAME=$AZ_DATABASE_SERVER_NAME
6 | echo AZ_DATABASE_NAME=$AZ_DATABASE_NAME
7 | echo AZ_POSTGRESQL_AD_NON_ADMIN_USERNAME=$AZ_POSTGRESQL_AD_NON_ADMIN_USERNAME
8 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-integration-servicebus/multiple-namespaces/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | my.servicebus.namespaces[0]:
2 | namespace: ${AZURE_SERVICEBUS_NAMESPACE_01}
3 | entity-type: queue
4 | entity-name: ${AZURE_SERVICEBUS_NAMESPACE_01_QUEUE_NAME}
5 | my.servicebus.namespaces[1]:
6 | namespace: ${AZURE_SERVICEBUS_NAMESPACE_02}
7 | entity-type: queue
8 | entity-name: ${AZURE_SERVICEBUS_NAMESPACE_02_QUEUE_NAME}
9 |
10 |
11 | #reduce some noise
12 | logging.level:
13 | com.azure.core: warn
14 | com.azure.identity: warn
15 | com.azure.messaging: warn
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-integration-servicebus/multiple-namespaces/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "multiple-namespaces-servicebus"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-integration-servicebus/single-namespace/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | servicebus:
5 | namespace: ${SERVICEBUS_NAMESPACE}
6 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-integration-servicebus/single-namespace/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "SERVICEBUS_NAMESPACE" {
2 | value = azurerm_servicebus_namespace.servicebus_namespace.name
3 | description = "The name of servicebus namespace."
4 | }
5 |
6 | output "RESOURCE_GROUP_NAME" {
7 | value = azurerm_resource_group.main.name
8 | description = "The resource group name."
9 | }
10 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-integration-servicebus/single-namespace/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:SERVICEBUS_NAMESPACE=$(terraform -chdir=terraform output -raw SERVICEBUS_NAMESPACE)
2 |
3 | echo SERVICEBUS_NAMESPACE=$env:SERVICEBUS_NAMESPACE
4 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-integration-servicebus/single-namespace/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export SERVICEBUS_NAMESPACE=$(terraform -chdir=./terraform output -raw SERVICEBUS_NAMESPACE)
2 |
3 | echo SERVICEBUS_NAMESPACE=$SERVICEBUS_NAMESPACE
4 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-integration-servicebus/single-namespace/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "single-namespaces-servicebus"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-dlq-queue/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | application:
3 | name: servicebus-jms-dlq-queue
4 | jms:
5 | listener:
6 | session:
7 | acknowledge-mode: CLIENT
8 | transacted: false
9 | servicebus:
10 | passwordless-enabled: true
11 | namespace: ${SERVICEBUS_NAMESPACE_NAME_DLQ_QUQUE}
12 | pricing-tier: ${PRICING_TIER}
13 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-dlq-queue/src/main/resources/log4j.properties:
--------------------------------------------------------------------------------
1 | log4j.rootLogger=ERROR, stdout
2 | log4j.logger.org.apache.qpid.jms=ERROR
3 |
4 | # CONSOLE appender
5 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender
6 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
7 | log4j.appender.stdout.layout.ConversionPattern=%d [%-15.15t] - %-5p %-30.30c{1} - %m%n
8 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-dlq-queue/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "SERVICEBUS_NAMESPACE_NAME_DLQ_QUQUE" {
2 | value = azurerm_servicebus_namespace.servicebus_namespace.name
3 | description = "The name of servicebus namespace."
4 | sensitive = true
5 | }
6 |
7 | output "PRICING_TIER" {
8 | value = var.pricing_tier
9 | description = "The pricing tier of Service Bus."
10 | }
11 |
12 | output "RESOURCE_GROUP_NAME" {
13 | value = azurerm_resource_group.main.name
14 | description = "The resource group name."
15 | }
16 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-dlq-queue/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:SERVICEBUS_NAMESPACE_NAME_DLQ_QUQUE=$(terraform -chdir=terraform output -raw SERVICEBUS_NAMESPACE_NAME_DLQ_QUQUE)
2 | $env:PRICING_TIER=$(terraform -chdir=terraform output -raw PRICING_TIER)
3 |
4 | echo SERVICEBUS_NAMESPACE_NAME_DLQ_QUQUE=$env:SERVICEBUS_NAMESPACE_NAME_DLQ_QUQUE
5 | echo PRICING_TIER=$env:PRICING_TIER
6 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-dlq-queue/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export SERVICEBUS_NAMESPACE_NAME_DLQ_QUQUE=$(terraform -chdir=./terraform output -raw SERVICEBUS_NAMESPACE_NAME_DLQ_QUQUE)
2 | export PRICING_TIER=$(terraform -chdir=./terraform output -raw PRICING_TIER)
3 |
4 | echo SERVICEBUS_NAMESPACE_NAME_DLQ_QUQUE=$SERVICEBUS_NAMESPACE_NAME_DLQ_QUQUE
5 | echo PRICING_TIER=$PRICING_TIER
6 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-queue/src/main/java/com/azure/spring/sample/jms/queue/User.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.jms.queue;
5 |
6 | import java.io.Serializable;
7 |
8 | public class User implements Serializable {
9 |
10 | private static final long serialVersionUID = -295422703255886286L;
11 | private String name;
12 |
13 | User(String name) {
14 | setName(name);
15 | }
16 |
17 | public String getName() {
18 | return name;
19 | }
20 |
21 | public void setName(String name) {
22 | this.name = name;
23 | }
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-queue/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | jms:
3 | servicebus:
4 | connection-string: ${SERVICEBUS_NAMESPACE_CONNECTION_STRING}
5 | pricing-tier: ${PRICING_TIER}
6 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-queue/src/main/resources/log4j.properties:
--------------------------------------------------------------------------------
1 | log4j.rootLogger=ERROR, stdout
2 | log4j.logger.org.apache.qpid.jms=ERROR
3 |
4 | # CONSOLE appender
5 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender
6 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
7 | log4j.appender.stdout.layout.ConversionPattern=%d [%-15.15t] - %-5p %-30.30c{1} - %m%n
8 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-queue/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "SERVICEBUS_NAMESPACE_CONNECTION_STRING" {
2 | value = azurerm_servicebus_namespace.servicebus_namespace.default_primary_connection_string
3 | description = "The connection_string of servicebus namespace."
4 | sensitive = true
5 | }
6 |
7 | output "PRICING_TIER" {
8 | value = var.pricing_tier
9 | description = "The pricing tier of Service Bus."
10 | }
11 |
12 | output "RESOURCE_GROUP_NAME" {
13 | value = azurerm_resource_group.main.name
14 | description = "The resource group name."
15 | }
16 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-queue/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:SERVICEBUS_NAMESPACE_CONNECTION_STRING=$(terraform -chdir=terraform output -raw SERVICEBUS_NAMESPACE_CONNECTION_STRING)
2 | $env:PRICING_TIER=$(terraform -chdir=terraform output -raw PRICING_TIER)
3 |
4 | echo SERVICEBUS_NAMESPACE_CONNECTION_STRING=$env:SERVICEBUS_NAMESPACE_CONNECTION_STRING
5 | echo PRICING_TIER=$env:PRICING_TIER
6 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-queue/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export SERVICEBUS_NAMESPACE_CONNECTION_STRING=$(terraform -chdir=./terraform output -raw SERVICEBUS_NAMESPACE_CONNECTION_STRING)
2 | export PRICING_TIER=$(terraform -chdir=./terraform output -raw PRICING_TIER)
3 |
4 | echo SERVICEBUS_NAMESPACE_CONNECTION_STRING=$SERVICEBUS_NAMESPACE_CONNECTION_STRING
5 | echo PRICING_TIER=$PRICING_TIER
6 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-topic/src/main/java/com/azure/spring/sample/jms/topic/User.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.jms.topic;
5 |
6 | import java.io.Serializable;
7 |
8 | public class User implements Serializable {
9 |
10 | private static final long serialVersionUID = -295422703255886286L;
11 | private String name;
12 |
13 | User(String name) {
14 | setName(name);
15 | }
16 |
17 | public String getName() {
18 | return name;
19 | }
20 |
21 | public void setName(String name) {
22 | this.name = name;
23 | }
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-topic/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | jms:
3 | servicebus:
4 | connection-string: ${SERVICEBUS_NAMESPACE_CONNECTION_STRING}
5 | pricing-tier: ${PRICING_TIER}
6 | topic-client-id: topic-client-id
7 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-topic/src/main/resources/log4j.properties:
--------------------------------------------------------------------------------
1 | log4j.rootLogger=ERROR, stdout
2 | log4j.logger.org.apache.qpid.jms=ERROR
3 |
4 | # CONSOLE appender
5 | log4j.appender.stdout=org.apache.log4j.ConsoleAppender
6 | log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
7 | log4j.appender.stdout.layout.ConversionPattern=%d [%-15.15t] - %-5p %-30.30c{1} - %m%n
8 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-topic/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "SERVICEBUS_NAMESPACE_CONNECTION_STRING" {
2 | value = azurerm_servicebus_namespace.servicebus_namespace.default_primary_connection_string
3 | description = "The connection_string of servicebus namespace."
4 | sensitive = true
5 | }
6 |
7 | output "PRICING_TIER" {
8 | value = var.pricing_tier
9 | description = "The pricing tier of Service Bus."
10 | }
11 |
12 | output "RESOURCE_GROUP_NAME" {
13 | value = azurerm_resource_group.main.name
14 | description = "The resource group name."
15 | }
16 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-topic/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:SERVICEBUS_NAMESPACE_CONNECTION_STRING=$(terraform -chdir=terraform output -raw SERVICEBUS_NAMESPACE_CONNECTION_STRING)
2 | $env:PRICING_TIER=$(terraform -chdir=terraform output -raw PRICING_TIER)
3 |
4 | echo SERVICEBUS_NAMESPACE_CONNECTION_STRING=$env:SERVICEBUS_NAMESPACE_CONNECTION_STRING
5 | echo PRICING_TIER=$env:PRICING_TIER
6 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus-jms/servicebus-jms-topic/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export SERVICEBUS_NAMESPACE_CONNECTION_STRING=$(terraform -chdir=./terraform output -raw SERVICEBUS_NAMESPACE_CONNECTION_STRING)
2 | export PRICING_TIER=$(terraform -chdir=./terraform output -raw PRICING_TIER)
3 |
4 | echo SERVICEBUS_NAMESPACE_CONNECTION_STRING=$SERVICEBUS_NAMESPACE_CONNECTION_STRING
5 | echo PRICING_TIER=$PRICING_TIER
6 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus/servicebus-queue/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | servicebus:
5 | namespace: ${SERVICEBUS_NAMESPACE}
6 | entity-type: queue
7 | entity-name: que001
8 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus/servicebus-queue/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "SERVICEBUS_NAMESPACE" {
2 | value = azurerm_servicebus_namespace.servicebus_namespace.name
3 | description = "The servicebus namespace."
4 | }
5 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus/servicebus-queue/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:SERVICEBUS_NAMESPACE=$(terraform -chdir=terraform output -raw SERVICEBUS_NAMESPACE)
2 |
3 | echo SERVICEBUS_NAMESPACE=$env:SERVICEBUS_NAMESPACE
4 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus/servicebus-queue/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export SERVICEBUS_NAMESPACE=$(terraform -chdir=./terraform output -raw SERVICEBUS_NAMESPACE)
2 |
3 | echo SERVICEBUS_NAMESPACE=$SERVICEBUS_NAMESPACE
4 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus/servicebus-topic/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | servicebus:
5 | namespace: ${SERVICEBUS_NAMESPACE}
6 | entity-type: topic
7 | entity-name: tpc001
8 | processor:
9 | subscription-name: sub001
10 | consumer:
11 | subscription-name: sub001
12 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus/servicebus-topic/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "SERVICEBUS_NAMESPACE" {
2 | value = azurerm_servicebus_namespace.servicebus_namespace.name
3 | description = "The servicebus namespace."
4 | }
5 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus/servicebus-topic/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:SERVICEBUS_NAMESPACE=$(terraform -chdir=terraform output -raw SERVICEBUS_NAMESPACE)
2 |
3 | echo SERVICEBUS_NAMESPACE=$env:SERVICEBUS_NAMESPACE
4 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-starter-servicebus/servicebus-topic/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export SERVICEBUS_NAMESPACE=$(terraform -chdir=./terraform output -raw SERVICEBUS_NAMESPACE)
2 |
3 | echo SERVICEBUS_NAMESPACE=$SERVICEBUS_NAMESPACE
4 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-stream-binder-servicebus/servicebus-multibinders/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "servicebus-multibinders"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-stream-binder-servicebus/servicebus-queue-binder-arm/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "servicebus-queue-binder"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-stream-binder-servicebus/servicebus-queue-binder/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "servicebus-queue-binder"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/servicebus/spring-cloud-azure-stream-binder-servicebus/servicebus-topic-binder/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "servicebus-topic-binder"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/servicebus/spring-messaging-azure-servicebus/servicebus-spring-messaging/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | servicebus:
5 | namespace: ${AZURE_SERVICEBUS_NAMESPACE}
6 | entity-type: queue
7 |
--------------------------------------------------------------------------------
/servicebus/spring-messaging-azure-servicebus/servicebus-spring-messaging/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "AZURE_SERVICEBUS_NAMESPACE" {
2 | value = azurerm_servicebus_namespace.servicebus_namespace.name
3 | description = "The servicebus namespace."
4 | }
5 |
--------------------------------------------------------------------------------
/servicebus/spring-messaging-azure-servicebus/servicebus-spring-messaging/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:AZURE_SERVICEBUS_NAMESPACE=$(terraform -chdir=terraform output -raw AZURE_SERVICEBUS_NAMESPACE)
2 |
3 | echo AZURE_SERVICEBUS_NAMESPACE=$env:AZURE_SERVICEBUS_NAMESPACE
4 |
--------------------------------------------------------------------------------
/servicebus/spring-messaging-azure-servicebus/servicebus-spring-messaging/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export AZURE_SERVICEBUS_NAMESPACE=$(terraform -chdir=./terraform output -raw AZURE_SERVICEBUS_NAMESPACE)
2 |
3 | echo AZURE_SERVICEBUS_NAMESPACE=$AZURE_SERVICEBUS_NAMESPACE
4 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-integration-storage-queue/storage-queue-integration/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | storage:
5 | queue:
6 | account-name: ${ACCOUNT_NAME}
7 |
8 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-integration-storage-queue/storage-queue-integration/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "ACCOUNT_NAME" {
2 | value = azurerm_storage_account.storage_account.name
3 | description = "The name of storage account."
4 | }
5 |
6 | output "RESOURCE_GROUP_NAME" {
7 | value = azurerm_resource_group.main.name
8 | description = "The resource group name."
9 | }
10 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-integration-storage-queue/storage-queue-integration/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:ACCOUNT_NAME=$(terraform -chdir=terraform output -raw ACCOUNT_NAME)
2 |
3 | echo ACCOUNT_NAME=$env:ACCOUNT_NAME
4 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-integration-storage-queue/storage-queue-integration/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export ACCOUNT_NAME=$(terraform -chdir=./terraform output -raw ACCOUNT_NAME)
2 |
3 | echo ACCOUNT_NAME=$ACCOUNT_NAME
4 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-integration-storage-queue/storage-queue-integration/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "integration"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-integration-storage-queue/storage-queue-operation/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | storage:
5 | queue:
6 | account-name: ${ACCOUNT_NAME}
7 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-integration-storage-queue/storage-queue-operation/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "ACCOUNT_NAME" {
2 | value = azurerm_storage_account.storage_account.name
3 | description = "The name of storage account."
4 | }
5 |
6 | output "RESOURCE_GROUP_NAME" {
7 | value = azurerm_resource_group.main.name
8 | description = "The resource group name."
9 | }
10 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-integration-storage-queue/storage-queue-operation/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:ACCOUNT_NAME=$(terraform -chdir=terraform output -raw ACCOUNT_NAME)
2 |
3 | echo ACCOUNT_NAME=$env:ACCOUNT_NAME
4 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-integration-storage-queue/storage-queue-operation/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export ACCOUNT_NAME=$(terraform -chdir=./terraform output -raw ACCOUNT_NAME)
2 |
3 | echo ACCOUNT_NAME=$ACCOUNT_NAME
4 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-integration-storage-queue/storage-queue-operation/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "operation"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-blob/storage-blob-sample/src/main/java/com/azure/spring/sample/storage/resource/StorageBlobApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.storage.resource;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | /**
10 | * @author Warren Zhu
11 | */
12 | @SpringBootApplication
13 | public class StorageBlobApplication {
14 | public static void main(String[] args) {
15 | SpringApplication.run(StorageBlobApplication.class, args);
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-blob/storage-blob-sample/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | # Storage account name length should be between 3 and 24 and use numbers and lower-case letters only
2 | # Configuration
3 | spring:
4 | cloud:
5 | azure:
6 | storage:
7 | blob:
8 | account-name: ${AZURE_STORAGE_ACCOUNT}
9 | container-name: ${STORAGE_CONTAINER_NAME}
10 |
11 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-blob/storage-blob-sample/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "azure_storage_account" {
2 | value = azurerm_storage_account.application.name
3 | description = "Azure Storage account created."
4 | }
5 |
6 | output "storage_container_name" {
7 | value = var.container_name
8 | description = "Azure Storage container name."
9 | }
10 |
11 | output "resource_group_name" {
12 | value = azurerm_resource_group.main.name
13 | description = "The resource group name."
14 | }
15 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-blob/storage-blob-sample/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:AZURE_STORAGE_ACCOUNT=$(terraform -chdir=terraform output -raw azure_storage_account)
2 | $env:STORAGE_CONTAINER_NAME=$(terraform -chdir=terraform output -raw storage_container_name)
3 |
4 | echo AZURE_STORAGE_ACCOUNT=$env:AZURE_STORAGE_ACCOUNT
5 | echo STORAGE_CONTAINER_NAME=$env:STORAGE_CONTAINER_NAME
6 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-blob/storage-blob-sample/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export AZURE_STORAGE_ACCOUNT=$(terraform -chdir=./terraform output -raw azure_storage_account)
2 | export STORAGE_CONTAINER_NAME=$(terraform -chdir=./terraform output -raw storage_container_name)
3 |
4 | echo AZURE_STORAGE_ACCOUNT=$AZURE_STORAGE_ACCOUNT
5 | echo STORAGE_CONTAINER_NAME=$STORAGE_CONTAINER_NAME
6 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-file-share/storage-file-sample/src/main/java/com/azure/spring/sample/storage/resource/StorageFileShareApplication.java:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | package com.azure.spring.sample.storage.resource;
5 |
6 | import org.springframework.boot.SpringApplication;
7 | import org.springframework.boot.autoconfigure.SpringBootApplication;
8 |
9 | @SpringBootApplication
10 | public class StorageFileShareApplication {
11 |
12 | public static void main(String[] args) {
13 | SpringApplication.run(StorageFileShareApplication.class, args);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-file-share/storage-file-sample/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | storage:
5 | fileshare:
6 | account-name: ${AZURE_STORAGE_ACCOUNT}
7 | account-key: ${STORAGE_ACCOUNT_KEY}
8 | share-name: ${STORAGE_SHARE_NAME}
9 |
10 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-file-share/storage-file-sample/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "azure_storage_account" {
2 | value = azurerm_storage_account.application.name
3 | description = "Azure Storage account created."
4 | }
5 |
6 | output "storage_share_name" {
7 | value = var.share_name
8 | description = "Azure Storage share name."
9 | }
10 |
11 | output "resource_group_name" {
12 | value = azurerm_resource_group.main.name
13 | description = "The resource group name."
14 | }
15 |
16 | output "storage_account_key" {
17 | value = azurerm_storage_account.application.primary_access_key
18 | description = "The account key of this storage account."
19 | sensitive = true
20 | }
21 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-file-share/storage-file-sample/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:AZURE_STORAGE_ACCOUNT=$(terraform -chdir=terraform output -raw azure_storage_account)
2 | $env:STORAGE_SHARE_NAME=$(terraform -chdir=terraform output -raw storage_share_name)
3 | $env:STORAGE_ACCOUNT_KEY=$(terraform -chdir=terraform output -raw storage_account_key)
4 |
5 | echo AZURE_STORAGE_ACCOUNT=$env:AZURE_STORAGE_ACCOUNT
6 | echo STORAGE_SHARE_NAME=$env:STORAGE_SHARE_NAME
7 | echo STORAGE_ACCOUNT_KEY=$env:STORAGE_ACCOUNT_KEY
8 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-file-share/storage-file-sample/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export AZURE_STORAGE_ACCOUNT=$(terraform -chdir=./terraform output -raw azure_storage_account)
2 | export STORAGE_SHARE_NAME=$(terraform -chdir=./terraform output -raw storage_share_name)
3 | export STORAGE_ACCOUNT_KEY=$(terraform -chdir=./terraform output -raw storage_account_key)
4 |
5 | echo AZURE_STORAGE_ACCOUNT=$AZURE_STORAGE_ACCOUNT
6 | echo STORAGE_SHARE_NAME=$STORAGE_SHARE_NAME
7 | echo STORAGE_ACCOUNT_KEY=$STORAGE_ACCOUNT_KEY
8 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-queue/storage-queue-client/src/main/resources/application.yaml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | storage:
5 | queue:
6 | account-name: ${STORAGE_QUEUE_ACCOUNT_NAME}
7 | queue-name: test
8 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-queue/storage-queue-client/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "STORAGE_QUEUE_ACCOUNT_NAME" {
2 | value = azurerm_storage_account.storage_account.name
3 | description = "The name of storage account."
4 | }
5 |
6 | output "RESOURCE_GROUP_NAME" {
7 | value = azurerm_resource_group.main.name
8 | description = "The resource group name."
9 | }
10 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-queue/storage-queue-client/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:STORAGE_QUEUE_ACCOUNT_NAME=$(terraform -chdir=terraform output -raw STORAGE_QUEUE_ACCOUNT_NAME)
2 |
3 | echo STORAGE_QUEUE_ACCOUNT_NAME=$env:STORAGE_QUEUE_ACCOUNT_NAME
4 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-queue/storage-queue-client/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export STORAGE_QUEUE_ACCOUNT_NAME=$(terraform -chdir=./terraform output -raw STORAGE_QUEUE_ACCOUNT_NAME)
2 |
3 | echo STORAGE_QUEUE_ACCOUNT_NAME=$STORAGE_QUEUE_ACCOUNT_NAME
4 |
--------------------------------------------------------------------------------
/storage/spring-cloud-azure-starter-storage-queue/storage-queue-client/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "storagequeue"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------
/storage/spring-messaging-azure-storage-queue/storage-queue-spring-messaging/src/main/resources/application.yml:
--------------------------------------------------------------------------------
1 | spring:
2 | cloud:
3 | azure:
4 | storage:
5 | queue:
6 | account-name: ${STORAGE_QUEUE_ACCOUNT_NAME}
7 |
--------------------------------------------------------------------------------
/storage/spring-messaging-azure-storage-queue/storage-queue-spring-messaging/terraform/outputs.tf:
--------------------------------------------------------------------------------
1 | output "STORAGE_QUEUE_ACCOUNT_NAME" {
2 | value = azurerm_storage_account.storage_account.name
3 | description = "The name of storage account."
4 | }
5 |
--------------------------------------------------------------------------------
/storage/spring-messaging-azure-storage-queue/storage-queue-spring-messaging/terraform/setup_env.ps1:
--------------------------------------------------------------------------------
1 | $env:STORAGE_QUEUE_ACCOUNT_NAME=$(terraform -chdir=terraform output -raw STORAGE_QUEUE_ACCOUNT_NAME)
2 |
3 | echo STORAGE_QUEUE_ACCOUNT_NAME=$env:STORAGE_QUEUE_ACCOUNT_NAME
4 |
--------------------------------------------------------------------------------
/storage/spring-messaging-azure-storage-queue/storage-queue-spring-messaging/terraform/setup_env.sh:
--------------------------------------------------------------------------------
1 | export STORAGE_QUEUE_ACCOUNT_NAME=$(terraform -chdir=./terraform output -raw STORAGE_QUEUE_ACCOUNT_NAME)
2 |
3 | echo STORAGE_QUEUE_ACCOUNT_NAME=$STORAGE_QUEUE_ACCOUNT_NAME
4 |
--------------------------------------------------------------------------------
/storage/spring-messaging-azure-storage-queue/storage-queue-spring-messaging/terraform/variables.tf:
--------------------------------------------------------------------------------
1 | variable "application_name" {
2 | type = string
3 | description = "The name of your application."
4 | default = "storagequeue"
5 | }
6 |
7 | variable "location" {
8 | type = string
9 | description = "The Azure region where all resources in this example should be created."
10 | default = "eastus"
11 | }
12 |
13 | variable "sample_tag_value" {
14 | type = string
15 | description = "The value of spring-cloud-azure-sample tag."
16 | default = "true"
17 | }
18 |
--------------------------------------------------------------------------------