Full Code of alibaba/spring-cloud-alibaba for AI

2025.1.x b85e7efead6b cached
748 files
2.1 MB
620.3k tokens
3005 symbols
1 requests
Download .txt
Showing preview only (2,474K chars total). Download the full file or copy to clipboard to get everything.
Repository: alibaba/spring-cloud-alibaba
Branch: 2025.1.x
Commit: b85e7efead6b
Files: 748
Total size: 2.1 MB

Directory structure:
gitextract_av4r5gmy/

├── .circleci/
│   └── config.yml
├── .codecov.yml
├── .editorconfig
├── .github/
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.md
│   │   ├── config.yml
│   │   ├── feature_request.md
│   │   └── question.md
│   ├── PULL_REQUEST_TEMPLATE.md
│   ├── dependbot.yml
│   ├── labels.yml
│   └── workflows/
│       ├── github-packages-release.yml
│       ├── integration-test.yml
│       ├── issue-command.yml
│       ├── md-link-check.yml
│       └── stale.yml
├── .gitignore
├── .licenscheckconfig.yaml
├── .mvn/
│   ├── jvm.config
│   └── wrapper/
│       ├── maven-wrapper.jar
│       └── maven-wrapper.properties
├── CODE_OF_CONDUCT.md
├── LICENSE
├── README-zh.md
├── README.md
├── Roadmap-zh.md
├── Roadmap.md
├── eclipse/
│   ├── checkstyle-suppressions.xml
│   ├── eclipse-code-formatter.xml
│   ├── org.eclipse.jdt.core.prefs
│   └── org.eclipse.jdt.ui.prefs
├── mvnw
├── mvnw.cmd
├── pom.xml
├── spring-cloud-alibaba-coverage/
│   └── pom.xml
├── spring-cloud-alibaba-dependencies/
│   └── pom.xml
├── spring-cloud-alibaba-examples/
│   ├── integrated-example/
│   │   ├── config-init/
│   │   │   ├── config/
│   │   │   │   ├── datasource-config.yaml
│   │   │   │   ├── integrated-account.yaml
│   │   │   │   ├── integrated-consumer.yaml
│   │   │   │   ├── integrated-gateway.yaml
│   │   │   │   ├── integrated-order.yaml
│   │   │   │   ├── integrated-provider.yaml
│   │   │   │   └── integrated-storage.yaml
│   │   │   ├── rocketmq/
│   │   │   │   └── broker.conf
│   │   │   ├── scripts/
│   │   │   │   └── nacos-config-quick.sh
│   │   │   └── sql/
│   │   │       └── init.sql
│   │   ├── docker-compose/
│   │   │   ├── docker-compose-env.yml
│   │   │   └── docker-compose-service.yml
│   │   ├── docs/
│   │   │   ├── en/
│   │   │   │   ├── docker-compose-deployment.md
│   │   │   │   ├── kubernetes-deployment.md
│   │   │   │   ├── local-deployment.md
│   │   │   │   └── readme.md
│   │   │   └── zh/
│   │   │       ├── docker-compose-deploy-zh.md
│   │   │       ├── kubernetes-deployment-zh.md
│   │   │       ├── local-deployment-zh.md
│   │   │       └── readme-zh.md
│   │   ├── helm-chart/
│   │   │   ├── Chart.yaml
│   │   │   ├── templates/
│   │   │   │   ├── integrated-account.yaml
│   │   │   │   ├── integrated-frontend.yaml
│   │   │   │   ├── integrated-gateway.yaml
│   │   │   │   ├── integrated-mysql.yaml
│   │   │   │   ├── integrated-nacos-mysql.yaml
│   │   │   │   ├── integrated-nacos-stand.yaml
│   │   │   │   ├── integrated-order.yaml
│   │   │   │   ├── integrated-praise-consumer.yaml
│   │   │   │   ├── integrated-praise-provider.yaml
│   │   │   │   ├── integrated-rocketmq.yaml
│   │   │   │   ├── integrated-seata.yaml
│   │   │   │   └── integrated-storage.yaml
│   │   │   └── values.yaml
│   │   ├── integrated-account/
│   │   │   ├── Dockerfile
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── integration/
│   │   │           │                   └── account/
│   │   │           │                       ├── AccountServiceApplication.java
│   │   │           │                       ├── controller/
│   │   │           │                       │   └── AccountController.java
│   │   │           │                       ├── dto/
│   │   │           │                       │   └── AccountDTO.java
│   │   │           │                       ├── mapper/
│   │   │           │                       │   └── AccountMapper.java
│   │   │           │                       └── service/
│   │   │           │                           ├── AccountService.java
│   │   │           │                           └── impl/
│   │   │           │                               └── AccountServiceImpl.java
│   │   │           └── resources/
│   │   │               └── application.yaml
│   │   ├── integrated-common/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── alibaba/
│   │   │                       └── cloud/
│   │   │                           └── integration/
│   │   │                               └── common/
│   │   │                                   ├── BusinessException.java
│   │   │                                   ├── IResult.java
│   │   │                                   ├── Result.java
│   │   │                                   └── ResultEnum.java
│   │   ├── integrated-frontend/
│   │   │   ├── Dockerfile
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── integration/
│   │   │           │                   └── frontend/
│   │   │           │                       ├── FrontendApplication.java
│   │   │           │                       └── controller/
│   │   │           │                           └── IntegrationController.java
│   │   │           └── resources/
│   │   │               └── templates/
│   │   │                   ├── order.html
│   │   │                   ├── rocketmq.html
│   │   │                   └── sentinel.html
│   │   ├── integrated-gateway/
│   │   │   ├── Dockerfile
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── integration/
│   │   │           │                   └── gateway/
│   │   │           │                       ├── GatewayApplication.java
│   │   │           │                       └── config/
│   │   │           │                           └── GatewayConfig.java
│   │   │           └── resources/
│   │   │               └── application.yaml
│   │   ├── integrated-order/
│   │   │   ├── Dockerfile
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── integration/
│   │   │           │                   └── order/
│   │   │           │                       ├── OrderServiceApplication.java
│   │   │           │                       ├── controller/
│   │   │           │                       │   └── OrderController.java
│   │   │           │                       ├── entity/
│   │   │           │                       │   └── Order.java
│   │   │           │                       ├── feign/
│   │   │           │                       │   ├── AccountServiceFeignClient.java
│   │   │           │                       │   ├── StorageServiceFeignClient.java
│   │   │           │                       │   └── dto/
│   │   │           │                       │       ├── AccountDTO.java
│   │   │           │                       │       └── StorageDTO.java
│   │   │           │                       ├── mapper/
│   │   │           │                       │   └── OrderMapper.java
│   │   │           │                       └── service/
│   │   │           │                           ├── OrderService.java
│   │   │           │                           └── impl/
│   │   │           │                               └── OrderServiceImpl.java
│   │   │           └── resources/
│   │   │               └── application.yaml
│   │   ├── integrated-praise-consumer/
│   │   │   ├── Dockerfile
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── integration/
│   │   │           │                   └── consumer/
│   │   │           │                       ├── PraiseConsumerApplication.java
│   │   │           │                       ├── controller/
│   │   │           │                       │   └── PraiseController.java
│   │   │           │                       ├── listener/
│   │   │           │                       │   └── ListenerAutoConfiguration.java
│   │   │           │                       ├── mapper/
│   │   │           │                       │   └── PraiseMapper.java
│   │   │           │                       ├── message/
│   │   │           │                       │   └── PraiseMessage.java
│   │   │           │                       └── service/
│   │   │           │                           ├── PraiseService.java
│   │   │           │                           └── impl/
│   │   │           │                               └── PraiseServiceImpl.java
│   │   │           └── resources/
│   │   │               └── application.yaml
│   │   ├── integrated-praise-provider/
│   │   │   ├── Dockerfile
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── integration/
│   │   │           │                   └── provider/
│   │   │           │                       ├── PraiseProviderApplication.java
│   │   │           │                       ├── controller/
│   │   │           │                       │   └── PraiseController.java
│   │   │           │                       └── message/
│   │   │           │                           └── PraiseMessage.java
│   │   │           └── resources/
│   │   │               └── application.yaml
│   │   └── integrated-storage/
│   │       ├── Dockerfile
│   │       ├── pom.xml
│   │       └── src/
│   │           └── main/
│   │               ├── java/
│   │               │   └── com/
│   │               │       └── alibaba/
│   │               │           └── cloud/
│   │               │               └── integration/
│   │               │                   └── storage/
│   │               │                       ├── StorageServiceApplication.java
│   │               │                       ├── controller/
│   │               │                       │   └── StorageController.java
│   │               │                       ├── dto/
│   │               │                       │   └── StorageDTO.java
│   │               │                       ├── mapper/
│   │               │                       │   └── StorageMapper.java
│   │               │                       └── service/
│   │               │                           ├── StorageService.java
│   │               │                           └── impl/
│   │               │                               └── StorageServiceImpl.java
│   │               └── resources/
│   │                   └── application.yaml
│   ├── nacos-example/
│   │   ├── nacos-config-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── NacosConfigApplication.java
│   │   │           │                   ├── example/
│   │   │           │                   │   ├── BeanAutoRefreshConfigExample.java
│   │   │           │                   │   ├── ConfigListenerExample.java
│   │   │           │                   │   ├── DockingInterfaceExample.java
│   │   │           │                   │   └── ValueAnnotationExample.java
│   │   │           │                   └── model/
│   │   │           │                       └── NacosConfigInfo.java
│   │   │           └── resources/
│   │   │               └── application.yaml
│   │   ├── nacos-discovery-example/
│   │   │   ├── nacos-discovery-consumer-example/
│   │   │   │   ├── pom.xml
│   │   │   │   ├── scripts/
│   │   │   │   │   ├── error.sh
│   │   │   │   │   ├── feign-defaultmethod-error.sh
│   │   │   │   │   ├── feign-error.sh
│   │   │   │   │   ├── index.sh
│   │   │   │   │   └── sleep.sh
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   ├── ConsumerApplication.java
│   │   │   │           │                   ├── TestController.java
│   │   │   │           │                   ├── configuration/
│   │   │   │           │                   │   ├── FeignConfiguration.java
│   │   │   │           │                   │   ├── RestTemplateConfiguration.java
│   │   │   │           │                   │   └── UrlCleaner.java
│   │   │   │           │                   └── feign/
│   │   │   │           │                       ├── EchoClient.java
│   │   │   │           │                       └── EchoClientFallback.java
│   │   │   │           └── resources/
│   │   │   │               ├── application.properties
│   │   │   │               ├── degraderule.json
│   │   │   │               └── flowrule.json
│   │   │   ├── nacos-discovery-consumer-sclb-example/
│   │   │   │   ├── pom.xml
│   │   │   │   ├── scripts/
│   │   │   │   │   ├── error.sh
│   │   │   │   │   ├── feign-defaultmethod-error.sh
│   │   │   │   │   ├── feign-error.sh
│   │   │   │   │   ├── index.sh
│   │   │   │   │   ├── resttemplate.sh
│   │   │   │   │   └── sleep.sh
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   ├── ConsumerSCLBApplication.java
│   │   │   │           │                   ├── RandomLoadBalancer.java
│   │   │   │           │                   ├── TestController.java
│   │   │   │           │                   ├── config/
│   │   │   │           │                   │   ├── FeignConfiguration.java
│   │   │   │           │                   │   ├── MyLoadBalancerConfiguration.java
│   │   │   │           │                   │   ├── MySCLBConfiguration.java
│   │   │   │           │                   │   ├── RestTemplateConfiguration.java
│   │   │   │           │                   │   └── UrlCleaner.java
│   │   │   │           │                   └── feign/
│   │   │   │           │                       ├── EchoClient.java
│   │   │   │           │                       └── EchoClientFallback.java
│   │   │   │           └── resources/
│   │   │   │               ├── application.properties
│   │   │   │               ├── degraderule.json
│   │   │   │               └── flowrule.json
│   │   │   ├── nacos-discovery-provider-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   ├── EchoController.java
│   │   │   │           │                   └── ProviderApplication.java
│   │   │   │           └── resources/
│   │   │   │               └── application.properties
│   │   │   ├── nacos-discovery-spring-cloud-config-client-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   ├── GetConfigController.java
│   │   │   │           │                   └── SpringCloudConfigClientApplication.java
│   │   │   │           └── resources/
│   │   │   │               └── application.yml
│   │   │   ├── nacos-discovery-spring-cloud-config-server-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   └── SpringCloudConfigServerApplication.java
│   │   │   │           └── resources/
│   │   │   │               └── application.yml
│   │   │   ├── nacos-reactivediscovery-consumer-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   ├── ConsumerReactiveApplication.java
│   │   │   │           │                   ├── MyController.java
│   │   │   │           │                   └── WebClientConfiguration.java
│   │   │   │           └── resources/
│   │   │   │               └── application.properties
│   │   │   └── pom.xml
│   │   ├── nacos-gateway-example/
│   │   │   ├── nacos-gateway-discovery-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   └── GatewayApplication.java
│   │   │   │           └── resources/
│   │   │   │               └── application.properties
│   │   │   ├── nacos-gateway-provider-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   ├── EchoController.java
│   │   │   │           │                   └── ProviderApplication.java
│   │   │   │           └── resources/
│   │   │   │               └── application.properties
│   │   │   └── pom.xml
│   │   ├── readme-zh.md
│   │   └── readme.md
│   ├── pom.xml
│   ├── rocketmq-example/
│   │   ├── readme-zh.md
│   │   ├── readme.md
│   │   ├── rocketmq-broadcast-example/
│   │   │   ├── rocketmq-broadcast-consumer1-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   └── broadcast/
│   │   │   │           │                       └── RocketMQBroadcastConsumer1Application.java
│   │   │   │           └── resources/
│   │   │   │               └── application.yml
│   │   │   ├── rocketmq-broadcast-consumer2-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   └── broadcast/
│   │   │   │           │                       └── RocketMQBroadcastConsumer2Application.java
│   │   │   │           └── resources/
│   │   │   │               └── application.yml
│   │   │   └── rocketmq-broadcast-producer-example/
│   │   │       ├── pom.xml
│   │   │       └── src/
│   │   │           └── main/
│   │   │               ├── java/
│   │   │               │   └── com/
│   │   │               │       └── alibaba/
│   │   │               │           └── cloud/
│   │   │               │               └── examples/
│   │   │               │                   └── broadcast/
│   │   │               │                       └── RocketMQBroadcastProducerApplication.java
│   │   │               └── resources/
│   │   │                   └── application.yml
│   │   ├── rocketmq-comprehensive-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── RocketMQComprehensiveApplication.java
│   │   │           │                   └── User.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── rocketmq-delay-consume-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   └── delay/
│   │   │           │                       └── RocketMQDelayConsumeApplication.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── rocketmq-example-common/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   └── common/
│   │   │           │                       └── SimpleMsg.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── rocketmq-orderly-consume-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   └── orderly/
│   │   │           │                       ├── OrderlyMessageQueueSelector.java
│   │   │           │                       └── RocketMQOrderlyConsumeApplication.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── rocketmq-pollable-consume-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   └── pollable/
│   │   │           │                       └── RocketMQPollableConsumeApplication.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── rocketmq-sql-consume-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   └── sql/
│   │   │           │                       └── RocketMQSqlConsumeApplication.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   └── rocketmq-tx-example/
│   │       ├── pom.xml
│   │       └── src/
│   │           └── main/
│   │               ├── java/
│   │               │   └── com/
│   │               │       └── alibaba/
│   │               │           └── cloud/
│   │               │               └── examples/
│   │               │                   └── tx/
│   │               │                       ├── RocketMQTxApplication.java
│   │               │                       └── TransactionListenerImpl.java
│   │               └── resources/
│   │                   └── application.yml
│   ├── seata-example/
│   │   ├── account-service/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── AccountApplication.java
│   │   │           │                   ├── AccountController.java
│   │   │           │                   └── DatabaseConfiguration.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── all.sql
│   │   ├── business-service/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── BusinessApplication.java
│   │   │           │                   ├── HomeController.java
│   │   │           │                   └── Order.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── order-service/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── DatabaseConfiguration.java
│   │   │           │                   ├── Order.java
│   │   │           │                   ├── OrderApplication.java
│   │   │           │                   └── OrderController.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── readme-zh.md
│   │   ├── readme.md
│   │   └── storage-service/
│   │       ├── pom.xml
│   │       └── src/
│   │           └── main/
│   │               ├── java/
│   │               │   └── com/
│   │               │       └── alibaba/
│   │               │           └── cloud/
│   │               │               └── examples/
│   │               │                   ├── StorageApplication.java
│   │               │                   ├── config/
│   │               │                   │   └── DatabaseConfiguration.java
│   │               │                   └── controller/
│   │               │                       └── StorageController.java
│   │               └── resources/
│   │                   └── application.yml
│   ├── sentinel-example/
│   │   ├── README-zh.md
│   │   ├── README.md
│   │   ├── sentinel-circuitbreaker-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── FeignCircuitBreakerApplication.java
│   │   │           │                   ├── controller/
│   │   │           │                   │   ├── ApiController.java
│   │   │           │                   │   └── TestController.java
│   │   │           │                   └── feign/
│   │   │           │                       ├── OrderClient.java
│   │   │           │                       ├── OrderClientFallBack.java
│   │   │           │                       ├── UserClient.java
│   │   │           │                       └── UserClientFallBack.java
│   │   │           └── resources/
│   │   │               ├── application.yml
│   │   │               └── sentinel-circuitbreaker-rules.yml
│   │   ├── sentinel-core-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── ExceptionUtil.java
│   │   │           │                   ├── JsonFlowRuleListConverter.java
│   │   │           │                   ├── SentinelCoreApplication.java
│   │   │           │                   ├── TestController.java
│   │   │           │                   └── WebMvcConfiguration.java
│   │   │           └── resources/
│   │   │               ├── application.yml
│   │   │               ├── authority.json
│   │   │               ├── degraderule.json
│   │   │               ├── flowrule.json
│   │   │               ├── flowrule.xml
│   │   │               ├── param-flow.json
│   │   │               ├── system.json
│   │   │               └── templates/
│   │   │                   └── errorPage.html
│   │   ├── sentinel-openfeign-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── OpenFeignApplication.java
│   │   │           │                   ├── configuration/
│   │   │           │                   │   ├── EchoServiceFallbackFactory.java
│   │   │           │                   │   ├── HttpbinClient.java
│   │   │           │                   │   ├── HttpbinClientFallback.java
│   │   │           │                   │   └── SentinelRulesConfiguration.java
│   │   │           │                   └── controller/
│   │   │           │                       └── TestController.java
│   │   │           └── resources/
│   │   │               ├── application.yml
│   │   │               ├── degraderule.json
│   │   │               └── flowrule.json
│   │   ├── sentinel-resttemplate-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       ├── main/
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       └── alibaba/
│   │   │       │   │           └── cloud/
│   │   │       │   │               └── examples/
│   │   │       │   │                   ├── RestTemplateApplication.java
│   │   │       │   │                   ├── configuration/
│   │   │       │   │                   │   ├── RestTemplateConfiguration.java
│   │   │       │   │                   │   └── SentinelRulesConfiguration.java
│   │   │       │   │                   └── controller/
│   │   │       │   │                       └── TestController.java
│   │   │       │   └── resources/
│   │   │       │       ├── application.yml
│   │   │       │       ├── degraderule.json
│   │   │       │       └── flowrule.json
│   │   │       └── test/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── alibaba/
│   │   │                       └── cloud/
│   │   │                           └── examples/
│   │   │                               └── RestTemplateApplicationTest.java
│   │   ├── sentinel-spring-cloud-gateway-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── MySCGConfiguration.java
│   │   │           │                   ├── RulesWebFluxController.java
│   │   │           │                   └── SentinelSpringCloudGatewayApplication.java
│   │   │           └── resources/
│   │   │               ├── api.json
│   │   │               ├── application.yaml
│   │   │               └── gateway.json
│   │   └── sentinel-webflux-example/
│   │       ├── pom.xml
│   │       └── src/
│   │           └── main/
│   │               ├── java/
│   │               │   └── com/
│   │               │       └── alibaba/
│   │               │           └── cloud/
│   │               │               └── examples/
│   │               │                   ├── MyConfiguration.java
│   │               │                   ├── SentinelWebFluxApplication.java
│   │               │                   └── SentinelWebFluxController.java
│   │               └── resources/
│   │                   ├── application.yml
│   │                   └── flowrule.json
│   ├── spring-cloud-alibaba-sidecar-examples/
│   │   ├── node-service.js
│   │   ├── readme-zh.md
│   │   ├── readme.md
│   │   ├── spring-cloud-alibaba-sidecar-consul-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── sidecar/
│   │   │           │                   └── DemoApplication.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   └── spring-cloud-alibaba-sidecar-nacos-example/
│   │       ├── pom.xml
│   │       └── src/
│   │           └── main/
│   │               ├── java/
│   │               │   └── com/
│   │               │       └── alibaba/
│   │               │           └── cloud/
│   │               │               └── sidecar/
│   │               │                   └── DemoApplication.java
│   │               └── resources/
│   │                   └── application.yml
│   ├── spring-cloud-bus-rocketmq-example/
│   │   ├── pom.xml
│   │   └── src/
│   │       └── main/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── alibaba/
│   │           │           └── cloud/
│   │           │               └── examples/
│   │           │                   └── rocketmq/
│   │           │                       ├── RocketMQBusApplication.java
│   │           │                       ├── User.java
│   │           │                       └── UserRemoteApplicationEvent.java
│   │           └── resources/
│   │               └── application.properties
│   └── spring-cloud-scheduling-example/
│       ├── README-en.md
│       ├── README.md
│       ├── pom.xml
│       └── src/
│           └── main/
│               ├── java/
│               │   └── com/
│               │       └── alibaba/
│               │           └── cloud/
│               │               └── examples/
│               │                   └── schedule/
│               │                       ├── ScheduleApplication.java
│               │                       └── job/
│               │                           └── SimpleJob.java
│               └── resources/
│                   ├── application-schedulerx.yaml
│                   ├── application-shedlock.yaml
│                   └── application.yaml
├── spring-cloud-alibaba-starters/
│   ├── pom.xml
│   ├── spring-alibaba-nacos-config/
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── nacos/
│   │       │   │                   ├── NacosConfigAutoConfiguration.java
│   │       │   │                   ├── NacosConfigEnabledCondition.java
│   │       │   │                   ├── NacosConfigManager.java
│   │       │   │                   ├── NacosConfigProperties.java
│   │       │   │                   ├── NacosPropertiesPrefixProvider.java
│   │       │   │                   ├── NacosPropertiesPrefixer.java
│   │       │   │                   ├── NacosPropertySourceRepository.java
│   │       │   │                   ├── annotation/
│   │       │   │                   │   ├── AbstractConfigChangeListener.java
│   │       │   │                   │   ├── CustomDateDeserializer.java
│   │       │   │                   │   ├── JsonUtils.java
│   │       │   │                   │   ├── NacosAnnotationProcessor.java
│   │       │   │                   │   ├── NacosConfig.java
│   │       │   │                   │   ├── NacosConfigKeysListener.java
│   │       │   │                   │   ├── NacosConfigListener.java
│   │       │   │                   │   ├── NacosConfigRefreshableListener.java
│   │       │   │                   │   ├── NacosPropertiesKeyListener.java
│   │       │   │                   │   ├── ObjectUtils.java
│   │       │   │                   │   ├── PropertiesUtils.java
│   │       │   │                   │   ├── ScaYamlConfigChangeParser.java
│   │       │   │                   │   └── TargetRefreshable.java
│   │       │   │                   ├── client/
│   │       │   │                   │   ├── NacosPropertySource.java
│   │       │   │                   │   └── NacosPropertySourceBuilder.java
│   │       │   │                   ├── configdata/
│   │       │   │                   │   ├── ConfigPreference.java
│   │       │   │                   │   ├── NacosConfigDataLoadProperties.java
│   │       │   │                   │   ├── NacosConfigDataLoader.java
│   │       │   │                   │   ├── NacosConfigDataLocationResolver.java
│   │       │   │                   │   └── NacosConfigDataResource.java
│   │       │   │                   ├── constants/
│   │       │   │                   │   └── Constants.java
│   │       │   │                   ├── diagnostics/
│   │       │   │                   │   └── analyzer/
│   │       │   │                   │       ├── NacosConnectionFailureAnalyzer.java
│   │       │   │                   │       └── NacosConnectionFailureException.java
│   │       │   │                   ├── endpoint/
│   │       │   │                   │   ├── NacosConfigEndpoint.java
│   │       │   │                   │   ├── NacosConfigEndpointAutoConfiguration.java
│   │       │   │                   │   └── NacosConfigHealthIndicator.java
│   │       │   │                   ├── parser/
│   │       │   │                   │   ├── AbstractPropertySourceLoader.java
│   │       │   │                   │   ├── NacosByteArrayResource.java
│   │       │   │                   │   ├── NacosDataParserHandler.java
│   │       │   │                   │   ├── NacosJsonPropertySourceLoader.java
│   │       │   │                   │   └── NacosXmlPropertySourceLoader.java
│   │       │   │                   ├── proxy/
│   │       │   │                   │   └── druid/
│   │       │   │                   │       ├── NacosDruidConfigFilter.java
│   │       │   │                   │       └── NacosDruidFilterConfiguration.java
│   │       │   │                   ├── refresh/
│   │       │   │                   │   ├── NacosConfigRefreshEvent.java
│   │       │   │                   │   ├── NacosContextRefresher.java
│   │       │   │                   │   ├── NacosPropertySourceRefreshListener.java
│   │       │   │                   │   ├── NacosRefreshHistory.java
│   │       │   │                   │   └── NacosSnapshotConfigManager.java
│   │       │   │                   └── utils/
│   │       │   │                       ├── NacosConfigUtils.java
│   │       │   │                       ├── PropertySourcesUtils.java
│   │       │   │                       └── StringUtils.java
│   │       │   └── resources/
│   │       │       └── META-INF/
│   │       │           ├── additional-spring-configuration-metadata.json
│   │       │           ├── native-image/
│   │       │           │   ├── reflect-config.json
│   │       │           │   └── resource-config.json
│   │       │           ├── services/
│   │       │           │   └── com.alibaba.nacos.api.config.listener.ConfigChangeParser
│   │       │           ├── spring/
│   │       │           │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │       │           └── spring.factories
│   │       └── test/
│   │           └── java/
│   │               ├── com/
│   │               │   └── alibaba/
│   │               │       └── cloud/
│   │               │           └── nacos/
│   │               │               └── annotation/
│   │               │                   └── NacosPropertiesKeyListenerTest.java
│   │               └── com.alibaba.cloud.nacos/
│   │                   ├── NacosConfigPropertiesTest.java
│   │                   ├── configdata/
│   │                   │   └── NacosConfigDataLocationResolverTest.java
│   │                   └── endpoint/
│   │                       └── NacosConfigEndpointTests.java
│   ├── spring-cloud-alibaba-commons/
│   │   ├── pom.xml
│   │   └── src/
│   │       └── main/
│   │           └── java/
│   │               └── com/
│   │                   └── alibaba/
│   │                       └── cloud/
│   │                           └── commons/
│   │                               ├── context/
│   │                               │   └── support/
│   │                               │       └── PropertySourcesUtils.java
│   │                               ├── io/
│   │                               │   ├── Charsets.java
│   │                               │   ├── FileUtils.java
│   │                               │   ├── IOUtils.java
│   │                               │   └── StringBuilderWriter.java
│   │                               └── lang/
│   │                                   └── StringUtils.java
│   ├── spring-cloud-alibaba-sentinel-datasource/
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── sentinel/
│   │       │   │                   └── datasource/
│   │       │   │                       ├── RuleType.java
│   │       │   │                       ├── config/
│   │       │   │                       │   ├── AbstractDataSourceProperties.java
│   │       │   │                       │   ├── ApolloDataSourceProperties.java
│   │       │   │                       │   ├── ConsulDataSourceProperties.java
│   │       │   │                       │   ├── DataSourcePropertiesConfiguration.java
│   │       │   │                       │   ├── FileDataSourceProperties.java
│   │       │   │                       │   ├── NacosDataSourceProperties.java
│   │       │   │                       │   ├── RedisDataSourceProperties.java
│   │       │   │                       │   └── ZookeeperDataSourceProperties.java
│   │       │   │                       ├── converter/
│   │       │   │                       │   ├── JsonConverter.java
│   │       │   │                       │   ├── SentinelConverter.java
│   │       │   │                       │   └── XmlConverter.java
│   │       │   │                       └── factorybean/
│   │       │   │                           ├── ApolloDataSourceFactoryBean.java
│   │       │   │                           ├── ConsulDataSourceFactoryBean.java
│   │       │   │                           ├── FileRefreshableDataSourceFactoryBean.java
│   │       │   │                           ├── NacosDataSourceFactoryBean.java
│   │       │   │                           ├── RedisDataSourceFactoryBean.java
│   │       │   │                           └── ZookeeperDataSourceFactoryBean.java
│   │       │   └── resources/
│   │       │       └── META-INF/
│   │       │           └── sentinel-datasource.properties
│   │       └── test/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── alibaba/
│   │           │           └── cloud/
│   │           │               └── sentinel/
│   │           │                   └── datasource/
│   │           │                       ├── ApolloDataSourceFactoryBeanTests.java
│   │           │                       ├── DataSourcePropertiesConfigurationTests.java
│   │           │                       ├── DataSourcePropertiesTests.java
│   │           │                       ├── FileRefreshableDataSourceFactoryBeanTests.java
│   │           │                       ├── NacosDataSourceFactoryBeanTests.java
│   │           │                       ├── NacosDataSourcePropertiesTests.java
│   │           │                       ├── RuleTypeTests.java
│   │           │                       ├── SentinelConverterTests.java
│   │           │                       └── ZookeeperDataSourceFactoryBeanTests.java
│   │           └── resources/
│   │               ├── flowrule-errorcontent.json
│   │               ├── flowrule-errorformat.json
│   │               ├── flowrule.json
│   │               └── flowrule.xml
│   ├── spring-cloud-alibaba-sentinel-gateway/
│   │   ├── README.md
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── sentinel/
│   │       │   │                   └── gateway/
│   │       │   │                       ├── ConfigConstants.java
│   │       │   │                       ├── FallbackProperties.java
│   │       │   │                       ├── GatewayEnvironmentPostProcessor.java
│   │       │   │                       ├── SentinelGatewayAutoConfiguration.java
│   │       │   │                       └── scg/
│   │       │   │                           ├── SentinelGatewayProperties.java
│   │       │   │                           └── SentinelSCGAutoConfiguration.java
│   │       │   └── resources/
│   │       │       └── META-INF/
│   │       │           ├── spring/
│   │       │           │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │       │           └── spring.factories
│   │       └── test/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── alibaba/
│   │           │           └── cloud/
│   │           │               └── sentinel/
│   │           │                   └── gateway/
│   │           │                       ├── ConfigConstantsTest.java
│   │           │                       ├── FallbackPropertiesTest.java
│   │           │                       ├── GatewayEnvironmentPostProcessorTest.java
│   │           │                       ├── SentinelGatewayAutoConfigurationTest.java
│   │           │                       └── scg/
│   │           │                           ├── SentinelGatewayPropertiesTest.java
│   │           │                           └── SentinelSCGAutoConfigurationTest.java
│   │           └── resources/
│   │               ├── apidefinition.json
│   │               ├── apidefinition.xml
│   │               ├── gatewayflowrule.json
│   │               └── gatewayflowrule.xml
│   ├── spring-cloud-circuitbreaker-sentinel/
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── circuitbreaker/
│   │       │   │                   └── sentinel/
│   │       │   │                       ├── ReactiveSentinelCircuitBreaker.java
│   │       │   │                       ├── ReactiveSentinelCircuitBreakerAutoConfiguration.java
│   │       │   │                       ├── ReactiveSentinelCircuitBreakerFactory.java
│   │       │   │                       ├── SentinelCircuitBreaker.java
│   │       │   │                       ├── SentinelCircuitBreakerAutoConfiguration.java
│   │       │   │                       ├── SentinelCircuitBreakerFactory.java
│   │       │   │                       ├── SentinelConfigBuilder.java
│   │       │   │                       └── feign/
│   │       │   │                           ├── CircuitBreakerRuleChangeListener.java
│   │       │   │                           ├── FeignClientCircuitNameResolver.java
│   │       │   │                           ├── SentinelFeignClientAutoConfiguration.java
│   │       │   │                           └── SentinelFeignClientProperties.java
│   │       │   └── resources/
│   │       │       └── META-INF/
│   │       │           ├── additional-spring-configuration-metadata.json
│   │       │           └── spring/
│   │       │               └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │       └── test/
│   │           └── java/
│   │               └── com/
│   │                   └── alibaba/
│   │                       └── cloud/
│   │                           └── circuitbreaker/
│   │                               └── sentinel/
│   │                                   ├── ReactiveSentinelCircuitBreakerIntegrationTest.java
│   │                                   ├── ReactiveSentinelCircuitBreakerTest.java
│   │                                   ├── SentinelCircuitBreakerIntegrationTest.java
│   │                                   ├── SentinelCircuitBreakerTest.java
│   │                                   └── feign/
│   │                                       └── FeignClientCircuitBreakerRuleIntegrationTest.java
│   ├── spring-cloud-starter-alibaba-nacos-config/
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── nacos/
│   │       │   │                   ├── NacosConfigSpringCloudAutoConfiguration.java
│   │       │   │                   ├── SpringCloudNacosPropertiesPrefixProvider.java
│   │       │   │                   ├── client/
│   │       │   │                   │   └── NacosPropertySourceLocator.java
│   │       │   │                   ├── configdata/
│   │       │   │                   │   ├── NacosConfigDataMissingEnvironmentPostProcessor.java
│   │       │   │                   │   └── NacosConfigRefreshEventListener.java
│   │       │   │                   └── refresh/
│   │       │   │                       ├── RefreshBehavior.java
│   │       │   │                       ├── SmartConfigurationPropertiesRebinder.java
│   │       │   │                       └── condition/
│   │       │   │                           ├── ConditionalOnNonDefaultBehavior.java
│   │       │   │                           └── NonDefaultBehaviorCondition.java
│   │       │   └── resources/
│   │       │       └── META-INF/
│   │       │           ├── additional-spring-configuration-metadata.json
│   │       │           ├── services/
│   │       │           │   └── com.alibaba.cloud.nacos.NacosPropertiesPrefixProvider
│   │       │           ├── spring/
│   │       │           │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │       │           └── spring.factories
│   │       └── test/
│   │           └── java/
│   │               └── com/
│   │                   └── alibaba/
│   │                       └── cloud/
│   │                           └── nacos/
│   │                               ├── SmartConfigurationPropertiesRebinderIntegrationTest.java
│   │                               └── configdata/
│   │                                   └── NacosConfigDataMissingEnvironmentPostProcessorTest.java
│   ├── spring-cloud-starter-alibaba-nacos-discovery/
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── nacos/
│   │       │   │                   ├── ConditionalOnNacosDiscoveryEnabled.java
│   │       │   │                   ├── NacosDiscoveryProperties.java
│   │       │   │                   ├── NacosServiceAutoConfiguration.java
│   │       │   │                   ├── NacosServiceInstance.java
│   │       │   │                   ├── NacosServiceManager.java
│   │       │   │                   ├── balancer/
│   │       │   │                   │   └── NacosBalancer.java
│   │       │   │                   ├── discovery/
│   │       │   │                   │   ├── NacosDiscoveryAutoConfiguration.java
│   │       │   │                   │   ├── NacosDiscoveryClient.java
│   │       │   │                   │   ├── NacosDiscoveryClientConfiguration.java
│   │       │   │                   │   ├── NacosDiscoveryHeartBeatConfiguration.java
│   │       │   │                   │   ├── NacosDiscoveryHeartBeatPublisher.java
│   │       │   │                   │   ├── NacosServiceDiscovery.java
│   │       │   │                   │   ├── NacosWatch.java
│   │       │   │                   │   ├── ServiceCache.java
│   │       │   │                   │   ├── actuate/
│   │       │   │                   │   │   └── health/
│   │       │   │                   │   │       └── NacosDiscoveryHealthIndicator.java
│   │       │   │                   │   ├── configclient/
│   │       │   │                   │   │   ├── NacosConfigServerAutoConfiguration.java
│   │       │   │                   │   │   └── NacosDiscoveryClientConfigServiceBootstrapConfiguration.java
│   │       │   │                   │   └── reactive/
│   │       │   │                   │       ├── NacosReactiveDiscoveryClient.java
│   │       │   │                   │       └── NacosReactiveDiscoveryClientConfiguration.java
│   │       │   │                   ├── endpoint/
│   │       │   │                   │   ├── NacosDiscoveryEndpoint.java
│   │       │   │                   │   └── NacosDiscoveryEndpointAutoConfiguration.java
│   │       │   │                   ├── event/
│   │       │   │                   │   └── NacosDiscoveryInfoChangedEvent.java
│   │       │   │                   ├── loadbalancer/
│   │       │   │                   │   ├── ConditionalOnLoadBalancerNacos.java
│   │       │   │                   │   ├── DefaultLoadBalancerAlgorithm.java
│   │       │   │                   │   ├── LoadBalancerAlgorithm.java
│   │       │   │                   │   ├── LoadBalancerNacosAutoConfiguration.java
│   │       │   │                   │   ├── NacosLoadBalancer.java
│   │       │   │                   │   ├── NacosLoadBalancerClientConfiguration.java
│   │       │   │                   │   └── ServiceInstanceFilter.java
│   │       │   │                   ├── registry/
│   │       │   │                   │   ├── NacosAutoServiceRegistration.java
│   │       │   │                   │   ├── NacosGracefulShutdownDelegate.java
│   │       │   │                   │   ├── NacosRegistration.java
│   │       │   │                   │   ├── NacosRegistrationCustomizer.java
│   │       │   │                   │   ├── NacosServiceRegistry.java
│   │       │   │                   │   └── NacosServiceRegistryAutoConfiguration.java
│   │       │   │                   └── util/
│   │       │   │                       ├── InetIPv6Utils.java
│   │       │   │                       └── UtilIPv6AutoConfiguration.java
│   │       │   └── resources/
│   │       │       └── META-INF/
│   │       │           ├── additional-spring-configuration-metadata.json
│   │       │           ├── native-image/
│   │       │           │   ├── reflect-config.json
│   │       │           │   └── resource-config.json
│   │       │           ├── spring/
│   │       │           │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │       │           └── spring.factories
│   │       └── test/
│   │           └── java/
│   │               └── com/
│   │                   └── alibaba/
│   │                       └── cloud/
│   │                           └── nacos/
│   │                               ├── NacosDiscoveryClientTests.java
│   │                               ├── NacosDiscoveryPropertiesServerAddressBothLevelTests.java
│   │                               ├── NacosDiscoveryPropertiesServerAddressTopLevelTests.java
│   │                               ├── discovery/
│   │                               │   ├── NacosDiscoveryAutoConfigurationTests.java
│   │                               │   ├── NacosDiscoveryClientConfigurationTest.java
│   │                               │   ├── NacosDiscoveryHeartBeatConfigurationTest.java
│   │                               │   ├── NacosDiscoveryLoadBalancerConfigurationTest.java
│   │                               │   ├── NacosServiceDiscoveryTest.java
│   │                               │   └── reactive/
│   │                               │       ├── NacosReactiveDiscoveryClientConfigurationTests.java
│   │                               │       └── NacosReactiveDiscoveryClientTests.java
│   │                               ├── registry/
│   │                               │   ├── MockNamingService.java
│   │                               │   ├── NacosAutoServiceRegistrationIpNetworkInterfaceTests.java
│   │                               │   ├── NacosAutoServiceRegistrationIpTests.java
│   │                               │   ├── NacosAutoServiceRegistrationManagementPortTests.java
│   │                               │   ├── NacosAutoServiceRegistrationPortTests.java
│   │                               │   ├── NacosAutoServiceRegistrationTests.java
│   │                               │   ├── NacosGracefulShutdownDelegateTests.java
│   │                               │   └── NacosRegistrationCustomizerTest.java
│   │                               └── test/
│   │                                   ├── CommonTestConfig.java
│   │                                   └── NacosMockTest.java
│   ├── spring-cloud-starter-alibaba-schedulerx/
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── scheduling/
│   │       │   │                   ├── SchedulingConstants.java
│   │       │   │                   ├── schedulerx/
│   │       │   │                   │   ├── JobProperty.java
│   │       │   │                   │   ├── SchedulerxAutoConfigure.java
│   │       │   │                   │   ├── SchedulerxConfigurations.java
│   │       │   │                   │   ├── SchedulerxProperties.java
│   │       │   │                   │   ├── constants/
│   │       │   │                   │   │   └── SchedulerxConstants.java
│   │       │   │                   │   ├── service/
│   │       │   │                   │   │   ├── JobSyncService.java
│   │       │   │                   │   │   └── ScheduledJobSyncConfigurer.java
│   │       │   │                   │   └── util/
│   │       │   │                   │       └── CronExpression.java
│   │       │   │                   └── shedlock/
│   │       │   │                       └── ShedLockAutoConfigure.java
│   │       │   └── resources/
│   │       │       ├── META-INF/
│   │       │       │   ├── spring/
│   │       │       │   │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │       │       │   └── spring.factories
│   │       │       └── shedlock/
│   │       │           └── schema/
│   │       │               └── schema-mysql.sql
│   │       └── test/
│   │           └── java/
│   │               └── com/
│   │                   └── alibaba/
│   │                       └── cloud/
│   │                           └── scheduling/
│   │                               └── schedulerx/
│   │                                   └── util/
│   │                                       └── CronExpressionTest.java
│   ├── spring-cloud-starter-alibaba-seata/
│   │   ├── pom.xml
│   │   └── src/
│   │       └── main/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── alibaba/
│   │           │           └── cloud/
│   │           │               └── seata/
│   │           │                   ├── feign/
│   │           │                   │   ├── SeataFeignBuilderBeanPostProcessor.java
│   │           │                   │   ├── SeataFeignClientAutoConfiguration.java
│   │           │                   │   └── SeataFeignRequestInterceptor.java
│   │           │                   ├── rest/
│   │           │                   │   ├── SeataRestTemplateAutoConfiguration.java
│   │           │                   │   ├── SeataRestTemplateInterceptor.java
│   │           │                   │   └── SeataRestTemplateInterceptorAfterPropertiesSet.java
│   │           │                   ├── web/
│   │           │                   │   ├── SeataHandlerInterceptor.java
│   │           │                   │   └── SeataHandlerInterceptorConfiguration.java
│   │           │                   ├── webclient/
│   │           │                   │   ├── SeataWebClientAutoConfiguration.java
│   │           │                   │   ├── SeataWebClientBuilderCustomizer.java
│   │           │                   │   └── SeataWebClientFilter.java
│   │           │                   └── webflux/
│   │           │                       ├── SeataWebFilter.java
│   │           │                       └── SeataWebfluxAutoConfiguration.java
│   │           └── resources/
│   │               └── META-INF/
│   │                   ├── native-image/
│   │                   │   ├── com.alibaba.cloud/
│   │                   │   │   └── spring-cloud-starter-alibaba-seata/
│   │                   │   │       └── native-image.properties
│   │                   │   ├── proxy-config.json
│   │                   │   ├── reflect-config.json
│   │                   │   └── resource-config.json
│   │                   └── spring/
│   │                       └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   ├── spring-cloud-starter-alibaba-sentinel/
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── sentinel/
│   │       │   │                   ├── SentinelConstants.java
│   │       │   │                   ├── SentinelProperties.java
│   │       │   │                   ├── SentinelWebAutoConfiguration.java
│   │       │   │                   ├── SentinelWebFluxAutoConfiguration.java
│   │       │   │                   ├── SentinelWebMvcConfigurer.java
│   │       │   │                   ├── annotation/
│   │       │   │                   │   └── SentinelRestTemplate.java
│   │       │   │                   ├── aot/
│   │       │   │                   │   └── hint/
│   │       │   │                   │       └── SentinelProtectInterceptorHints.java
│   │       │   │                   ├── custom/
│   │       │   │                   │   ├── BlockClassRegistry.java
│   │       │   │                   │   ├── SentinelAutoConfiguration.java
│   │       │   │                   │   ├── SentinelBeanPostProcessor.java
│   │       │   │                   │   ├── SentinelDataSourceHandler.java
│   │       │   │                   │   ├── SentinelProtectInterceptor.java
│   │       │   │                   │   └── context/
│   │       │   │                   │       └── SentinelApplicationContextInitializer.java
│   │       │   │                   ├── endpoint/
│   │       │   │                   │   ├── SentinelEndpoint.java
│   │       │   │                   │   ├── SentinelEndpointAutoConfiguration.java
│   │       │   │                   │   └── SentinelHealthIndicator.java
│   │       │   │                   ├── feign/
│   │       │   │                   │   ├── SentinelContractHolder.java
│   │       │   │                   │   ├── SentinelFeign.java
│   │       │   │                   │   ├── SentinelFeignAutoConfiguration.java
│   │       │   │                   │   └── SentinelInvocationHandler.java
│   │       │   │                   └── rest/
│   │       │   │                       └── SentinelClientHttpResponse.java
│   │       │   └── resources/
│   │       │       └── META-INF/
│   │       │           ├── additional-spring-configuration-metadata.json
│   │       │           ├── native-image/
│   │       │           │   ├── reflect-config.json
│   │       │           │   └── resource-config.json
│   │       │           ├── spring/
│   │       │           │   ├── aot.factories
│   │       │           │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │       │           └── spring.factories
│   │       └── test/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── alibaba/
│   │           │           └── cloud/
│   │           │               └── sentinel/
│   │           │                   ├── ContextIdSentinelFeignTests.java
│   │           │                   ├── SentinelAutoConfigurationTests.java
│   │           │                   ├── SentinelBeanAutowiredTests.java
│   │           │                   ├── SentinelDataSourceTests.java
│   │           │                   ├── SentinelFallbackSupportFactoryBeanTests.java
│   │           │                   ├── SentinelFeignLazilyTests.java
│   │           │                   ├── SentinelFeignTests.java
│   │           │                   ├── SentinelRestTemplateTests.java
│   │           │                   ├── TestConverter.java
│   │           │                   ├── aot/
│   │           │                   │   └── hint/
│   │           │                   │       └── SentinelProtectInterceptorHintsTest.java
│   │           │                   ├── custom/
│   │           │                   │   └── SentinelDataSourceHandlerTests.java
│   │           │                   └── endpoint/
│   │           │                       └── SentinelHealthIndicatorTests.java
│   │           └── resources/
│   │               ├── authority.json
│   │               ├── degraderule.json
│   │               ├── flowrule.json
│   │               ├── param-flow.json
│   │               └── system.json
│   ├── spring-cloud-starter-alibaba-sidecar/
│   │   ├── pom.xml
│   │   └── src/
│   │       └── main/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── alibaba/
│   │           │           └── cloud/
│   │           │               └── sidecar/
│   │           │                   ├── CustomHealthCheckHandler.java
│   │           │                   ├── SidecarAutoConfiguration.java
│   │           │                   ├── SidecarDiscoveryClient.java
│   │           │                   ├── SidecarHealthChecker.java
│   │           │                   ├── SidecarHealthIndicator.java
│   │           │                   ├── SidecarInstanceInfo.java
│   │           │                   ├── SidecarProperties.java
│   │           │                   ├── consul/
│   │           │                   │   ├── SidecarConsulAutoConfiguration.java
│   │           │                   │   ├── SidecarConsulAutoRegistration.java
│   │           │                   │   └── SidecarConsulDiscoveryClient.java
│   │           │                   └── nacos/
│   │           │                       ├── SidecarNacosAutoConfiguration.java
│   │           │                       ├── SidecarNacosDiscoveryClient.java
│   │           │                       └── SidecarNacosDiscoveryProperties.java
│   │           └── resources/
│   │               └── META-INF/
│   │                   └── spring/
│   │                       └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   ├── spring-cloud-starter-bus-rocketmq/
│   │   ├── pom.xml
│   │   └── src/
│   │       └── main/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── alibaba/
│   │           │           └── cloud/
│   │           │               └── bus/
│   │           │                   └── rocketmq/
│   │           │                       ├── autoconfigurate/
│   │           │                       │   └── RocketMQBusAutoConfiguration.java
│   │           │                       └── env/
│   │           │                           └── RocketMQBusEnvironmentPostProcessor.java
│   │           └── resources/
│   │               └── META-INF/
│   │                   ├── spring/
│   │                   │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │                   └── spring.factories
│   └── spring-cloud-starter-stream-rocketmq/
│       ├── pom.xml
│       └── src/
│           ├── main/
│           │   ├── java/
│           │   │   └── com/
│           │   │       └── alibaba/
│           │   │           └── cloud/
│           │   │               └── stream/
│           │   │                   └── binder/
│           │   │                       └── rocketmq/
│           │   │                           ├── RocketMQMessageChannelBinder.java
│           │   │                           ├── actuator/
│           │   │                           │   └── RocketMQBinderHealthIndicator.java
│           │   │                           ├── aot/
│           │   │                           │   └── hint/
│           │   │                           │       ├── RocketMQConsumerPropertiesHints.java
│           │   │                           │       └── RocketMQSpecificPropertiesProviderHints.java
│           │   │                           ├── autoconfigurate/
│           │   │                           │   ├── ExtendedBindingHandlerMappingsProviderConfiguration.java
│           │   │                           │   └── RocketMQBinderAutoConfiguration.java
│           │   │                           ├── constant/
│           │   │                           │   └── RocketMQConst.java
│           │   │                           ├── convert/
│           │   │                           │   └── RocketMQMessageConverter.java
│           │   │                           ├── custom/
│           │   │                           │   ├── RocketMQBeanContainerCache.java
│           │   │                           │   └── RocketMQConfigBeanPostProcessor.java
│           │   │                           ├── extend/
│           │   │                           │   └── ErrorAcknowledgeHandler.java
│           │   │                           ├── integration/
│           │   │                           │   ├── inbound/
│           │   │                           │   │   ├── RocketMQConsumerFactory.java
│           │   │                           │   │   ├── RocketMQInboundChannelAdapter.java
│           │   │                           │   │   └── pull/
│           │   │                           │   │       ├── DefaultErrorAcknowledgeHandler.java
│           │   │                           │   │       ├── RocketMQAckCallback.java
│           │   │                           │   │       └── RocketMQMessageSource.java
│           │   │                           │   └── outbound/
│           │   │                           │       ├── RocketMQProduceFactory.java
│           │   │                           │       └── RocketMQProducerMessageHandler.java
│           │   │                           ├── metrics/
│           │   │                           │   ├── Instrumentation.java
│           │   │                           │   └── InstrumentationManager.java
│           │   │                           ├── properties/
│           │   │                           │   ├── RocketMQBinderConfigurationProperties.java
│           │   │                           │   ├── RocketMQCommonProperties.java
│           │   │                           │   ├── RocketMQConsumerProperties.java
│           │   │                           │   ├── RocketMQExtendedBindingProperties.java
│           │   │                           │   ├── RocketMQProducerProperties.java
│           │   │                           │   └── RocketMQSpecificPropertiesProvider.java
│           │   │                           ├── provisioning/
│           │   │                           │   ├── RocketMQTopicProvisioner.java
│           │   │                           │   └── selector/
│           │   │                           │       └── PartitionMessageQueueSelector.java
│           │   │                           ├── support/
│           │   │                           │   ├── AbstractRocketMQHeaderMapper.java
│           │   │                           │   ├── JacksonRocketMQHeaderMapper.java
│           │   │                           │   ├── RocketMQHeaderMapper.java
│           │   │                           │   └── RocketMQMessageConverterSupport.java
│           │   │                           └── utils/
│           │   │                               └── RocketMQUtils.java
│           │   └── resources/
│           │       └── META-INF/
│           │           ├── native-image/
│           │           │   ├── com.alibaba.cloud/
│           │           │   │   └── spring-cloud-starter-stream-rocketmq/
│           │           │   │       └── native-image.properties
│           │           │   └── reflect-config.json
│           │           ├── spring/
│           │           │   ├── aot.factories
│           │           │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│           │           └── spring.binders
│           └── test/
│               └── java/
│                   └── com/
│                       └── alibaba/
│                           └── cloud/
│                               └── stream/
│                                   └── binder/
│                                       └── rocketmq/
│                                           ├── RocketMQAutoConfigurationTests.java
│                                           ├── RocketMQMessageChannelBinderTest.java
│                                           ├── RocketMQMessageConverterSupportTest.java
│                                           ├── TestConsumerDestination.java
│                                           └── aot/
│                                               └── hint/
│                                                   ├── RocketMQConsumerPropertiesHintsTests.java
│                                                   └── RocketMQSpecificPropertiesProviderHintsTests.java
└── spring-cloud-alibaba-tests/
    ├── nacos-tests/
    │   ├── nacos-config-test/
    │   │   └── src/
    │   │       └── test/
    │   │           └── resources/
    │   │               └── docker/
    │   │                   └── nacos-compose-test.yml
    │   ├── nacos-discovery-test/
    │   │   ├── pom.xml
    │   │   └── src/
    │   │       ├── main/
    │   │       │   └── java/
    │   │       │       └── com/
    │   │       │           └── alibaba/
    │   │       │               └── cloud/
    │   │       │                   └── tests/
    │   │       │                       └── nacos/
    │   │       │                           └── discovery/
    │   │       │                               └── NacosDiscoveryTestApp.java
    │   │       └── test/
    │   │           ├── java/
    │   │           │   └── com/
    │   │           │       └── alibaba/
    │   │           │           └── cloud/
    │   │           │               └── tests/
    │   │           │                   └── nacos/
    │   │           │                       └── discovery/
    │   │           │                           └── NacosDiscoveryTest.java
    │   │           └── resources/
    │   │               ├── application-service-1.yml
    │   │               ├── application-service-2.yml
    │   │               ├── docker/
    │   │               │   └── nacos-compose-test.yml
    │   │               └── nacos/
    │   │                   └── nacos-config-refresh.yml
    │   └── pom.xml
    ├── pom.xml
    ├── rocketmq-tests/
    │   ├── pom.xml
    │   └── rocketmq-stream-test/
    │       ├── pom.xml
    │       └── src/
    │           ├── main/
    │           │   └── java/
    │           │       └── com/
    │           │           └── alibaba/
    │           │               └── cloud/
    │           │                   └── stream/
    │           │                       └── binder/
    │           │                           └── rocketmq/
    │           │                               └── RocketmqStreamApplication.java
    │           └── test/
    │               ├── java/
    │               │   └── com/
    │               │       └── alibaba/
    │               │           └── cloud/
    │               │               └── stream/
    │               │                   └── binder/
    │               │                       └── rocketmq/
    │               │                           ├── RocketMQAutoConfigurationTests.java
    │               │                           ├── RocketmqProduceAndConsumerTests.java
    │               │                           └── fixture/
    │               │                               └── RocketmqBinderProcessor.java
    │               └── resources/
    │                   └── docker/
    │                       ├── data/
    │                       │   └── broker/
    │                       │       └── conf/
    │                       │           └── broker.conf
    │                       ├── data1/
    │                       │   └── broker/
    │                       │       └── conf/
    │                       │           └── broker.conf
    │                       └── rocket-compose-test.yml
    ├── sentinel-tests/
    │   ├── pom.xml
    │   ├── sentinel-degrade-test/
    │   │   ├── pom.xml
    │   │   └── src/
    │   │       ├── main/
    │   │       │   ├── java/
    │   │       │   │   └── com/
    │   │       │   │       └── alibaba/
    │   │       │   │           └── cloud/
    │   │       │   │               └── tests/
    │   │       │   │                   └── sentinel/
    │   │       │   │                       └── degrade/
    │   │       │   │                           └── SentinelDegradeTestApp.java
    │   │       │   └── resources/
    │   │       │       └── application.yml
    │   │       └── test/
    │   │           └── java/
    │   │               └── com/
    │   │                   └── alibaba/
    │   │                       └── cloud/
    │   │                           └── tests/
    │   │                               └── sentinel/
    │   │                                   └── degrade/
    │   │                                       └── SentinelDegradeTestAppTest.java
    │   └── sentinel-flowcontrol-test/
    │       ├── pom.xml
    │       └── src/
    │           ├── main/
    │           │   ├── java/
    │           │   │   └── com/
    │           │   │       └── alibaba/
    │           │   │           └── cloud/
    │           │   │               └── tests/
    │           │   │                   └── sentinel/
    │           │   │                       └── degrade/
    │           │   │                           ├── SentinelFlowControlTestApp.java
    │           │   │                           └── Util.java
    │           │   └── resources/
    │           │       └── application.yml
    │           └── test/
    │               └── java/
    │                   └── com/
    │                       └── alibaba/
    │                           └── cloud/
    │                               └── tests/
    │                                   └── sentinel/
    │                                       └── degrade/
    │                                           └── SentinelFlowControlTestAppTest.java
    └── spring-cloud-alibaba-test-support/
        ├── pom.xml
        └── src/
            └── main/
                ├── java/
                │   └── com/
                │       └── alibaba/
                │           └── cloud/
                │               └── testsupport/
                │                   ├── Constant.java
                │                   ├── ContainerStarter.java
                │                   ├── Func.java
                │                   ├── HasDockerAndItEnabled.java
                │                   ├── HasDockerAndItEnabledCondition.java
                │                   ├── InetUtil.java
                │                   ├── SpringCloudAlibaba.java
                │                   ├── SpringCloudAlibabaExtension.java
                │                   ├── TestExtend.java
                │                   ├── TestTimeoutExtension.java
                │                   └── Tester.java
                └── resources/
                    └── rocketmq/
                        └── conf/
                            └── broker.conf

================================================
FILE CONTENTS
================================================

================================================
FILE: .circleci/config.yml
================================================
version: 2
jobs:
  build:
    docker:
      - image: springcloud/pipeline-base
        user: appuser
    environment:
      _JAVA_OPTIONS: "-Xms1024m -Xmx2048m"
      TERM: dumb
    branches:
      ignore:
        - gh-pages # list of branches to ignore
    resource_class: medium
    steps:
      - checkout
      - restore_cache:
          key: sc-alibaba-{{ .Branch }}
      - run:
          name: "Download dependencies"
          command: ./mvnw -Pspring -U --fail-never dependency:go-offline || true
      - save_cache:
          key: sc-alibaba-{{ .Branch }}
          paths:
            - ~/.m2
      - run:
          name: "Running build"
          command: ./mvnw clean install -U -nsu --batch-mode -Dmaven.test.redirectTestOutputToFile=true -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn -Dgpg.skip
      - run:
          name: "Aggregate test results"
          when: always
          command: |
            mkdir -p ~/junit/
            find . -type f -regex ".*/target/.*-reports/.*" -exec cp {} ~/junit/ \;
            bash <(curl -s https://codecov.io/bash)
      - store_artifacts:
          path: ~/junit/
          destination: artifacts
      - store_test_results:
          path: ~/junit/
          destination: testartifacts

================================================
FILE: .codecov.yml
================================================

coverage:
  status:
    project: off
    patch: off

================================================
FILE: .editorconfig
================================================
root = true

[*.java]
indent_style = tab
indent_size = 4
continuation_indent_size = 8

[*.groovy]
indent_style = tab
indent_size = 4
continuation_indent_size = 8

[*.xml]
indent_style = tab
indent_size = 4
continuation_indent_size = 8

[*.yml]
indent_style = space
indent_size = 2

[*.yaml]
indent_style = space
indent_size = 2


================================================
FILE: .github/ISSUE_TEMPLATE/bug_report.md
================================================
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

我们鼓励使用英文,如果不能直接使用,可以使用翻译软件,您仍旧可以保留中文原文。另外请按照如下要求提交相关信息节省社区维护同学的理解成本,否则该讨论极有可能直接被忽视或关闭。
We recommend using English. If you are non-native English speaker, you can use the translation software. We recommend using English. If you are non-native English speaker, you can use the translation software. In addition, please submit relevant information according to the following requirements to save the understanding cost of community maintenances, otherwise the discussion is very likely to be ignored or closed directly.


**Which Component**
eg. Nacos Discovery, Sentinel

**Describe the bug**
A clear and concise description of what the bug is.

**Simplest demo**
The URL of the simplest demo to reproduce the problem.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Additional context**
Add any other context about the problem here.
e.g.  MacOS  、Java8 、 Version 0.2.1.RELEASE


================================================
FILE: .github/ISSUE_TEMPLATE/config.yml
================================================
blank_issues_enabled: true


================================================
FILE: .github/ISSUE_TEMPLATE/feature_request.md
================================================
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

我们鼓励使用英文,如果不能直接使用,可以使用翻译软件,您仍旧可以保留中文原文。另外请按照如下要求提交相关信息节省社区维护同学的理解成本,否则该讨论极有可能直接被忽视或关闭。
We recommend using English. If you are non-native English speaker, you can use the translation software. In addition, please submit relevant information according to the following requirements to save the understanding cost of community maintenances, otherwise the discussion is very likely to be ignored or closed directly.


**Which Component**
eg. Nacos Discovery, Sentinel

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.


================================================
FILE: .github/ISSUE_TEMPLATE/question.md
================================================
---
name: Question
about: how to ask a valid question
title: ''
labels: ''
assignees: ''

---

我们鼓励使用英文,如果不能直接使用,可以使用翻译软件,您仍旧可以保留中文原文。另外请按照如下要求提交相关信息节省社区维护同学的理解成本,否则该讨论极有可能直接被忽视或关闭。
We recommend using English. If you are non-native English speaker, you can use the translation software. We recommend using English. If you are non-native English speaker, you can use the translation software. In addition, please submit relevant information according to the following requirements to save the understanding cost of community maintenances, otherwise the discussion is very likely to be ignored or closed directly.



**Which Component**
eg. Nacos Discovery, Sentinel

**Describe what problem you have encountered**
A clear and concise description of what you want to do.

**Describe what information you have read**
eg. I have read the reference doc of Sentinel


================================================
FILE: .github/PULL_REQUEST_TEMPLATE.md
================================================

### Describe what this PR does / why we need it


### Does this pull request fix one issue?

<!--If that, add "Fixes #xxxx" below in the next line. For example, Fixes #15. Otherwise, add "NONE" -->

### Describe how you did it


### Describe how to verify it


### Special notes for reviews


================================================
FILE: .github/dependbot.yml
================================================
# `dependabot.yml` file with
# maven version update.

version: 2
updates:

  - package-ecosystem: "maven"
    directory: "/"
    open-pull-requests-limit: 20
    # Ignore major version updates
    ignore:
      - dependency-name: "*"
        update-types: ["version-update:semver-major"]
    schedule:
      interval: "weekly"
      day: "monday"
      time: "03:00"
      timezone: "US/Eastern"


================================================
FILE: .github/labels.yml
================================================
area:
  - 'ai'
  - 'ci'
  - 'nacos'
  - 'sentinel'
  - 'rocketmq'
  - 'community'
  - 'example'
  - 'seata'
  - 'openSergo'
  - 'spring cloud'
  - 'testing'

kind:
  - 'bug'
  - 'chore'
  - 'discussion'
  - 'documention'
  - 'question'
  - 'refactor'
  - 'invalid'
  - 'enhancement'
  


================================================
FILE: .github/workflows/github-packages-release.yml
================================================
name: GitHub Packages Release
on:
  push:
    branches:
      - 2023.x
      - 2025.0.x
      - 2025.1.x
jobs:
  release:
    name: Release
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Set up JDK 17
        uses: actions/setup-java@v4
        with:
          java-version: '17'
          distribution: 'adopt'
      - name: Dependencies Cache
        uses: actions/cache@v4
        with:
          path: ~/.m2/repository
          key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
          restore-keys: |
            ${{ runner.os }}-maven-
      - name: install dependencies
        run: mvn clean -B install -U package -pl '!spring-cloud-alibaba-coverage'  -DskipTests
      - name: cat ~/.m2/settings.xml
        run: |
          cat ~/.m2/settings.xml
      - name: Deploy to GitHub Package Maven
        run: |
          VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)
          echo "Project version: $VERSION"
          if [[ "$VERSION" != *"-SNAPSHOT" ]]; then
            echo "Not a snapshot version. Skipping deployment."
            exit 0
          fi
          mvn clean -B deploy -pl . -DskipTests
          cd $GITHUB_WORKSPACE/spring-cloud-alibaba-dependencies
          mvn clean -B deploy -DskipTests
          cd $GITHUB_WORKSPACE/spring-cloud-alibaba-starters
          mvn clean -B deploy -DskipTests
        env:
          GITHUB_TOKEN: ${{ github.token }}
      - name: Delete snapshots from the Maven local repository
        run: find ~/.m2/repository -type d -name '*-SNAPSHOT' -print -exec rm -r {} +


================================================
FILE: .github/workflows/integration-test.yml
================================================
name: Integration Testing
on:
  push:
    branches:
      - 2023.x
      - 2025.0.x
      - 2025.1.x
  pull_request:
    branches:
      - 2023.x
      - 2025.0.x
      - 2025.1.x
jobs:
  deploy-docker-image:
    runs-on: ubuntu-latest
    timeout-minutes: 60
    steps:
      - name: Check out the repo
        uses: actions/checkout@v4

      - name: Set up QEMU
        uses: docker/setup-qemu-action@v1

      - name: Set up Docker Buildx
        uses: docker/setup-buildx-action@v1

  integration-testing:
    name: Integration Testing
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Set up JDK 17
        uses: actions/setup-java@v4
        with:
          java-version: '17'
          distribution: 'adopt'
      - name: Dependencies Cache
        uses: actions/cache@v4
        with:
          path: ~/.m2/repository
          key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
          restore-keys: |
            ${{ runner.os }}-maven-
      - name: Compile & Checkstyle
        run: mvn clean -B compile
      - name: install dependencies
        run: mvn clean -B install -U package -pl '!spring-cloud-alibaba-coverage'  -DskipTests
      - name: Testing
        run: ./mvnw verify -B -Dmaven.test.skip=false
#        run: mvn clean -Dit.enabled=true test
      - name: Delete snapshots from the Maven local repository
        run: find ~/.m2/repository -type d -name '*-SNAPSHOT' -print -exec rm -r {} +



================================================
FILE: .github/workflows/issue-command.yml
================================================
name: Issue and PR comment commands

permissions: {}

on:
  issue_comment:
    types:
      - created
      - edited

jobs:
  execute:
    runs-on: ubuntu-latest
    permissions:
      issues: write
      pull-requests: write
    steps:
      - uses: jpmcb/prow-github-actions@f4d01dd4b13f289014c23fe5a19878a2479cb35b  # v1.1.3
        with:
          prow-commands: '/assign
            /unassign
            /area
            /kind
            /priority
            /remove
            /close
            /reopen
            /lock
            /milestone
            /hold
            /cc
            /uncc'
          github-token: "${{ secrets.GITHUB_TOKEN }}"



================================================
FILE: .github/workflows/md-link-check.yml
================================================
name: 'Link Checker'

# **What it does**: Renders the content of every page and check all internal links.
# **Why we have it**: To make sure all links connect correctly.
# **Who does it impact**: Docs content.

on:
  workflow_dispatch:
  push:
    # branches: [master, 'release/**']
    paths:
      - '**/*.md'
      - '**/link-check.yml'
  pull_request:
    branches: [2023.x, 2025.0.x, 2025.1.x, "release/**"]
    paths:
      - '**/*.md'
      - '**/link-check.yml'

permissions:
  contents: read
  # Needed for the 'trilom/file-changes-action' action
  pull-requests: read

# This allows a subsequently queued workflow run to interrupt previous runs
concurrency:
  group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}'
  cancel-in-progress: true

jobs:
  check-links:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Get script
        run: |
          wget https://raw.githubusercontent.com/xuruidong/markdown-link-checker/main/link_checker.py

      - name: Setup python
        uses: actions/setup-python@v4
        with:
          python-version: '3.9'

      - name: Link check (critical, all files)
        run: |
          # python link_checker.py ./ --enable-external --ignore "http://apisix.iresty.com" "https://www.upyun.com" "https://github.com/apache/apisix/actions/workflows/build.yml/badge.svg" "https://httpbin.org/" "https://en.wikipedia.org/wiki/Cache"
          python link_checker.py ./


================================================
FILE: .github/workflows/stale.yml
================================================
name: "Stale bot of marking stale issues"
on:
  schedule:
    - cron: "50 18 * * *"

permissions:
  issues: write

jobs:
  stale:
    runs-on: ubuntu-latest
    permissions:
      issues: write
      pull-requests: write
    
    steps:
      - uses: actions/stale@v5
        with:
          repo-token: ${{ secrets.GITHUB_TOKEN }}
          stale-issue-message: 'This issue has been open 30 days with no activity. This will be closed in 7 days.'
          close-issue-message: "This issue has been automatically marked as stale because it hasn't had any recent activity.If you think this should still be open, or the problem still persists, just pop a reply in the comments and one of the maintainers will (try!) to follow up. Thank you for your interest and contribution to the Sping Cloud Alibaba Community."
          days-before-issue-stale: 30
          days-before-issue-close: 7
          stale-issue-label: "stale"
          close-issue-label: "wait-for-feedback"
          exempt-all-milestones: true
          operations-per-run: 10
          days-before-pr-stale: -1
          days-before-pr-close: -1
          exempt-issue-labels: discussion,bug,question,good first issue
 


================================================
FILE: .gitignore
================================================
# Compiled class file
*.class
*.classpath
*.factorypath

# Log file
*.log

# BlueJ files
*.ctxt

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
!.mvn/wrapper/maven-wrapper.jar

*.war
*.ear
*.zip
*.tar.gz
*.rar

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*

# IDE Files #
*.iml
.idea
.idea/
.project
.settings
target
.DS_Store
.qoder
.cursor
.vscode

#Seata test data file
sessionStore/

# temp ignore
*.cache
*.diff
*.patch
*.tmp

# Maven ignore
.flattened-pom.xml



================================================
FILE: .licenscheckconfig.yaml
================================================
header:
  license:
    spdx-id: Apache-2.0
    copyright-owner: alibaba
    content: |
      Copyright 2013-2023 the original author or authors.
      
      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
      You may obtain a copy of the License at
      
          https://www.apache.org/licenses/LICENSE-2.0
      
      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.

  paths-ignore:
    - '.gitignore'
    - '.gitattributes'
    - '.travis.yml'
    - 'codecov.yml'
    - 'CONTRIBUTING.md'
    - 'CONTRIBUTING_CN.md'
    - 'CODE_OF_CONDUCT.md'
    - 'README.md'
    - 'LICENSE'
    - 'NOTICE'
    - '**/*.md'
    - '.github/**'
    - '**/*.yaml'
    - "**/*.yml"
    - '**/*.xml'
    - '**/*.conf'
    - '**/*.sql'
    - '*.adoc'
    - 'eclipse'
    - '**/Dockerfile'
    - '**/*.properties'
    - '**/*.json'
    - '**/*.html'
    - "spring-cloud-alibaba-examples/integrated-example/docker-compose/.env"
    #SPI、spring.factories、spring-configuration-metadata.json、additional-spring-configuration-metadata.json
    - '**/src/test/resources/META-INF/**'
    - '**/src/main/resources/META-INF/**'
    - '**/target/**'
    - '**/*.iml'
    - 'mvnw'
    - 'mvnw.cmd'
    - '**/*.sh'
    - '.mvn/**'
    - 'sessionStore/**'
    - 'distribution/LICENSE-BIN'
    - 'distribution/NOTICE-BIN'
    - 'test/src/test/resources/**'
    - '**/src/test/resources/statelang/**'

  comment: on-failure
dependency:
  files:
    - pom.xml


================================================
FILE: .mvn/jvm.config
================================================
-Xmx1024m -XX:CICompilerCount=1 -XX:TieredStopAtLevel=1 -Djava.security.egd=file:/dev/./urandom

================================================
FILE: .mvn/wrapper/maven-wrapper.properties
================================================
# Copyright 2013-2023 the original author or authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.0/apache-maven-3.9.0-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar

================================================
FILE: CODE_OF_CONDUCT.md
================================================
## Contributor Code of Conduct

As contributors and maintainers of this project, and in the interest of fostering an open and welcoming community, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities.

We are committed to making participation in this project a harassment-free experience for everyone, regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, religion, or nationality.

Examples of unacceptable behavior by participants include:

- The use of sexualized language or imagery

- Personal attacks

- Trolling or insulting/derogatory comments

- Public or private harassment

- Publishing other’s private information, such as physical or electronic addresses, without explicit permission

- Other unethical or unprofessional conduct

Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.

By adopting this Code of Conduct, project maintainers commit themselves to fairly and consistently applying these principles to every aspect of managing this project. Project maintainers who do not follow or enforce the Code of Conduct may be permanently removed from the project team.

This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community.

Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting a project maintainer at spring-code-of-conduct@pivotal.io . All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. Maintainers are obligated to maintain confidentiality with regard to the reporter of an incident.

This Code of Conduct is adapted from the [Contributor Covenant](http://contributor-covenant.org/), version 1.3.0, available at [contributor-covenant.org/version/1/3/0/](http://contributor-covenant.org/version/1/3/0/)


================================================
FILE: LICENSE
================================================
                                 Apache License
                           Version 2.0, January 2004
                        http://www.apache.org/licenses/

   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

   1. Definitions.

      "License" shall mean the terms and conditions for use, reproduction,
      and distribution as defined by Sections 1 through 9 of this document.

      "Licensor" shall mean the copyright owner or entity authorized by
      the copyright owner that is granting the License.

      "Legal Entity" shall mean the union of the acting entity and all
      other entities that control, are controlled by, or are under common
      control with that entity. For the purposes of this definition,
      "control" means (i) the power, direct or indirect, to cause the
      direction or management of such entity, whether by contract or
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
      outstanding shares, or (iii) beneficial ownership of such entity.

      "You" (or "Your") shall mean an individual or Legal Entity
      exercising permissions granted by this License.

      "Source" form shall mean the preferred form for making modifications,
      including but not limited to software source code, documentation
      source, and configuration files.

      "Object" form shall mean any form resulting from mechanical
      transformation or translation of a Source form, including but
      not limited to compiled object code, generated documentation,
      and conversions to other media types.

      "Work" shall mean the work of authorship, whether in Source or
      Object form, made available under the License, as indicated by a
      copyright notice that is included in or attached to the work
      (an example is provided in the Appendix below).

      "Derivative Works" shall mean any work, whether in Source or Object
      form, that is based on (or derived from) the Work and for which the
      editorial revisions, annotations, elaborations, or other modifications
      represent, as a whole, an original work of authorship. For the purposes
      of this License, Derivative Works shall not include works that remain
      separable from, or merely link (or bind by name) to the interfaces of,
      the Work and Derivative Works thereof.

      "Contribution" shall mean any work of authorship, including
      the original version of the Work and any modifications or additions
      to that Work or Derivative Works thereof, that is intentionally
      submitted to Licensor for inclusion in the Work by the copyright owner
      or by an individual or Legal Entity authorized to submit on behalf of
      the copyright owner. For the purposes of this definition, "submitted"
      means any form of electronic, verbal, or written communication sent
      to the Licensor or its representatives, including but not limited to
      communication on electronic mailing lists, source code control systems,
      and issue tracking systems that are managed by, or on behalf of, the
      Licensor for the purpose of discussing and improving the Work, but
      excluding communication that is conspicuously marked or otherwise
      designated in writing by the copyright owner as "Not a Contribution."

      "Contributor" shall mean Licensor and any individual or Legal Entity
      on behalf of whom a Contribution has been received by Licensor and
      subsequently incorporated within the Work.

   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.

   3. Grant of Patent License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      (except as stated in this section) patent license to make, have made,
      use, offer to sell, sell, import, and otherwise transfer the Work,
      where such license applies only to those patent claims licensable
      by such Contributor that are necessarily infringed by their
      Contribution(s) alone or by combination of their Contribution(s)
      with the Work to which such Contribution(s) was submitted. If You
      institute patent litigation against any entity (including a
      cross-claim or counterclaim in a lawsuit) alleging that the Work
      or a Contribution incorporated within the Work constitutes direct
      or contributory patent infringement, then any patent licenses
      granted to You under this License for that Work shall terminate
      as of the date such litigation is filed.

   4. Redistribution. You may reproduce and distribute copies of the
      Work or Derivative Works thereof in any medium, with or without
      modifications, and in Source or Object form, provided that You
      meet the following conditions:

      (a) You must give any other recipients of the Work or
          Derivative Works a copy of this License; and

      (b) You must cause any modified files to carry prominent notices
          stating that You changed the files; and

      (c) You must retain, in the Source form of any Derivative Works
          that You distribute, all copyright, patent, trademark, and
          attribution notices from the Source form of the Work,
          excluding those notices that do not pertain to any part of
          the Derivative Works; and

      (d) If the Work includes a "NOTICE" text file as part of its
          distribution, then any Derivative Works that You distribute must
          include a readable copy of the attribution notices contained
          within such NOTICE file, excluding those notices that do not
          pertain to any part of the Derivative Works, in at least one
          of the following places: within a NOTICE text file distributed
          as part of the Derivative Works; within the Source form or
          documentation, if provided along with the Derivative Works; or,
          within a display generated by the Derivative Works, if and
          wherever such third-party notices normally appear. The contents
          of the NOTICE file are for informational purposes only and
          do not modify the License. You may add Your own attribution
          notices within Derivative Works that You distribute, alongside
          or as an addendum to the NOTICE text from the Work, provided
          that such additional attribution notices cannot be construed
          as modifying the License.

      You may add Your own copyright statement to Your modifications and
      may provide additional or different license terms and conditions
      for use, reproduction, or distribution of Your modifications, or
      for any such Derivative Works as a whole, provided Your use,
      reproduction, and distribution of the Work otherwise complies with
      the conditions stated in this License.

   5. Submission of Contributions. Unless You explicitly state otherwise,
      any Contribution intentionally submitted for inclusion in the Work
      by You to the Licensor shall be under the terms and conditions of
      this License, without any additional terms or conditions.
      Notwithstanding the above, nothing herein shall supersede or modify
      the terms of any separate license agreement you may have executed
      with Licensor regarding such Contributions.

   6. Trademarks. This License does not grant permission to use the trade
      names, trademarks, service marks, or product names of the Licensor,
      except as required for reasonable and customary use in describing the
      origin of the Work and reproducing the content of the NOTICE file.

   7. Disclaimer of Warranty. Unless required by applicable law or
      agreed to in writing, Licensor provides the Work (and each
      Contributor provides its Contributions) on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
      implied, including, without limitation, any warranties or conditions
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
      PARTICULAR PURPOSE. You are solely responsible for determining the
      appropriateness of using or redistributing the Work and assume any
      risks associated with Your exercise of permissions under this License.

   8. Limitation of Liability. In no event and under no legal theory,
      whether in tort (including negligence), contract, or otherwise,
      unless required by applicable law (such as deliberate and grossly
      negligent acts) or agreed to in writing, shall any Contributor be
      liable to You for damages, including any direct, indirect, special,
      incidental, or consequential damages of any character arising as a
      result of this License or out of the use or inability to use the
      Work (including but not limited to damages for loss of goodwill,
      work stoppage, computer failure or malfunction, or any and all
      other commercial damages or losses), even if such Contributor
      has been advised of the possibility of such damages.

   9. Accepting Warranty or Additional Liability. While redistributing
      the Work or Derivative Works thereof, You may choose to offer,
      and charge a fee for, acceptance of support, warranty, indemnity,
      or other liability obligations and/or rights consistent with this
      License. However, in accepting such obligations, You may act only
      on Your own behalf and on Your sole responsibility, not on behalf
      of any other Contributor, and only if You agree to indemnify,
      defend, and hold each Contributor harmless for any liability
      incurred by, or claims asserted against, such Contributor by reason
      of your accepting any such warranty or additional liability.

   END OF TERMS AND CONDITIONS

   APPENDIX: How to apply the Apache License to your work.

      To apply the Apache License to your work, attach the following
      boilerplate notice, with the fields enclosed by brackets "[]"
      replaced with your own identifying information. (Don't include
      the brackets!)  The text should be enclosed in the appropriate
      comment syntax for the file format. We also recommend that a
      file or class name and description of purpose be included on the
      same "printed page" as the copyright notice for easier
      identification within third-party archives.

   Copyright [yyyy] [name of copyright owner]

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.


================================================
FILE: README-zh.md
================================================
# Spring Cloud Alibaba

[![CircleCI](https://circleci.com/gh/alibaba/spring-cloud-alibaba/tree/2025.1.x.svg?style=svg)](https://circleci.com/gh/alibaba/spring-cloud-alibaba/tree/2025.1.x)
[![Maven Central](https://img.shields.io/maven-central/v/com.alibaba.cloud/spring-cloud-alibaba-dependencies.svg?label=Maven%20Central)](https://search.maven.org/search?q=g:com.alibaba.cloud%20AND%20a:spring-cloud-alibaba-dependencies)
[![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html)
[![actions](https://github.com/alibaba/spring-cloud-alibaba/workflows/Integration%20Testing/badge.svg)](https://github.com/alibaba/spring-cloud-alibaba/actions)
[![Leaderboard](https://img.shields.io/badge/SCA-Check%20Your%20Contribution-orange)](https://opensource.alibaba.com/contribution_leaderboard/details?projectValue=sca)

Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。

依托 Spring Cloud Alibaba,您只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里微服务解决方案,通过阿里中间件来迅速搭建分布式应用系统。

此外,阿里云同时还提供了 Spring Cloud Alibaba 企业版 [微服务解决方案](https://www.aliyun.com/product/aliware/mse?spm=github.spring.com.topbar),包括无侵入服务治理(全链路灰度,无损上下线,离群实例摘除等),企业级 Nacos 注册配置中心和企业级云原生网关等众多产品。

参考文档 请查看 [WIKI](https://github.com/alibaba/spring-cloud-alibaba/wiki) 。

为 Spring Cloud Alibaba 贡献代码请参考 [如何贡献](https://sca.aliyun.com/docs/developer/contributor-guide/new-contributor-guide_dev/) 。

## 主要功能

* **服务限流降级**:默认支持 WebServlet、WebFlux、OpenFeign、RestTemplate、Spring Cloud Gateway、Dubbo 和 RocketMQ 限流降级功能的接入,可以在运行时通过控制台实时修改限流降级规则,还支持查看限流降级 Metrics 监控。
* **服务注册与发现**:适配 Spring Cloud 服务注册与发现标准,默认集成对应 Spring Cloud 版本所支持的负载均衡组件的适配。
* **分布式配置管理**:支持分布式系统中的外部化配置,配置更改时自动刷新。
* **消息驱动能力**:基于 Spring Cloud Stream 为微服务应用构建消息驱动能力。
* **分布式事务**:使用 @GlobalTransactional 注解, 高效并且对业务零侵入地解决分布式事务问题。
* **阿里云对象存储**:阿里云提供的海量、安全、低成本、高可靠的云存储服务。支持在任何应用、任何时间、任何地点存储和访问任意类型的数据。
* **分布式任务调度**:提供秒级、精准、高可靠、高可用的定时(基于 Cron 表达式)任务调度服务。同时提供分布式的任务执行模型,如网格任务。网格任务支持海量子任务均匀分配到所有 Worker(schedulerx-client)上执行。
* **阿里云短信服务**:覆盖全球的短信服务,友好、高效、智能的互联化通讯能力,帮助企业迅速搭建客户触达通道。


更多功能请参考 [Roadmap](https://github.com/alibaba/spring-cloud-alibaba/blob/2025.1.x/Roadmap-zh.md)

除了上述所具有的功能外,针对企业级用户的场景,Spring Cloud Alibaba 配套的企业版微服务治理方案 [微服务引擎MSE](https://www.aliyun.com/product/aliware/mse?spm=github.spring.com.topbar) 还提供了企业级微服务治理中心,包括全链路灰度、服务预热、无损上下线和离群实例摘除等更多更强大的治理能力,同时还提供了企业级 Nacos 注册配置中心,企业级云原生网关等多种产品及解决方案。

## 组件

**[Sentinel](https://github.com/alibaba/Sentinel)**:把流量作为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。

**[Nacos](https://github.com/alibaba/Nacos)**:一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。

**[RocketMQ](https://rocketmq.apache.org/)**:一款开源的分布式消息系统,基于高可用分布式集群技术,提供低延时的、高可靠的消息发布与订阅服务。

**[Seata](https://github.com/seata/seata)**:阿里巴巴开源产品,一个易于使用的高性能微服务分布式事务解决方案。

**[Alibaba Cloud OSS](https://www.aliyun.com/product/oss)**: 阿里云对象存储服务(Object Storage Service,简称 OSS),是阿里云提供的海量、安全、低成本、高可靠的云存储服务。您可以在任何应用、任何时间、任何地点存储和访问任意类型的数据。

**[Alibaba Cloud SchedulerX](https://cn.aliyun.com/aliware/schedulerx)**: 阿里中间件团队开发的一款分布式任务调度产品,提供秒级、精准、高可靠、高可用的定时(基于 Cron 表达式)任务调度服务。

**[Alibaba Cloud SMS](https://www.aliyun.com/product/sms)**: 覆盖全球的短信服务,友好、高效、智能的互联化通讯能力,帮助企业迅速搭建客户触达通道。

更多组件请参考 [Roadmap](https://github.com/alibaba/spring-cloud-alibaba/blob/2025.1.x/Roadmap-zh.md)。

## 如何构建
* 2025.1.x 分支对应的是 Spring Cloud 2025.1.x 与 Spring Boot 4.0.x,最低支持 JDK 17。
* 2025.0.x 分支对应的是 Spring Cloud 2025.0.x 与 Spring Boot 3.5.x,最低支持 JDK 17。
* 2023.x 分支对应的是 Spring Cloud 2023 与 Spring Boot 3.2.x,最低支持 JDK 17。
* 2022.x 分支对应的是 Spring Cloud 2022 与 Spring Boot 3.0.x,最低支持 JDK 17。
* 2021.x 分支对应的是 Spring Cloud 2021 与 Spring Boot 2.6.x,最低支持 JDK 1.8。
* 2020.0 分支对应的是 Spring Cloud 2020 与 Spring Boot 2.4.x,最低支持 JDK 1.8。
* 2.2.x 分支对应的是 Spring Cloud Hoxton 与 Spring Boot 2.2.x,最低支持 JDK 1.8。
* greenwich 分支对应的是 Spring Cloud Greenwich 与 Spring Boot 2.1.x,最低支持 JDK 1.8。
* finchley 分支对应的是 Spring Cloud Finchley 与 Spring Boot 2.0.x,最低支持 JDK 1.8。
* 1.x 分支对应的是 Spring Cloud Edgware 与 Spring Boot 1.x,最低支持 JDK 1.7。

Spring Cloud 使用 Maven 来构建,最快的使用方式是将本项目 clone 到本地,然后执行以下命令:
```bash
./mvnw install
```
执行完毕后,项目将被安装到本地 Maven 仓库。

## 如何使用

### 如何引入依赖

#### 正式版

如果需要使用已发布的`正式版本`,在 `dependencyManagement` 中添加如下配置。
```xml
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2025.1.0.0</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
```
然后在 `dependencies` 中添加自己所需使用的依赖即可使用。如果你想选择老版本,可以参考[版本说明](https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E)。

#### 快照

如果需要使用已发布的`快照版本`,在 `dependencyManagement` 中添加如下配置。
```xml
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2025.1.0.0-SNAPSHOT</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
```

在 `repositories` 中添加如下配置。

```xml
<repositories>
    <repository>
        <id>github</id>
        <url>https://maven.pkg.github.com/alibaba/spring-cloud-alibaba</url>
        <releases>
            <enabled>false</enabled>
        </releases>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>
```

在 `settings.xml` 中添加如下配置。

```xml
<servers>
    <server>
        <id>github</id>
        <username>你的 GitHub 用户名</username>
        <password>你的 GitHub Token(需要 read:packages 权限)</password>
    </server>
</servers>
```

## 演示 Demo

为了演示如何使用,Spring Cloud Alibaba 项目包含了一个子模块`spring-cloud-alibaba-examples`。此模块中提供了演示用的 example ,您可以阅读对应的 example 工程下的 readme 文档,根据里面的步骤来体验。

Example 列表:

[Sentinel Example](https://github.com/alibaba/spring-cloud-alibaba/tree/2025.1.x/spring-cloud-alibaba-examples/sentinel-example/sentinel-core-example/readme-zh.md)

[Nacos Example](https://github.com/alibaba/spring-cloud-alibaba/blob/2025.1.x/spring-cloud-alibaba-examples/nacos-example/readme-zh.md)

[RocketMQ Example](https://github.com/alibaba/spring-cloud-alibaba/blob/2025.1.x/spring-cloud-alibaba-examples/rocketmq-example/readme-zh.md)

[Seata Example](https://github.com/alibaba/spring-cloud-alibaba/blob/2025.1.x/spring-cloud-alibaba-examples/seata-example/readme-zh.md)

[Alibaba Cloud OSS Example](https://github.com/alibaba/aliyun-spring-boot/tree/master/aliyun-spring-boot-samples/aliyun-oss-spring-boot-sample)

[Alibaba Cloud SMS Example](https://github.com/alibaba/aliyun-spring-boot/tree/master/aliyun-spring-boot-samples/aliyun-sms-spring-boot-sample)

[Alibaba Cloud SchedulerX Example](https://github.com/alibaba/aliyun-spring-boot)

## 版本管理规范

项目的版本号格式为 x.x.x 的形式,其中 x 的数值类型为数字,从 0 开始取值,且不限于 0~9 这个范围。项目处于孵化器阶段时,第一位版本号固定使用 0,即版本号为 0.x.x 的格式。

由于 Spring Boot 1 和 Spring Boot 2 在 Actuator 模块的接口和注解有很大的变更,且 spring-cloud-commons 从 1.x.x 版本升级到 2.0.0 版本也有较大的变更,因此我们采取跟 SpringBoot 版本号一致的版本:

* 1.5.x 版本适用于 Spring Boot 1.5.x
* 2.0.x 版本适用于 Spring Boot 2.0.x
* 2.1.x 版本适用于 Spring Boot 2.1.x
* 2.2.x 版本适用于 Spring Boot 2.2.x
* 2020.x 版本适用于 Spring Boot 2.4.x
* 2021.x 版本适用于 Spring Boot 2.6.x
* 2022.x 版本适用于 Spring Boot 3.0.x
* 2023.x 版本适用于 Spring Boot 3.2.x
* 2025.0.x 版本适用于 Spring Boot 3.5.x
* 2025.1.x 版本适用于 Spring Boot 4.0.x

## 社区交流

### 邮件列表

spring-cloud-alibaba@googlegroups.com,欢迎通过此邮件列表讨论与 spring-cloud-alibaba 相关的一切。

### 钉钉群

* Spring Cloud Alibaba 开源交流群(1群):21914947
* Spring Cloud Alibaba 开源交流群(2群,已满):21992595
* Spring Cloud Alibaba 开源交流群(3群,已满):35153903
* Spring Cloud Alibaba 开源交流群(4群,已满):30301472
* Spring Cloud Alibaba 开源交流群(5群,已满):34930571
* Spring Cloud Alibaba 开源交流群(6群,已满):34351718
* Spring Cloud Alibaba 开源交流群(7群):2415000986

## 社区相关开源

**[Nepxion Discovery](https://github.com/Nepxion/Discovery)**:一款集成Spring Cloud Alibaba、Nacos、Sentinel等阿里巴巴中间件,实现网关和服务的灰度发布、路由、权重、限流、熔断、降级、隔离、监控、追踪等功能的微服务开源解决。使用指南 请参考 **[Nepxion Discovery Guide](https://github.com/Nepxion/DiscoveryGuide)**。


================================================
FILE: README.md
================================================
# Spring Cloud Alibaba

[![CircleCI](https://circleci.com/gh/alibaba/spring-cloud-alibaba/tree/2025.1.x.svg?style=svg)](https://circleci.com/gh/alibaba/spring-cloud-alibaba/tree/2025.1.x)
[![Maven Central](https://img.shields.io/maven-central/v/com.alibaba.cloud/spring-cloud-alibaba-dependencies.svg?label=Maven%20Central)](https://search.maven.org/search?q=g:com.alibaba.cloud%20AND%20a:spring-cloud-alibaba-dependencies)
[![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html)
[![actions](https://github.com/alibaba/spring-cloud-alibaba/workflows/Integration%20Testing/badge.svg)](https://github.com/alibaba/spring-cloud-alibaba/actions)
[![Leaderboard](https://img.shields.io/badge/SCA-Check%20Your%20Contribution-orange)](https://opensource.alibaba.com/contribution_leaderboard/details?projectValue=sca)

A project maintained by Alibaba.

See the [中文文档](https://github.com/alibaba/spring-cloud-alibaba/blob/2025.1.x/README-zh.md) for Chinese readme.

Spring Cloud Alibaba provides a one-stop solution for distributed application development. It contains all the components required to develop distributed applications, making it easy for you to develop your applications using Spring Cloud.

With Spring Cloud Alibaba, you only need to add some annotations and a small amount of configurations to connect Spring Cloud applications to the distributed solutions of Alibaba, and build a distributed application system with Alibaba middleware.


## Features

* **Flow control and service degradation**: Flow control for HTTP services is supported by default. You can also customize flow control and service degradation rules using annotations. The rules can be changed dynamically.
* **Service registration and discovery**: Service can be registered and clients can discover the instances using Spring-managed beans. Load balancing is consistent with that supported by the corresponding Spring Cloud.
* **Distributed configuration**: Support for externalized configuration in a distributed system, auto refresh when configuration changes.
* **Event-driven**: Support for building highly scalable event-driven microservices connected with shared messaging systems.
* **Distributed Transaction**: Support for distributed transaction solution with high performance and ease of use.
* **Alibaba Cloud Object Storage**: Massive, secure, low-cost, and highly reliable cloud storage services. Support for storing and accessing any type of data in any application, anytime, anywhere.
* **Alibaba Cloud SchedulerX**: Accurate, highly reliable, and highly available scheduled job scheduling services with response time within seconds.
* **Alibaba Cloud SMS**: A messaging service that covers the globe, Alibaba SMS provides convenient, efficient, and intelligent communication capabilities that help businesses quickly contact their customers.

For more features, please refer to [Roadmap](https://github.com/alibaba/spring-cloud-alibaba/blob/2025.1.x/Roadmap.md).

In addition to the above-mentioned features, for the needs of enterprise users' scenarios, [Microservices Engine (MSE)](https://www.aliyun.com/product/aliware/mse?spm=github.spring.com.topbar) of Spring Cloud Alibaba's enterprise version provides an enterprise-level microservices governance center, which includes more powerful governance capabilities such as Grayscale Release, Service Warm-up, Lossless Online and Offline and Outlier Ejection. At the same time, it also provides a variety of products and solutions such as enterprise-level Nacos registration / configuration center, enterprise-level cloud native gateway.


## Components

**[Sentinel](https://github.com/alibaba/Sentinel)**: Sentinel takes "traffic flow" as the breakthrough point, and provides solutions in areas such as flow control, concurrency, circuit breaking, and load protection to protect service stability.

**[Nacos](https://github.com/alibaba/Nacos)**: An easy-to-use dynamic service discovery, configuration and service management platform for building cloud native applications.

**[RocketMQ](https://rocketmq.apache.org/)**: A distributed messaging and streaming platform with low latency, high performance and reliability, trillion-level capacity and flexible scalability.

**[Seata](https://github.com/seata/seata)**: A distributed transaction solution with high performance and ease of use for microservices architecture.

**[Alibaba Cloud OSS](https://www.aliyun.com/product/oss)**: An encrypted and secure cloud storage service which stores, processes and accesses massive amounts of data from anywhere in the world.

**[Alibaba Cloud SMS](https://www.aliyun.com/product/sms)**: A messaging service that covers the globe, Alibaba SMS provides convenient, efficient, and intelligent communication capabilities that help businesses quickly contact their customers.

**[Alibaba Cloud SchedulerX](https://www.aliyun.com/aliware/schedulerx?spm=5176.10695662.784137.1.4b07363dej23L3)**: Accurate, highly reliable, and highly available scheduled job scheduling services with response time within seconds.

For more features please refer to [Roadmap](https://github.com/alibaba/spring-cloud-alibaba/blob/2025.1.x/Roadmap.md).

## How to build
* **2025.1.x branch**: Corresponds to Spring Cloud 2025.1.x & Spring Boot 4.0.x, JDK 17 or later versions are supported.
* **2025.0.x branch**: Corresponds to Spring Cloud 2025.0.x & Spring Boot 3.5.x, JDK 17 or later versions are supported.
* **2023.x branch**: Corresponds to Spring Cloud 2023 & Spring Boot 3.2.x, JDK 17 or later versions are supported.
* **2022.x branch**: Corresponds to Spring Cloud 2022 & Spring Boot 3.0.x, JDK 17 or later versions are supported.
* **2021.x branch**: Corresponds to Spring Cloud 2021 & Spring Boot 2.6.x. JDK 1.8 or later versions are supported.
* **2020.0 branch**: Corresponds to Spring Cloud 2020 & Spring Boot 2.4.x. JDK 1.8 or later versions are supported.
* **2.2.x branch**: Corresponds to Spring Cloud Hoxton & Spring Boot 2.2.x. JDK 1.8 or later versions are supported.
* **greenwich branch**: Corresponds to Spring Cloud Greenwich & Spring Boot 2.1.x. JDK 1.8 or later versions are supported.
* **finchley branch**: Corresponds to Spring Cloud Finchley & Spring Boot 2.0.x. JDK 1.8 or later versions are supported.
* **1.x branch**: Corresponds to Spring Cloud Edgware & Spring Boot 1.x, JDK 1.7 or later versions are supported.

Spring Cloud uses Maven for most build-related activities, and you should be able to get off the ground quite quickly by cloning the project you are interested in and typing:
```bash
./mvnw install
```

## How to Use

### Add maven dependency 

#### Release Version

These artifacts are available from Maven Central and Spring Release repository via BOM:
```xml
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2025.1.0.0</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
```
add the module in  `dependencies`. If you want to choose an older version, you can refer to the [Release Notes](https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E).

#### Snapshot

If you need to use the already published `Snapshot Version`, add the following configuration in the `dependencyManagement`.
```xml
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2025.1.0.0-SNAPSHOT</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
```

Add the following configuration in `repositories`.
```xml
<repositories>
    <repository>
        <id>github</id>
        <url>https://maven.pkg.github.com/alibaba/spring-cloud-alibaba</url>
        <releases>
            <enabled>false</enabled>
        </releases>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>
```

Add the following configuration in `settings.xml`.
```xml
<servers>
    <server>
        <id>github</id>
        <username>Your GitHub Username</username>
        <password>Your GitHub Token (requires read:packages permission)</password>
    </server>
</servers>
```

## Examples

A `spring-cloud-alibaba-examples` module is included in our project for you to get started with Spring Cloud Alibaba quickly. It contains an example, and you can refer to the readme file in the example project for a quick walkthrough.

Examples:

[Sentinel Example](https://github.com/alibaba/spring-cloud-alibaba/tree/2025.1.x/spring-cloud-alibaba-examples/sentinel-example/sentinel-core-example/readme.md)

[Nacos Example](https://github.com/alibaba/spring-cloud-alibaba/blob/2025.1.x/spring-cloud-alibaba-examples/nacos-example/readme.md)

[RocketMQ Example](https://github.com/alibaba/spring-cloud-alibaba/blob/2025.1.x/spring-cloud-alibaba-examples/rocketmq-example/readme.md)

[Alibaba Cloud OSS Example](https://github.com/alibaba/aliyun-spring-boot/tree/master/aliyun-spring-boot-samples/aliyun-oss-spring-boot-sample)

## Version control guidelines
The version number of the project is in the form of x.x.x, where x is a number, starting from 0, and is not limited to the range 0~9. When the project is in the incubator phase, the version number is 0.x.x.

As the interfaces and annotations of Spring Boot 1 and Spring Boot 2 have been changed significantly in the Actuator module, and spring-cloud-commons is also changed quite a lot from 1.x.x to 2.0.0, we take the same version rule as SpringBoot version number.

* 1.5.x for Spring Boot 1.5.x
* 2.0.x for Spring Boot 2.0.x
* 2.1.x for Spring Boot 2.1.x
* 2.2.x for Spring Boot 2.2.x
* 2020.x for Spring Boot 2.4.x
* 2021.x for Spring Boot 2.6.x
* 2022.x for Spring Boot 3.0.x
* 2023.x for Spring Boot 3.2.x
* 2025.0.x for Spring Boot 3.5.x
* 2025.1.x for Spring Boot 4.0.x

## Code of Conduct
This project is a sub-project of Spring Cloud, it adheres to the Contributor Covenant [code of conduct](https://sca.aliyun.com/en-us/community/developer/contributor-guide/new-contributor-guide_dev/). By participating, you are expected to uphold this code. Please report unacceptable behavior to spring-code-of-conduct@pivotal.io.

## Code Conventions and Housekeeping
None of these is essential for a pull request, but they will all help. They can also be added after the original pull request but before a merge.

Use the Spring Framework code format conventions. If you use Eclipse you can import formatter settings using the eclipse-code-formatter.xml file from the Spring Cloud Build project. If using IntelliJ, you can use the Eclipse Code Formatter Plugin to import the same file.

Make sure all new .java files to have a simple Javadoc class comment with at least an @author tag identifying you, and preferably at least a paragraph on what the class is for.

Add the ASF license header comment to all new .java files (copy from existing files in the project)

Add yourself as an @author to the .java files that you modify substantially (more than cosmetic changes).

Add some Javadocs and, if you change the namespace, some XSD doc elements.

A few unit tests would help a lot as well —— someone has to do it.

If no-one else is using your branch, please rebase it against the current 2023.x (or other target branch in the main project).

When writing a commit message please follow these conventions, if you are fixing an existing issue please add Fixes gh-XXXX at the end of the commit message (where XXXX is the issue number).

## Contact Us
Mailing list is recommended for discussing almost anything related to spring-cloud-alibaba. 

spring-cloud-alibaba@googlegroups.com: You can ask questions here if you encounter any problem when using or developing spring-cloud-alibaba.


================================================
FILE: Roadmap-zh.md
================================================
# Roadmap

[Spring Cloud Alibaba](https://github.com/alibaba/spring-cloud-alibaba) 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。

此项目包含的组件内容,主要选取自阿里巴巴开源中间件,但也不限定于这些产品。

如果您对 Roadmap 有任何建议或想法,欢迎在 issues 中或者通过其他社区渠道向我们提出,一起讨论。

- Github Issue:https://github.com/alibaba/spring-cloud-alibaba/issues
- 钉钉交流群:“群8 Spring Cloud Alibaba交流群”群的钉钉群号: 33610001098


## 已包含的组件

**Sentinel**

阿里巴巴开源产品,把流量作为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。

**Nacos**

阿里巴巴开源产品,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。

**RocketMQ**

Apache RocketMQ™ 一款开源的分布式消息系统,基于高可用分布式集群技术,提供低延时的、高可靠的消息发布与订阅服务。

**Seata**

阿里巴巴开源产品(现捐赠给 Apache 基金会),一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。

## 未来发展方向

## Spring Cloud Admin 服务治理(可观测方向)

Spring Cloud Admin 定位为一款可视化的微服务管控平台,通过它能够查看整个 Spring Cloud 微服务状态(包括服务数、实例数、应用数等)。同时 Spring Cloud Admin 还应与主流的 [Apache SkyWalking](https://skywalking.apache.org/),[OpenTelemetry](https://opentelemetry.io/) 等可观测性系统集成,提供对集群状态的指标查询与监控能力。

## Spring Cloud Alibaba AI

随着 LLM 的爆火,各种 AI 应用开发框架应运而生。其中包括 LangChain,LangChain4J,Spring AI 等项目,为 AI 应用开发提供了一系列的解决方案。

本项目是基于 Spring AI 提供对阿里通义系列大模型的完整支持,包括对话,文生图,文生语音,语音转录等功能。旨在为开发微服务 AI 应用提供便利,屏蔽底层复杂性,使得 AI 可以快速接入 Spring Cloud 微服务体系。

## Proxyless Mesh

Spring Cloud Alibaba 也积极在 Proxyless 方向上探索,目前已经完成了 Routing,Xds-adapter 等功能。未来会推出更多云原生场景下的 Proxyless 功能特性。

## RPC 方向上的探索

Spring Cloud Alibaba RPC 组件主要依赖于 OpenFeign,RestTemplate 等。社区计划通过加入 GRPC,Dubbo 的 rpc 解决方案,进一步增强社区的 RPC 组件能力。

## 分布式任务调度

Spring Cloud Alibaba 缺少对分布式调度任务的支持,社区计划通过适配开源的分布式任务调度框架,来完善这部分能力。


================================================
FILE: Roadmap.md
================================================
# Roadmap

See the [中文文档](https://github.com/alibaba/spring-cloud-alibaba/blob/2025.1.x/Roadmap-zh.md) for Chinese Roadmap.


Spring Cloud Alibaba provides a one-stop solution for microservices development. It contains all the components required to develop distributed applications, making it easy for you to develop your applications through the Spring Cloud programming model.

This project contains components from both open-source and commercialized Alibaba middleware products,but are not limited to them.

If you have any suggestions on our roadmap, feel free to submit issues or contact us via the other channels.

- Github Issue:https://github.com/alibaba/spring-cloud-alibaba/issues
- DingTalk communication group: "Group 8 Spring Cloud Alibaba communication group" DingTalk group number: 33610001098


## Components

**Sentinel**

An open-source project of Alibaba, Sentinel takes "flow" as breakthrough point, and provides solutions in areas such as flow control, concurrency, circuit breaking, and load protection to protect service stability.

**Nacos**

An opensource project of Alibaba, an easy-to-use dynamic service discovery, configuration and service management platform for building cloud native applications.

**RocketMQ**

Apache RocketMQ™ is an open source distributed messaging system based on highly available distributed cluster technology, providing low latency, highly reliable message publishing and subscription services.

**Seata**

An opensource project of Alibaba(now donated to the Apache Foundation), a distributed transaction solution dedicated to providing high-performance and easy-to-use distributed transaction services under a microservice architecture.


## Future Development Direction

## Spring Cloud Admin Service Governance (Observable Direction)

Spring Cloud Admin is positioned as a visual microservice management and control platform, through which you can view the status of the entire Spring Cloud microservice (including the number of services, the number of instances, the number of applications, etc.). At the same time, Spring Cloud Admin should also be integrated with mainstream observability systems such as [Apache SkyWalking](https://skywalking.apache.org/) and [OpenTelemetry](https://opentelemetry.io/) to provide indicator query and monitoring capabilities for cluster status.

## Spring Cloud Alibaba AI

With the explosion of LLM, various AI application development frameworks have emerged as the times require. These include LangChain, LangChain4J, Spring AI and other projects, providing a series of solutions for AI application development.

This project is based on Spring AI to provide complete support for Ali Tongyi series large models, providing for chat, text-to-image, audiotranscription and other functions. It aims to facilitate the development of microservice AI applications, shield the underlying complexity, and enable AI to quickly access the Spring Cloud microservice system.

## Proxyless Mesh

Spring Cloud Alibaba is also actively exploring in the direction of Proxyless, and has completed functions such as Routing and Xds-adapter. In the future, more Proxyless features in cloud-native scenarios will be launched.

## Exploration in the direction of RPC

Spring Cloud Alibaba RPC components mainly rely on OpenFeign, RestTemplate, etc. The community plans to further enhance the community's RPC component capabilities by joining GRPC, Dubbo's RPC solution.

## Distributed task scheduling

Spring Cloud Alibaba lacks support for distributed scheduling tasks, the community plans to improve this part of the ability by adapting open source distributed task scheduling framework.


================================================
FILE: eclipse/checkstyle-suppressions.xml
================================================
<?xml version="1.0"?>
<!DOCTYPE suppressions PUBLIC
        "-//Checkstyle//DTD SuppressionFilter Configuration 1.2//EN"
        "https://checkstyle.org/dtds/suppressions_1_2.dtd">
<suppressions>
    <suppress files="[\\/]spring-cloud-alibaba-examples[\\/]" checks="HideUtilityClassConstructorCheck" />
    <suppress files="[\\/]spring-cloud-alibaba-tests[\\/]" checks="HideUtilityClassConstructorCheck" />
    <suppress files=".*" checks="LineLength" />
</suppressions>

================================================
FILE: eclipse/eclipse-code-formatter.xml
================================================
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<profiles version="12">
<profile kind="CodeFormatterProfile" name="Spring Boot Java Conventions" version="12">
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_ellipsis" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_imports" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.format_javadoc_comments" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.indentation.size" value="8"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.disabling_tag" value="@formatter:off"/>
<setting id="org.eclipse.jdt.core.formatter.continuation_indentation" value="2"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_enum_constants" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_imports" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_package" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_binary_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.indent_root_tags" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.enabling_tag" value="@formatter:on"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column" value="false"/>
<setting id="org.eclipse.jdt.core.compiler.problem.enumIdentifier" value="error"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_block" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.line_length" value="90"/>
<setting id="org.eclipse.jdt.core.formatter.disabling_tag" value="@formatter:off"/>
<setting id="org.eclipse.jdt.core.formatter.use_on_off_tags" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_method_declaration" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_binary_expression" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_lambda_body" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.compact_else_if" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.compiler.problem.assertIdentifier" value="error"/>
<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_binary_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_unary_operator" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_ellipsis" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.format_line_comments" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.align_type_members_on_columns" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_assignment" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression" value="80"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.format_header" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while" value="insert"/>
<setting id="org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode" value="enabled"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_method_declaration" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.join_wrapped_lines" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_resources_in_try" value="80"/>
<setting id="org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column" value="false"/>
<setting id="org.eclipse.jdt.core.compiler.source" value="17"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.tabulation.size" value="4"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.format_source_code" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_field" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer" value="2"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_method" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement" value="do not insert"/>
<setting id="org.eclipse.jdt.core.compiler.codegen.targetPlatform" value="17"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_switch" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.format_html" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_if" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.indent_empty_lines" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_unary_operator" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_label" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_member_type" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.format_block_comments" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_body" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_multiple_fields" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_array_initializer" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_before_binary_operator" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch" value="do not insert"/>
<setting id="org.eclipse.jdt.core.compiler.compliance" value="17"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_constant" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_type_declaration" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_package" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.join_lines_in_comments" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.indent_parameter_description" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.tabulation.char" value="tab"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_import_groups" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.lineSplit" value="90"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch" value="insert"/>
</profile>
</profiles>


================================================
FILE: eclipse/org.eclipse.jdt.core.prefs
================================================
eclipse.preferences.version=1
org.eclipse.jdt.core.codeComplete.argumentPrefixes=
org.eclipse.jdt.core.codeComplete.argumentSuffixes=
org.eclipse.jdt.core.codeComplete.fieldPrefixes=
org.eclipse.jdt.core.codeComplete.fieldSuffixes=
org.eclipse.jdt.core.codeComplete.localPrefixes=
org.eclipse.jdt.core.codeComplete.localSuffixes=
org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes=
org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes=
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.methodParameters=generate
org.eclipse.jdt.core.compiler.codegen.targetPlatform=17
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=17
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.doc.comment.support=enabled
org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
org.eclipse.jdt.core.compiler.problem.deadCode=warning
org.eclipse.jdt.core.compiler.problem.deprecation=warning
org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
org.eclipse.jdt.core.compiler.problem.invalidJavadoc=warning
org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=enabled
org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=disabled
org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=enabled
org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=default
org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=disabled
org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=all_standard_tags
org.eclipse.jdt.core.compiler.problem.missingJavadocTags=warning
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters=disabled
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=default
org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
org.eclipse.jdt.core.compiler.problem.missingSerialVersion=ignore
org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
org.eclipse.jdt.core.compiler.problem.nullReference=ignore
org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore
org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
org.eclipse.jdt.core.compiler.problem.unusedImport=warning
org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
org.eclipse.jdt.core.compiler.processAnnotations=disabled
org.eclipse.jdt.core.compiler.source=17
org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
org.eclipse.jdt.core.formatter.alignment_for_assignment=0
org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=16
org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_module_statements=16
org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
org.eclipse.jdt.core.formatter.blank_lines_after_package=1
org.eclipse.jdt.core.formatter.blank_lines_before_field=0
org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
org.eclipse.jdt.core.formatter.blank_lines_before_method=1
org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
org.eclipse.jdt.core.formatter.blank_lines_before_package=0
org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=false
org.eclipse.jdt.core.formatter.comment.format_block_comments=true
org.eclipse.jdt.core.formatter.comment.format_header=false
org.eclipse.jdt.core.formatter.comment.format_html=true
org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
org.eclipse.jdt.core.formatter.comment.format_line_comments=true
org.eclipse.jdt.core.formatter.comment.format_source_code=false
org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
org.eclipse.jdt.core.formatter.comment.indent_root_tags=false
org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=do not insert
org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
org.eclipse.jdt.core.formatter.comment.line_length=90
org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
org.eclipse.jdt.core.formatter.compact_else_if=true
org.eclipse.jdt.core.formatter.continuation_indentation=2
org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
org.eclipse.jdt.core.formatter.indent_empty_lines=false
org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
org.eclipse.jdt.core.formatter.indentation.size=4
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert
org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=insert
org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=insert
org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=insert
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
org.eclipse.jdt.core.formatter.join_lines_in_comments=true
org.eclipse.jdt.core.formatter.join_wrapped_lines=true
org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
org.eclipse.jdt.core.formatter.lineSplit=90
org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
org.eclipse.jdt.core.formatter.tabulation.char=tab
org.eclipse.jdt.core.formatter.tabulation.size=4
org.eclipse.jdt.core.formatter.use_on_off_tags=true
org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter

================================================
FILE: eclipse/org.eclipse.jdt.ui.prefs
================================================
cleanup.add_default_serial_version_id=true
cleanup.add_generated_serial_version_id=false
cleanup.add_missing_annotations=true
cleanup.add_missing_deprecated_annotations=true
cleanup.add_missing_methods=false
cleanup.add_missing_nls_tags=false
cleanup.add_missing_override_annotations=true
cleanup.add_missing_override_annotations_interface_methods=true
cleanup.add_serial_version_id=false
cleanup.always_use_blocks=true
cleanup.always_use_parentheses_in_expressions=false
cleanup.always_use_this_for_non_static_field_access=true
cleanup.always_use_this_for_non_static_method_access=false
cleanup.convert_functional_interfaces=false
cleanup.convert_to_enhanced_for_loop=false
cleanup.correct_indentation=false
cleanup.format_source_code=true
cleanup.format_source_code_changes_only=false
cleanup.insert_inferred_type_arguments=false
cleanup.make_local_variable_final=false
cleanup.make_parameters_final=false
cleanup.make_private_fields_final=false
cleanup.make_type_abstract_if_missing_method=false
cleanup.make_variable_declarations_final=false
cleanup.never_use_blocks=false
cleanup.never_use_parentheses_in_expressions=true
cleanup.organize_imports=true
cleanup.qualify_static_field_accesses_with_declaring_class=false
cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
cleanup.qualify_static_member_accesses_with_declaring_class=true
cleanup.qualify_static_method_accesses_with_declaring_class=false
cleanup.remove_private_constructors=true
cleanup.remove_redundant_type_arguments=true
cleanup.remove_trailing_whitespaces=true
cleanup.remove_trailing_whitespaces_all=true
cleanup.remove_trailing_whitespaces_ignore_empty=false
cleanup.remove_unnecessary_casts=true
cleanup.remove_unnecessary_nls_tags=false
cleanup.remove_unused_imports=true
cleanup.remove_unused_local_variables=false
cleanup.remove_unused_private_fields=true
cleanup.remove_unused_private_members=false
cleanup.remove_unused_private_methods=true
cleanup.remove_unused_private_types=true
cleanup.sort_members=false
cleanup.sort_members_all=false
cleanup.use_anonymous_class_creation=false
cleanup.use_blocks=true
cleanup.use_blocks_only_for_return_and_throw=false
cleanup.use_lambda=true
cleanup.use_parentheses_in_expressions=false
cleanup.use_this_for_non_static_field_access=false
cleanup.use_this_for_non_static_field_access_only_if_necessary=false
cleanup.use_this_for_non_static_method_access=false
cleanup.use_this_for_non_static_method_access_only_if_necessary=true
cleanup.use_type_arguments=false
cleanup_profile=_Spring Cloud Cleanup Conventions
cleanup_settings_version=2
eclipse.preferences.version=1
editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
formatter_profile=_Spring Cloud Java Conventions
formatter_settings_version=13
org.eclipse.jdt.ui.exception.name=e
org.eclipse.jdt.ui.gettersetter.use.is=true
org.eclipse.jdt.ui.ignorelowercasenames=true
org.eclipse.jdt.ui.importorder=java;javax;;org.springframework;\#;
org.eclipse.jdt.ui.javadoc=true
org.eclipse.jdt.ui.keywordthis=false
org.eclipse.jdt.ui.ondemandthreshold=9999
org.eclipse.jdt.ui.overrideannotation=true
org.eclipse.jdt.ui.staticondemandthreshold=9999
org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*\n * Copyright 2013-2023 the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the "License");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *      http\://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an "AS IS" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/* (non-Javadoc)\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n\n${package_declaration}\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="false" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\nthrow new UnsupportedOperationException("Auto-generated method stub", ${exception_var});</template><template autoinsert\="false" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\nthrow new UnsupportedOperationException("Auto-generated method stub");</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
sp_cleanup.add_default_serial_version_id=true
sp_cleanup.add_generated_serial_version_id=false
sp_cleanup.add_missing_annotations=true
sp_cleanup.add_missing_deprecated_annotations=true
sp_cleanup.add_missing_methods=false
sp_cleanup.add_missing_nls_tags=false
sp_cleanup.add_missing_override_annotations=true
sp_cleanup.add_missing_override_annotations_interface_methods=true
sp_cleanup.add_serial_version_id=false
sp_cleanup.always_use_blocks=true
sp_cleanup.always_use_parentheses_in_expressions=true
sp_cleanup.always_use_this_for_non_static_field_access=true
sp_cleanup.always_use_this_for_non_static_method_access=false
sp_cleanup.convert_to_enhanced_for_loop=false
sp_cleanup.correct_indentation=false
sp_cleanup.format_source_code=true
sp_cleanup.format_source_code_changes_only=false
sp_cleanup.make_local_variable_final=false
sp_cleanup.make_parameters_final=false
sp_cleanup.make_private_fields_final=false
sp_cleanup.make_type_abstract_if_missing_method=false
sp_cleanup.make_variable_declarations_final=false
sp_cleanup.never_use_blocks=false
sp_cleanup.never_use_parentheses_in_expressions=false
sp_cleanup.on_save_use_additional_actions=true
sp_cleanup.organize_imports=true
sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
sp_cleanup.qualify_static_member_accesses_with_declaring_class=true
sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
sp_cleanup.remove_private_constructors=true
sp_cleanup.remove_trailing_whitespaces=true
sp_cleanup.remove_trailing_whitespaces_all=true
sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
sp_cleanup.remove_unnecessary_casts=true
sp_cleanup.remove_unnecessary_nls_tags=false
sp_cleanup.remove_unused_imports=true
sp_cleanup.remove_unused_local_variables=false
sp_cleanup.remove_unused_private_fields=true
sp_cleanup.remove_unused_private_members=false
sp_cleanup.remove_unused_private_methods=true
sp_cleanup.remove_unused_private_types=true
sp_cleanup.sort_members=false
sp_cleanup.sort_members_all=false
sp_cleanup.use_blocks=true
sp_cleanup.use_blocks_only_for_return_and_throw=false
sp_cleanup.use_parentheses_in_expressions=false
sp_cleanup.use_this_for_non_static_field_access=true
sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=false
sp_cleanup.use_this_for_non_static_method_access=false
sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true

================================================
FILE: mvnw
================================================
#!/bin/sh
# ----------------------------------------------------------------------------
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#    https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.
# ----------------------------------------------------------------------------

# ----------------------------------------------------------------------------
# Maven Start Up Batch script
#
# Required ENV vars:
# ------------------
#   JAVA_HOME - location of a JDK home dir
#
# Optional ENV vars
# -----------------
#   M2_HOME - location of maven2's installed home dir
#   MAVEN_OPTS - parameters passed to the Java VM when running Maven
#     e.g. to debug Maven itself, use
#       set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
#   MAVEN_SKIP_RC - flag to disable loading of mavenrc files
# ----------------------------------------------------------------------------

if [ -z "$MAVEN_SKIP_RC" ] ; then

  if [ -f /usr/local/etc/mavenrc ] ; then
    . /usr/local/etc/mavenrc
  fi

  if [ -f /etc/mavenrc ] ; then
    . /etc/mavenrc
  fi

  if [ -f "$HOME/.mavenrc" ] ; then
    . "$HOME/.mavenrc"
  fi

fi

# OS specific support.  $var _must_ be set to either true or false.
cygwin=false;
darwin=false;
mingw=false
case "`uname`" in
  CYGWIN*) cygwin=true ;;
  MINGW*) mingw=true;;
  Darwin*) darwin=true
    # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
    # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
    if [ -z "$JAVA_HOME" ]; then
      if [ -x "/usr/libexec/java_home" ]; then
        export JAVA_HOME="`/usr/libexec/java_home`"
      else
        export JAVA_HOME="/Library/Java/Home"
      fi
    fi
    ;;
esac

if [ -z "$JAVA_HOME" ] ; then
  if [ -r /etc/gentoo-release ] ; then
    JAVA_HOME=`java-config --jre-home`
  fi
fi

if [ -z "$M2_HOME" ] ; then
  ## resolve links - $0 may be a link to maven's home
  PRG="$0"

  # need this for relative symlinks
  while [ -h "$PRG" ] ; do
    ls=`ls -ld "$PRG"`
    link=`expr "$ls" : '.*-> \(.*\)$'`
    if expr "$link" : '/.*' > /dev/null; then
      PRG="$link"
    else
      PRG="`dirname "$PRG"`/$link"
    fi
  done

  saveddir=`pwd`

  M2_HOME=`dirname "$PRG"`/..

  # make it fully qualified
  M2_HOME=`cd "$M2_HOME" && pwd`

  cd "$saveddir"
  # echo Using m2 at $M2_HOME
fi

# For Cygwin, ensure paths are in UNIX format before anything is touched
if $cygwin ; then
  [ -n "$M2_HOME" ] &&
    M2_HOME=`cygpath --unix "$M2_HOME"`
  [ -n "$JAVA_HOME" ] &&
    JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
  [ -n "$CLASSPATH" ] &&
    CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
fi

# For Mingw, ensure paths are in UNIX format before anything is touched
if $mingw ; then
  [ -n "$M2_HOME" ] &&
    M2_HOME="`(cd "$M2_HOME"; pwd)`"
  [ -n "$JAVA_HOME" ] &&
    JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
fi

if [ -z "$JAVA_HOME" ]; then
  javaExecutable="`which javac`"
  if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
    # readlink(1) is not available as standard on Solaris 10.
    readLink=`which readlink`
    if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
      if $darwin ; then
        javaHome="`dirname \"$javaExecutable\"`"
        javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
      else
        javaExecutable="`readlink -f \"$javaExecutable\"`"
      fi
      javaHome="`dirname \"$javaExecutable\"`"
      javaHome=`expr "$javaHome" : '\(.*\)/bin'`
      JAVA_HOME="$javaHome"
      export JAVA_HOME
    fi
  fi
fi

if [ -z "$JAVACMD" ] ; then
  if [ -n "$JAVA_HOME"  ] ; then
    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
      # IBM's JDK on AIX uses strange locations for the executables
      JAVACMD="$JAVA_HOME/jre/sh/java"
    else
      JAVACMD="$JAVA_HOME/bin/java"
    fi
  else
    JAVACMD="`\\unset -f command; \\command -v java`"
  fi
fi

if [ ! -x "$JAVACMD" ] ; then
  echo "Error: JAVA_HOME is not defined correctly." >&2
  echo "  We cannot execute $JAVACMD" >&2
  exit 1
fi

if [ -z "$JAVA_HOME" ] ; then
  echo "Warning: JAVA_HOME environment variable is not set."
fi

CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher

# traverses directory structure from process work directory to filesystem root
# first directory with .mvn subdirectory is considered project base directory
find_maven_basedir() {

  if [ -z "$1" ]
  then
    echo "Path not specified to find_maven_basedir"
    return 1
  fi

  basedir="$1"
  wdir="$1"
  while [ "$wdir" != '/' ] ; do
    if [ -d "$wdir"/.mvn ] ; then
      basedir=$wdir
      break
    fi
    # workaround for JBEAP-8937 (on Solaris 10/Sparc)
    if [ -d "${wdir}" ]; then
      wdir=`cd "$wdir/.."; pwd`
    fi
    # end of workaround
  done
  echo "${basedir}"
}

# concatenates all lines of a file
concat_lines() {
  if [ -f "$1" ]; then
    echo "$(tr -s '\n' ' ' < "$1")"
  fi
}

BASE_DIR=`find_maven_basedir "$(pwd)"`
if [ -z "$BASE_DIR" ]; then
  exit 1;
fi

##########################################################################################
# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
# This allows using the maven wrapper in projects that prohibit checking in binary data.
##########################################################################################
if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
    if [ "$MVNW_VERBOSE" = true ]; then
      echo "Found .mvn/wrapper/maven-wrapper.jar"
    fi
else
    if [ "$MVNW_VERBOSE" = true ]; then
      echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
    fi
    if [ -n "$MVNW_REPOURL" ]; then
      jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
    else
      jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
    fi
    while IFS="=" read key value; do
      case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
      esac
    done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
    if [ "$MVNW_VERBOSE" = true ]; then
      echo "Downloading from: $jarUrl"
    fi
    wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
    if $cygwin; then
      wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
    fi

    if command -v wget > /dev/null; then
        if [ "$MVNW_VERBOSE" = true ]; then
          echo "Found wget ... using wget"
        fi
        if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
            wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath"
        else
            wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath"
        fi
    elif command -v curl > /dev/null; then
        if [ "$MVNW_VERBOSE" = true ]; then
          echo "Found curl ... using curl"
        fi
        if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
            curl -o "$wrapperJarPath" "$jarUrl" -f
        else
            curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
        fi

    else
        if [ "$MVNW_VERBOSE" = true ]; then
          echo "Falling back to using Java to download"
        fi
        javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
        # For Cygwin, switch paths to Windows format before running javac
        if $cygwin; then
          javaClass=`cygpath --path --windows "$javaClass"`
        fi
        if [ -e "$javaClass" ]; then
            if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
                if [ "$MVNW_VERBOSE" = true ]; then
                  echo " - Compiling MavenWrapperDownloader.java ..."
                fi
                # Compiling the Java class
                ("$JAVA_HOME/bin/javac" "$javaClass")
            fi
            if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
                # Running the downloader
                if [ "$MVNW_VERBOSE" = true ]; then
                  echo " - Running MavenWrapperDownloader.java ..."
                fi
                ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
            fi
        fi
    fi
fi
##########################################################################################
# End of extension
##########################################################################################

export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
if [ "$MVNW_VERBOSE" = true ]; then
  echo $MAVEN_PROJECTBASEDIR
fi
MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"

# For Cygwin, switch paths to Windows format before running java
if $cygwin; then
  [ -n "$M2_HOME" ] &&
    M2_HOME=`cygpath --path --windows "$M2_HOME"`
  [ -n "$JAVA_HOME" ] &&
    JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
  [ -n "$CLASSPATH" ] &&
    CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
  [ -n "$MAVEN_PROJECTBASEDIR" ] &&
    MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
fi

# Provide a "standardized" way to retrieve the CLI args that will
# work with both Windows and non-Windows executions.
MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
export MAVEN_CMD_LINE_ARGS

WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain

exec "$JAVACMD" \
  $MAVEN_OPTS \
  $MAVEN_DEBUG_OPTS \
  -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
  "-Dmaven.home=${M2_HOME}" \
  "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
  ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"


================================================
FILE: mvnw.cmd
================================================
@REM ----------------------------------------------------------------------------
@REM Licensed to the Apache Software Foundation (ASF) under one
@REM or more contributor license agreements.  See the NOTICE file
@REM distributed with this work for additional information
@REM regarding copyright ownership.  The ASF licenses this file
@REM to you under the Apache License, Version 2.0 (the
@REM "License"); you may not use this file except in compliance
@REM with the License.  You may obtain a copy of the License at
@REM
@REM    https://www.apache.org/licenses/LICENSE-2.0
@REM
@REM Unless required by applicable law or agreed to in writing,
@REM software distributed under the License is distributed on an
@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@REM KIND, either express or implied.  See the License for the
@REM specific language governing permissions and limitations
@REM under the License.
@REM ----------------------------------------------------------------------------

@REM ----------------------------------------------------------------------------
@REM Maven Start Up Batch script
@REM
@REM Required ENV vars:
@REM JAVA_HOME - location of a JDK home dir
@REM
@REM Optional ENV vars
@REM M2_HOME - location of maven2's installed home dir
@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
@REM     e.g. to debug Maven itself, use
@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
@REM ----------------------------------------------------------------------------

@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
@echo off
@REM set title of command window
title %0
@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
@if "%MAVEN_BATCH_ECHO%" == "on"  echo %MAVEN_BATCH_ECHO%

@REM set %HOME% to equivalent of $HOME
if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")

@REM Execute a user defined script before this one
if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
@REM check for pre script, once with legacy .bat ending and once with .cmd ending
if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %*
if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %*
:skipRcPre

@setlocal

set ERROR_CODE=0

@REM To isolate internal variables from possible post scripts, we use another setlocal
@setlocal

@REM ==== START VALIDATION ====
if not "%JAVA_HOME%" == "" goto OkJHome

echo.
echo Error: JAVA_HOME not found in your environment. >&2
echo Please set the JAVA_HOME variable in your environment to match the >&2
echo location of your Java installation. >&2
echo.
goto error

:OkJHome
if exist "%JAVA_HOME%\bin\java.exe" goto init

echo.
echo Error: JAVA_HOME is set to an invalid directory. >&2
echo JAVA_HOME = "%JAVA_HOME%" >&2
echo Please set the JAVA_HOME variable in your environment to match the >&2
echo location of your Java installation. >&2
echo.
goto error

@REM ==== END VALIDATION ====

:init

@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
@REM Fallback to current working directory if not found.

set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir

set EXEC_DIR=%CD%
set WDIR=%EXEC_DIR%
:findBaseDir
IF EXIST "%WDIR%"\.mvn goto baseDirFound
cd ..
IF "%WDIR%"=="%CD%" goto baseDirNotFound
set WDIR=%CD%
goto findBaseDir

:baseDirFound
set MAVEN_PROJECTBASEDIR=%WDIR%
cd "%EXEC_DIR%"
goto endDetectBaseDir

:baseDirNotFound
set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
cd "%EXEC_DIR%"

:endDetectBaseDir

IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig

@setlocal EnableExtensions EnableDelayedExpansion
for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%

:endReadAdditionalConfig

SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain

set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"

FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
    IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
)

@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
if exist %WRAPPER_JAR% (
    if "%MVNW_VERBOSE%" == "true" (
        echo Found %WRAPPER_JAR%
    )
) else (
    if not "%MVNW_REPOURL%" == "" (
        SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
    )
    if "%MVNW_VERBOSE%" == "true" (
        echo Couldn't find %WRAPPER_JAR%, downloading it ...
        echo Downloading from: %DOWNLOAD_URL%
    )

    powershell -Command "&{"^
		"$webclient = new-object System.Net.WebClient;"^
		"if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
		"$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
		"}"^
		"[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
		"}"
    if "%MVNW_VERBOSE%" == "true" (
        echo Finished downloading %WRAPPER_JAR%
    )
)
@REM End of extension

@REM Provide a "standardized" way to retrieve the CLI args that will
@REM work with both Windows and non-Windows executions.
set MAVEN_CMD_LINE_ARGS=%*

%MAVEN_JAVA_EXE% ^
  %JVM_CONFIG_MAVEN_PROPS% ^
  %MAVEN_OPTS% ^
  %MAVEN_DEBUG_OPTS% ^
  -classpath %WRAPPER_JAR% ^
  "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^
  %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
if ERRORLEVEL 1 goto error
goto end

:error
set ERROR_CODE=1

:end
@endlocal & set ERROR_CODE=%ERROR_CODE%

if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost
@REM check for post script, once with legacy .bat ending and once with .cmd ending
if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat"
if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd"
:skipRcPost

@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
if "%MAVEN_BATCH_PAUSE%"=="on" pause

if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE%

cmd /C exit /B %ERROR_CODE%


================================================
FILE: pom.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-build</artifactId>
		<version>5.0.0</version>
        <relativePath/>
    </parent>

    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-alibaba</artifactId>
    <version>${revision}</version>
    <packaging>pom</packaging>
    <name>Spring Cloud Alibaba</name>
    <description>Spring Cloud Alibaba</description>
    <url>https://github.com/alibaba/spring-cloud-alibaba</url>

    <licenses>
        <license>
            <name>Apache License, Version 2.0</name>
            <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
            <distribution>repo</distribution>
        </license>
    </licenses>

    <scm>
        <url>https://github.com/alibaba/spring-cloud-alibaba</url>
        <connection>
            scm:git:git://github.com/alibaba/spring-cloud-alibaba.git
        </connection>
        <developerConnection>
            scm:git:ssh://git@github.com/alibaba/spring-cloud-alibaba.git
        </developerConnection>
        <tag>HEAD</tag>
    </scm>

    <developers>
        <developer>
            <name>xiaojing</name>
            <email>flystar32@163.com</email>
        </developer>
        <developer>
            <name>Jim Fang</name>
            <email>fangjian0423@gmail.com</email>
            <organization>Alibaba</organization>
            <url>https://github.com/fangjian0423</url>
        </developer>
        <developer>
            <name>xiaolongzuo</name>
            <email>150349407@qq.com</email>
        </developer>
        <developer>
            <name>hengyunabc</name>
            <email>hengyunabc@gmail.com</email>
        </developer>
        <developer>
            <id>mercyblitz</id>
            <name>Mercy Ma</name>
            <email>mercyblitz@gmail.com</email>
            <organization>Alibaba</organization>
            <url>https://github.com/mercyblitz</url>
        </developer>
        <developer>
            <name>yunzheng</name>
            <email>yunzheng1228@gmail.com</email>
        </developer>
        <developer>
            <id>theonefx</id>
            <name>theonefx</name>
            <email>chenxilzx1@gmail.com</email>
            <organization>Alibaba</organization>
            <url>https://github.com/theonefx</url>
        </developer>
    </developers>

    <properties>
        <!-- Project revision -->
        <revision>2025.1.0.1-SNAPSHOT</revision>

        <!-- Spring Cloud -->
        <spring.cloud.version>2025.1.0</spring.cloud.version>

        <!-- Spring Boot -->
        <spring-boot.version>4.0.0</spring-boot.version>

        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>

        <!-- Maven Plugin Versions -->
        <maven-compiler-plugin.version>3.14.0</maven-compiler-plugin.version>
        <maven-deploy-plugin.version>3.1.4</maven-deploy-plugin.version>
        <!-- JUnit 5 requires Surefire version 2.22.0 or higher -->
        <maven-surefire-plugin.version>3.5.3</maven-surefire-plugin.version>
        <maven-source-plugin.version>3.2.1</maven-source-plugin.version>
        <maven-javadoc-plugin.version>3.11.2</maven-javadoc-plugin.version>
        <maven-gpg-plugin.version>3.2.7</maven-gpg-plugin.version>
        <flatten-maven-plugin.version>1.7.0</flatten-maven-plugin.version>
        <gmavenplus-plugin.version>4.4.1</gmavenplus-plugin.version>
        <jacoco.version>0.8.13</jacoco.version>
        <native-maven-plugin.version>0.10.6</native-maven-plugin.version>

        <!-- Maven Central Portal -->
        <central.publishing.maven.version>0.7.0</central.publishing.maven.version>
    </properties>

    <modules>
        <module>spring-cloud-alibaba-dependencies</module>
        <module>spring-cloud-alibaba-examples</module>
        <module>spring-cloud-alibaba-starters</module>
        <module>spring-cloud-alibaba-coverage</module>
        <module>spring-cloud-alibaba-tests</module>
    </modules>

    <dependencyManagement>
        <dependencies>

            <!-- Spring Dependencies -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${spring-boot.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring.cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>${project.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

        </dependencies>
    </dependencyManagement>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.jacoco</groupId>
                    <artifactId>jacoco-maven-plugin</artifactId>
                    <version>${jacoco.version}</version>
                </plugin>

                <!-- disable auto format from parent -->
                <plugin>
                    <groupId>io.spring.javaformat</groupId>
                    <artifactId>spring-javaformat-maven-plugin</artifactId>
                    <version>${spring-javaformat.version}</version>
                    <executions>
                        <execution>
                            <phase>validate</phase>
                            <configuration>
                                <skip>true</skip>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>

                <plugin>
                    <groupId>org.sonatype.central</groupId>
                    <artifactId>central-publishing-maven-plugin</artifactId>
                    <version>${central.publishing.maven.version}</version>
                </plugin>
            </plugins>
        </pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-eclipse-plugin</artifactId>
                <configuration>
                    <useProjectReferences>false</useProjectReferences>
                    <additionalConfig>
                        <file>
                            <name>.settings/org.eclipse.jdt.ui.prefs</name>
                            <location>
                                ${maven.multiModuleProjectDirectory}/eclipse/org.eclipse.jdt.ui.prefs
                            </location>
                        </file>
                        <file>
                            <name>.settings/org.eclipse.jdt.core.prefs</name>
                            <location>
                                ${maven.multiModuleProjectDirectory}/eclipse/org.eclipse.jdt.core.prefs
                            </location>
                        </file>
                    </additionalConfig>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-checkstyle-plugin</artifactId>
                <executions>
                    <execution>
                        <id>checkstyle-validation</id>
                        <phase>validate</phase>
                        <goals>
                            <goal>check</goal>
                        </goals>
                        <configuration>
                            <!-- Checkstyle rules inherited from spring-cloud-build -->
                            <suppressionsLocation>${maven.multiModuleProjectDirectory}/eclipse/checkstyle-suppressions.xml</suppressionsLocation>
                            <includeTestSourceDirectory>true</includeTestSourceDirectory>
                            <consoleOutput>true</consoleOutput>
                            <failsOnError>true</failsOnError>
                            <failOnViolation>true</failOnViolation>
                            <violationSeverity>warning</violationSeverity>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>${maven-compiler-plugin.version}</version>
                <inherited>true</inherited>
                <configuration>
                    <source>${maven.compiler.source}</source>
                    <target>${maven.compiler.target}</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>${maven-surefire-plugin.version}</version>
                <inherited>true</inherited>
                <configuration>
                    <forkCount>1</forkCount>
                    <reuseForks>false</reuseForks>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>flatten-maven-plugin</artifactId>
                <version>${flatten-maven-plugin.version}</version>
                <configuration>
                    <updatePomFile>true</updatePomFile>
                    <flattenMode>resolveCiFriendliesOnly</flattenMode>
                </configuration>
                <executions>
                    <execution>
                        <id>flatten</id>
                        <phase>process-resources</phase>
                        <goals>
                            <goal>flatten</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>flatten.clean</id>
                        <phase>clean</phase>
                        <goals>
                            <goal>clean</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

    <reporting>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-checkstyle-plugin</artifactId>
            </plugin>
        </plugins>
    </reporting>

	<!-- Override org.springframework.cloud:spring-cloud-build distributionManagement -->
	<distributionManagement>
		<snapshotRepository>
			<id>github</id>
			<url>https://maven.pkg.github.com/alibaba/spring-cloud-alibaba</url>
		</snapshotRepository>
	</distributionManagement>

    <profiles>
        <profile>
            <id>release</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-source-plugin</artifactId>
                        <version>${maven-source-plugin.version}</version>
                        <executions>
                            <execution>
                                <phase>package</phase>
                                <goals>
                                    <goal>jar-no-fork</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <version>${maven-javadoc-plugin.version}</version>
                        <configuration>
                            <doclint>none</doclint>
                            <source>${maven.compiler.source}</source>
                        </configuration>
                        <executions>
                            <execution>
                                <phase>package</phase>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>

                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <version>${maven-gpg-plugin.version}</version>
                        <executions>
                            <execution>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>

                    <plugin>
                        <groupId>org.sonatype.central</groupId>
                        <artifactId>central-publishing-maven-plugin</artifactId>
                        <extensions>true</extensions>
                        <configuration>
                            <publishingServerId>central</publishingServerId>
                            <excludeArtifacts>
                                <excludeArtifact>spring-cloud-alibaba-coverage</excludeArtifact>
                                <excludeArtifact>sentinel-core-example</excludeArtifact>
                                <excludeArtifact>sentinel-openfeign-example</excludeArtifact>
                                <excludeArtifact>sentinel-resttemplate-example</excludeArtifact>
                                <excludeArtifact>sentinel-circuitbreaker-example</excludeArtifact>
                                <excludeArtifact>sentinel-webflux-example</excludeArtifact>
                                <excludeArtifact>sentinel-spring-cloud-gateway-example</excludeArtifact>
                                <excludeArtifact>nacos-discovery-example</excludeArtifact>
                                <excludeArtifact>nacos-config-example</excludeArtifact>
                                <excludeArtifact>nacos-gateway-example</excludeArtifact>
                                <excludeArtifact>business-service</excludeArtifact>
                                <excludeArtifact>order-service</excludeArtifact>
                                <excludeArtifact>storage-service</excludeArtifact>
                                <excludeArtifact>account-service</excludeArtifact>
                                <excludeArtifact>spring-cloud-alibaba-examples</excludeArtifact>
                                <excludeArtifact>rocketmq-comprehensive-example</excludeArtifact>
                                <excludeArtifact>rocketmq-orderly-consume-example</excludeArtifact>
                                <excludeArtifact>rocketmq-broadcast-producer-example</excludeArtifact>
                                <excludeArtifact>rocketmq-broadcast-consumer1-example</excludeArtifact>
                                <excludeArtifact>rocketmq-broadcast-consumer2-example</excludeArtifact>
                                <excludeArtifact>rocketmq-delay-consume-example</excludeArtifact>
                                <excludeArtifact>rocketmq-sql-consume-example</excludeArtifact>
                                <excludeArtifact>rocketmq-example-common</excludeArtifact>
                                <excludeArtifact>rocketmq-tx-example</excludeArtifact>
                                <excludeArtifact>rocketmq-pollable-consume-example</excludeArtifact>
                                <excludeArtifact>spring-cloud-bus-rocketmq-example</excludeArtifact>
                                <excludeArtifact>spring-cloud-alibaba-sidecar-nacos-example</excludeArtifact>
                                <excludeArtifact>spring-cloud-alibaba-sidecar-consul-example</excludeArtifact>
                                <excludeArtifact>nacos-gateway-discovery-example</excludeArtifact>
                                <excludeArtifact>nacos-discovery-provider-example</excludeArtifact>
                                <excludeArtifact>nacos-discovery-consumer-sclb-example</excludeArtifact>
                                <excludeArtifact>nacos-discovery-spring-cloud-config-client-example</excludeArtifact>
                                <excludeArtifact>nacos-discovery-consumer-example</excludeArtifact>
                                <excludeArtifact>nacos-reactivediscovery-consumer-example</excludeArtifact>
                                <excludeArtifact>nacos-gateway-provider-example</excludeArtifact>
                                <excludeArtifact>nacos-discovery-spring-cloud-config-server-example</excludeArtifact>
                                <excludeArtifact>integrated-storage</excludeArtifact>
                                <excludeArtifact>integrated-account</excludeArtifact>
                                <excludeArtifact>integrated-order</excludeArtifact>
                                <excludeArtifact>integrated-gateway</excludeArtifact>
                                <excludeArtifact>integrated-praise-provider</excludeArtifact>
                                <excludeArtifact>integrated-praise-consumer</excludeArtifact>
                                <excludeArtifact>integrated-common</excludeArtifact>
                                <excludeArtifact>integrated-frontend</excludeArtifact>
                                <excludeArtifact>spring-cloud-scheduling-example</excludeArtifact>
                                <excludeArtifact>spring-cloud-alibaba-test-support</excludeArtifact>
                                <excludeArtifact>nacos-tests</excludeArtifact>
                                <excludeArtifact>nacos-config-test</excludeArtifact>
                                <excludeArtifact>nacos-discovery-test</excludeArtifact>
                                <excludeArtifact>rocketmq-tests</excludeArtifact>
                                <excludeArtifact>rocketmq-stream-test</excludeArtifact>
                                <excludeArtifact>sentinel-tests</excludeArtifact>
                                <excludeArtifact>sentinel-flowcontrol-test</excludeArtifact>
                                <excludeArtifact>sentinel-degrade-test</excludeArtifact>
                            </excludeArtifacts>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
</project>


================================================
FILE: spring-cloud-alibaba-coverage/pom.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">

    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-alibaba</artifactId>
        <version>${revision}</version>
        <relativePath>../pom.xml</relativePath>
    </parent>

    <artifactId>spring-cloud-alibaba-coverage</artifactId>
    <name>Spring Cloud Alibaba Coverage</name>

    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-sentinel-datasource</artifactId>
            <version>${revision}</version>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
            <version>${revision}</version>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-circuitbreaker-sentinel</artifactId>
            <version>${revision}</version>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-seata</artifactId>
            <version>${revision}</version>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            <version>${revision}</version>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
            <version>${revision}</version>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-stream-rocketmq</artifactId>
            <version>${revision}</version>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-bus-rocketmq</artifactId>
            <version>${revision}</version>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-sidecar</artifactId>
            <version>${revision}</version>
        </dependency>

    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.jacoco</groupId>
                <artifactId>jacoco-maven-plugin</artifactId>
                <version>${jacoco.version}</version>
                <executions>
                    <execution>
                        <id>report-aggregate</id>
                        <phase>test</phase>
                        <goals>
                            <goal>report-aggregate</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${basedir}/../target/site/jacoco</outputDirectory>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-deploy-plugin</artifactId>
                <version>${maven-deploy-plugin.version}</version>
                <configuration>
                    <skip>true</skip>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>


================================================
FILE: spring-cloud-alibaba-dependencies/pom.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-dependencies-parent</artifactId>
        <version>5.0.0</version>
        <relativePath/>
    </parent>

    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-alibaba-dependencies</artifactId>
    <version>${revision}</version>
    <packaging>pom</packaging>
    <name>Spring Cloud Alibaba Dependencies</name>
    <description>Spring Cloud Alibaba Dependencies</description>

    <properties>
        <revision>2025.1.0.1-SNAPSHOT</revision>
        <sentinel.version>1.8.9</sentinel.version>
        <nacos.client.version>3.1.1</nacos.client.version>
        <seata.version>2.6.0</seata.version>

        <!-- Apache RocketMQ -->
        <rocketmq.version>5.3.1</rocketmq.version>

        <!-- scheduling -->
        <shedlock.version>5.10.0</shedlock.version>
        <schedulerx.worker.version>1.13.3</schedulerx.worker.version>

        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>

        <!-- Maven Plugin Versions -->
        <maven-source-plugin.version>3.2.1</maven-source-plugin.version>
        <maven-javadoc-plugin.version>3.11.2</maven-javadoc-plugin.version>
        <maven-gpg-plugin.version>3.2.7</maven-gpg-plugin.version>
        <flatten-maven-plugin.version>1.7.0</flatten-maven-plugin.version>

        <!-- Maven Central Portal -->
        <central.publishing.maven.version>0.7.0</central.publishing.maven.version>

        <druid.version>1.2.27</druid.version>
        <mybatis.version>3.0.5</mybatis.version>
        <log4j-core.version>2.25.1</log4j-core.version>
        <slf4j-api.version>2.0.17</slf4j-api.version>
        <fastjson.version>2.0.58</fastjson.version>
        <log4j-slf4j2-impl.version>2.25.1</log4j-slf4j2-impl.version>
        <guava.version>33.4.8-jre</guava.version>
        <lombok.version>1.18.38</lombok.version>
    </properties>

    <dependencyManagement>
        <dependencies>

            <!--Nacos-->
            <dependency>
                <groupId>com.alibaba.nacos</groupId>
                <artifactId>nacos-client</artifactId>
                <version>${nacos.client.version}</version>
            </dependency>

            <!-- Sentinel -->
            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-core</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-parameter-flow-control</artifactId>
                <version>${sentinel.version}</version>
            </dependency>
            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-datasource-extension</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-datasource-apollo</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-datasource-zookeeper</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-datasource-nacos</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-datasource-redis</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-datasource-consul</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-web-servlet</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-spring-cloud-gateway-v6x-adapter</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-transport-simple-http</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-annotation-aspectj</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-reactor-adapter</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-cluster-server-default</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-cluster-client-default</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-spring-webflux-adapter</artifactId>
                <version>${sentinel.version}</version>
            </dependency>
            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-api-gateway-adapter-common</artifactId>
                <version>${sentinel.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.csp</groupId>
                <artifactId>sentinel-spring-webmvc-v6x-adapter</artifactId>
                <version>${sentinel.version}</version>
            </dependency>
            <!--apache Seata-->
            <dependency>
                <groupId>org.apache.seata</groupId>
                <artifactId>seata-spring-boot-starter</artifactId>
                <version>${seata.version}</version>
            </dependency>
            <!--Alibaba RocketMQ-->
            <dependency>
                <groupId>org.apache.rocketmq</groupId>
                <artifactId>rocketmq-client</artifactId>
                <version>${rocketmq.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.rocketmq</groupId>
                <artifactId>rocketmq-acl</artifactId>
                <version>${rocketmq.version}</version>
            </dependency>

            <!-- Alibaba scheduling -->
            <dependency>
                <groupId>net.javacrumbs.shedlock</groupId>
                <artifactId>shedlock-spring</artifactId>
                <version>${shedlock.version}</version>
            </dependency>
            <dependency>
                <groupId>net.javacrumbs.shedlock</groupId>
                <artifactId>shedlock-provider-jdbc-template</artifactId>
                <version>${shedlock.version}</version>
            </dependency>
            <dependency>
                <groupId>com.aliyun.schedulerx</groupId>
                <artifactId>schedulerx2-worker</artifactId>
                <version>${schedulerx.worker.version}</version>
            </dependency>

            <!-- Own dependencies  -->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-sentinel-datasource</artifactId>
                <version>${revision}</version>
            </dependency>
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-sentinel-gateway</artifactId>
                <version>${revision}</version>
            </dependency>

            <!-- Own dependencies - Starters -->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
                <version>${revision}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-circuitbreaker-sentinel</artifactId>
                <version>${revision}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-seata</artifactId>
                <version>${revision}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-alibaba-nacos-config</artifactId>
                <version>${revision}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
                <version>${revision}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
                <version>${revision}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-stream-rocketmq</artifactId>
                <version>${revision}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-bus-rocketmq</artifactId>
                <version>${revision}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-sidecar</artifactId>
                <version>${revision}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-commons</artifactId>
                <version>${revision}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-schedulerx</artifactId>
                <version>${revision}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid-spring-boot-starter</artifactId>
                <version>${druid.version}</version>
            </dependency>

            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid</artifactId>
                <version>${druid.version}</version>
            </dependency>

            <dependency>
                <groupId>org.mybatis.spring.boot</groupId>
                <artifactId>mybatis-spring-boot-starter</artifactId>
                <version>${mybatis.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.logging.log4j</groupId>
                <artifactId>log4j-core</artifactId>
                <version>${log4j-core.version}</version>
            </dependency>

            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-api</artifactId>
                <version>${slf4j-api.version}</version>
            </dependency>
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>${fastjson.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.logging.log4j</groupId>
                <artifactId>log4j-slf4j2-impl</artifactId>
                <version>${log4j-slf4j2-impl.version}</version>
            </dependency>
            <dependency>
                <groupId>com.google.guava</groupId>
                <artifactId>guava</artifactId>
                <version>${guava.version}</version>
            </dependency>
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>${lombok.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

	<!-- Override org.springframework.cloud:spring-cloud-dependencies-parent distributionManagement -->
	<distributionManagement>
		<snapshotRepository>
			<id>github</id>
			<url>https://maven.pkg.github.com/alibaba/spring-cloud-alibaba</url>
		</snapshotRepository>
	</distributionManagement>

    <profiles>
        <profile>
            <id>release</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-source-plugin</artifactId>
                        <version>${maven-source-plugin.version}</version>
                        <executions>
                            <execution>
                                <phase>package</phase>
                                <goals>
                                    <goal>jar-no-fork</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <version>${maven-javadoc-plugin.version}</version>
                        <executions>
                            <execution>
                                <phase>package</phase>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>

                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <version>${maven-gpg-plugin.version}</version>
                        <executions>
                            <execution>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>

                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>flatten-maven-plugin</artifactId>
                        <version>${flatten-maven-plugin.version}</version>
                        <configuration>
                            <updatePomFile>true</updatePomFile>
                            <flattenMode>resolveCiFriendliesOnly</flattenMode>
                        </configuration>
                        <executions>
                            <execution>
                                <id>flatten</id>
                                <phase>process-resources</phase>
                                <goals>
                                    <goal>flatten</goal>
                                </goals>
                            </execution>
                            <execution>
                                <id>flatten.clean</id>
                                <phase>clean</phase>
                                <goals>
                                    <goal>clean</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>

                    <plugin>
                        <groupId>org.sonatype.central</groupId>
                        <artifactId>central-publishing-maven-plugin</artifactId>
                        <version>${central.publishing.maven.version}</version>
                        <extensions>true</extensions>
                        <configuration>
                            <publishingServerId>central</publishingServerId>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
</project>


================================================
FILE: spring-cloud-alibaba-examples/integrated-example/config-init/config/datasource-config.yaml
================================================
spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    username: 'root'
    password: 'root'
  main:
    allow-bean-definition-overriding: true
mybatis:
  configuration:
    map-underscore-to-camel-case: true

================================================
FILE: spring-cloud-alibaba-examples/integrated-example/config-init/config/integrated-account.yaml
================================================
spring:
  datasource:
    url: jdbc:mysql://integrated-mysql:3306/integrated_account?useSSL=false&characterEncoding=utf8

================================================
FILE: spring-cloud-alibaba-examples/integrated-example/config-init/config/integrated-consumer.yaml
================================================
spring:
  datasource:
    url: jdbc:mysql://integrated-mysql:3306/integrated_praise?useSSL=false&characterEncoding=utf8
  cloud:
    stream:
      function:
        definition: consumer;
      bindings:
        consumer-in-0:
          destination: PRAISE-TOPIC-01
          content-type: application/json
          group: praise-consumer-group-PRAISE-TOPIC-01
      rocketmq:
        binder:
          name-server: rocketmq:9876
        bindings:
          consumer-in-0:
            consumer:
              pullInterval: 4000
              pullBatchSize: 4


================================================
FILE: spring-cloud-alibaba-examples/integrated-example/config-init/config/integrated-gateway.yaml
================================================
spring:
  cloud:
    gateway:
      routes:
        - id: placeOrder
          uri: lb://integrated-order
          predicates:
            - Path=/order/create
        - id: queryStorage
          uri: lb://integrated-storage
          predicates:
            - Path=/storage/
        - id: queryAccount
          uri: lb://integrated-account
          predicates:
            - Path=/account/
        - id: praiseItemRocketMQ
          uri: lb://integrated-provider
          predicates:
            - Path=/praise/rocketmq
        - id: praiseItemSentinel
          uri: lb://integrated-provider
          predicates:
            - Path=/praise/sentinel
        - id: queryPraise
          uri: lb://integrated-consumer
          predicates:
            - Path=/praise/query

================================================
FILE: spring-cloud-alibaba-examples/integrated-example/config-init/config/integrated-order.yaml
================================================
spring:
  datasource:
    url: jdbc:mysql://integrated-mysql:3306/integrated_order?useSSL=false&characterEncoding=utf8

================================================
FILE: spring-cloud-alibaba-examples/integrated-example/config-init/config/integrated-provider.yaml
================================================
spring:
  cloud:
    stream:
      bindings:
        praise-output:
          destination: PRAISE-TOPIC-01
          content-type: application/json
      rocketmq:
        binder:
          name-server: rocketmq:9876
        bindings:
          praise-output:
            producer:
              group: test

================================================
FILE: spring-cloud-alibaba-examples/integrated-example/config-init/config/integrated-storage.yaml
================================================
spring:
  datasource:
    url: jdbc:mysql://integrated-mysql:3306/integrated_storage?useSSL=false&characterEncoding=utf8

================================================
FILE: spring-cloud-alibaba-examples/integrated-example/config-init/rocketmq/broker.conf
================================================
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
#  Unless required by applicable law or agreed to in writing, software
#  distributed under the License is distributed on an "AS IS" BASIS,
#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#  See the License for the specific language governing permissions and
#  limitations under the License.

brokerIP1=172.20.0.4
brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH


================================================
FILE: spring-cloud-alibaba-examples/integrated-example/config-init/scripts/nacos-config-quick.sh
================================================
#!/bin/sh
echo "Nacos auto config started"
datasourceConfig=$(cat ../config/datasource-config.yaml)
storageConfig=$(cat ../config/integrated-storage.yaml)
accountConfig=$(cat ../config/integrated-account.yaml)
orderConfig=$(cat ../config/integrated-order.yaml)
gatewayConfig=$(cat ../config/integrated-gateway.yaml)
providerConfig=$(cat ../config/integrated-provider.yaml)
consumerConfig=$(cat ../config/integrated-consumer.yaml)
groupId="integrated-example"
curl -X POST "nacos-server:8848/nacos/v1/cs/configs" -d "dataId=datasource-config.yaml&group=${groupId}&content=${datasourceConfig}"
curl -X POST "nacos-server:8848/nacos/v1/cs/configs" -d "dataId=integrated-storage.yaml&group=${groupId}&content=${storageConfig}"
curl -X POST "nacos-server:8848/nacos/v1/cs/configs" -d "dataId=integrated-account.yaml&group=${groupId}&content=${accountConfig}"
curl -X POST "nacos-server:8848/nacos/v1/cs/configs" -d "dataId=integrated-order.yaml&group=${groupId}&content=${orderConfig}"
curl -X POST "nacos-server:8848/nacos/v1/cs/configs" -d "dataId=integrated-gateway.yaml&group=${groupId}&content=${gatewayConfig}"
curl -X POST "nacos-server:8848/nacos/v1/cs/configs" -d "dataId=integrated-provider.yaml&group=${groupId}&content=${providerConfig}"
curl -X POST "nacos-server:8848/nacos/v1/cs/configs" -d "dataId=integrated-consumer.yaml&group=${groupId}&content=${consumerConfig}"
echo "Nacos config pushed successfully finished"

================================================
FILE: spring-cloud-alibaba-examples/integrated-example/config-init/sql/init.sql
================================================
-- Storage库存微服务的数据库业务初始化
DROP DATABASE IF EXISTS integrated_storage;
CREATE DATABASE integrated_storage;
USE integrated_storage;
CREATE TABLE `storage`
(
    `id`             bigint(11) unsigned NOT NULL AUTO_INCREMENT,
    `commodity_code` varchar(255) DEFAULT NULL,
    `count`          int(11)      DEFAULT '0',
    `create_time`    datetime     DEFAULT NULL,
    `update_time`    datetime     DEFAULT NULL,
    PRIMARY KEY (`id`),
    UNIQUE KEY `commodity_code` (`commodity_code`)
) ENGINE = InnoDB
  AUTO_INCREMENT = 2
  DEFAULT CHARSET = utf8;
INSERT INTO `storage`
VALUES ('1', '1', '100', '2022-08-07 22:48:29', '2022-08-14 13:49:05');

-- Account账户微服务的数据库业务初始化
DROP DATABASE IF EXISTS integrated_account;
CREATE DATABASE integrated_account;
USE integrated_account;
CREATE TABLE `account`
(
    `id`          bigint(11) unsigned NOT NULL AUTO_INCREMENT,
    `user_id`     varchar(255) DEFAULT NULL,
    `money`       int(11)      DEFAULT '0',
    `create_time` datetime     DEFAULT NULL,
    `update_time` datetime     DEFAULT NULL,
    PRIMARY KEY (`id`)
) ENGINE = 
Download .txt
gitextract_av4r5gmy/

├── .circleci/
│   └── config.yml
├── .codecov.yml
├── .editorconfig
├── .github/
│   ├── ISSUE_TEMPLATE/
│   │   ├── bug_report.md
│   │   ├── config.yml
│   │   ├── feature_request.md
│   │   └── question.md
│   ├── PULL_REQUEST_TEMPLATE.md
│   ├── dependbot.yml
│   ├── labels.yml
│   └── workflows/
│       ├── github-packages-release.yml
│       ├── integration-test.yml
│       ├── issue-command.yml
│       ├── md-link-check.yml
│       └── stale.yml
├── .gitignore
├── .licenscheckconfig.yaml
├── .mvn/
│   ├── jvm.config
│   └── wrapper/
│       ├── maven-wrapper.jar
│       └── maven-wrapper.properties
├── CODE_OF_CONDUCT.md
├── LICENSE
├── README-zh.md
├── README.md
├── Roadmap-zh.md
├── Roadmap.md
├── eclipse/
│   ├── checkstyle-suppressions.xml
│   ├── eclipse-code-formatter.xml
│   ├── org.eclipse.jdt.core.prefs
│   └── org.eclipse.jdt.ui.prefs
├── mvnw
├── mvnw.cmd
├── pom.xml
├── spring-cloud-alibaba-coverage/
│   └── pom.xml
├── spring-cloud-alibaba-dependencies/
│   └── pom.xml
├── spring-cloud-alibaba-examples/
│   ├── integrated-example/
│   │   ├── config-init/
│   │   │   ├── config/
│   │   │   │   ├── datasource-config.yaml
│   │   │   │   ├── integrated-account.yaml
│   │   │   │   ├── integrated-consumer.yaml
│   │   │   │   ├── integrated-gateway.yaml
│   │   │   │   ├── integrated-order.yaml
│   │   │   │   ├── integrated-provider.yaml
│   │   │   │   └── integrated-storage.yaml
│   │   │   ├── rocketmq/
│   │   │   │   └── broker.conf
│   │   │   ├── scripts/
│   │   │   │   └── nacos-config-quick.sh
│   │   │   └── sql/
│   │   │       └── init.sql
│   │   ├── docker-compose/
│   │   │   ├── docker-compose-env.yml
│   │   │   └── docker-compose-service.yml
│   │   ├── docs/
│   │   │   ├── en/
│   │   │   │   ├── docker-compose-deployment.md
│   │   │   │   ├── kubernetes-deployment.md
│   │   │   │   ├── local-deployment.md
│   │   │   │   └── readme.md
│   │   │   └── zh/
│   │   │       ├── docker-compose-deploy-zh.md
│   │   │       ├── kubernetes-deployment-zh.md
│   │   │       ├── local-deployment-zh.md
│   │   │       └── readme-zh.md
│   │   ├── helm-chart/
│   │   │   ├── Chart.yaml
│   │   │   ├── templates/
│   │   │   │   ├── integrated-account.yaml
│   │   │   │   ├── integrated-frontend.yaml
│   │   │   │   ├── integrated-gateway.yaml
│   │   │   │   ├── integrated-mysql.yaml
│   │   │   │   ├── integrated-nacos-mysql.yaml
│   │   │   │   ├── integrated-nacos-stand.yaml
│   │   │   │   ├── integrated-order.yaml
│   │   │   │   ├── integrated-praise-consumer.yaml
│   │   │   │   ├── integrated-praise-provider.yaml
│   │   │   │   ├── integrated-rocketmq.yaml
│   │   │   │   ├── integrated-seata.yaml
│   │   │   │   └── integrated-storage.yaml
│   │   │   └── values.yaml
│   │   ├── integrated-account/
│   │   │   ├── Dockerfile
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── integration/
│   │   │           │                   └── account/
│   │   │           │                       ├── AccountServiceApplication.java
│   │   │           │                       ├── controller/
│   │   │           │                       │   └── AccountController.java
│   │   │           │                       ├── dto/
│   │   │           │                       │   └── AccountDTO.java
│   │   │           │                       ├── mapper/
│   │   │           │                       │   └── AccountMapper.java
│   │   │           │                       └── service/
│   │   │           │                           ├── AccountService.java
│   │   │           │                           └── impl/
│   │   │           │                               └── AccountServiceImpl.java
│   │   │           └── resources/
│   │   │               └── application.yaml
│   │   ├── integrated-common/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── alibaba/
│   │   │                       └── cloud/
│   │   │                           └── integration/
│   │   │                               └── common/
│   │   │                                   ├── BusinessException.java
│   │   │                                   ├── IResult.java
│   │   │                                   ├── Result.java
│   │   │                                   └── ResultEnum.java
│   │   ├── integrated-frontend/
│   │   │   ├── Dockerfile
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── integration/
│   │   │           │                   └── frontend/
│   │   │           │                       ├── FrontendApplication.java
│   │   │           │                       └── controller/
│   │   │           │                           └── IntegrationController.java
│   │   │           └── resources/
│   │   │               └── templates/
│   │   │                   ├── order.html
│   │   │                   ├── rocketmq.html
│   │   │                   └── sentinel.html
│   │   ├── integrated-gateway/
│   │   │   ├── Dockerfile
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── integration/
│   │   │           │                   └── gateway/
│   │   │           │                       ├── GatewayApplication.java
│   │   │           │                       └── config/
│   │   │           │                           └── GatewayConfig.java
│   │   │           └── resources/
│   │   │               └── application.yaml
│   │   ├── integrated-order/
│   │   │   ├── Dockerfile
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── integration/
│   │   │           │                   └── order/
│   │   │           │                       ├── OrderServiceApplication.java
│   │   │           │                       ├── controller/
│   │   │           │                       │   └── OrderController.java
│   │   │           │                       ├── entity/
│   │   │           │                       │   └── Order.java
│   │   │           │                       ├── feign/
│   │   │           │                       │   ├── AccountServiceFeignClient.java
│   │   │           │                       │   ├── StorageServiceFeignClient.java
│   │   │           │                       │   └── dto/
│   │   │           │                       │       ├── AccountDTO.java
│   │   │           │                       │       └── StorageDTO.java
│   │   │           │                       ├── mapper/
│   │   │           │                       │   └── OrderMapper.java
│   │   │           │                       └── service/
│   │   │           │                           ├── OrderService.java
│   │   │           │                           └── impl/
│   │   │           │                               └── OrderServiceImpl.java
│   │   │           └── resources/
│   │   │               └── application.yaml
│   │   ├── integrated-praise-consumer/
│   │   │   ├── Dockerfile
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── integration/
│   │   │           │                   └── consumer/
│   │   │           │                       ├── PraiseConsumerApplication.java
│   │   │           │                       ├── controller/
│   │   │           │                       │   └── PraiseController.java
│   │   │           │                       ├── listener/
│   │   │           │                       │   └── ListenerAutoConfiguration.java
│   │   │           │                       ├── mapper/
│   │   │           │                       │   └── PraiseMapper.java
│   │   │           │                       ├── message/
│   │   │           │                       │   └── PraiseMessage.java
│   │   │           │                       └── service/
│   │   │           │                           ├── PraiseService.java
│   │   │           │                           └── impl/
│   │   │           │                               └── PraiseServiceImpl.java
│   │   │           └── resources/
│   │   │               └── application.yaml
│   │   ├── integrated-praise-provider/
│   │   │   ├── Dockerfile
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── integration/
│   │   │           │                   └── provider/
│   │   │           │                       ├── PraiseProviderApplication.java
│   │   │           │                       ├── controller/
│   │   │           │                       │   └── PraiseController.java
│   │   │           │                       └── message/
│   │   │           │                           └── PraiseMessage.java
│   │   │           └── resources/
│   │   │               └── application.yaml
│   │   └── integrated-storage/
│   │       ├── Dockerfile
│   │       ├── pom.xml
│   │       └── src/
│   │           └── main/
│   │               ├── java/
│   │               │   └── com/
│   │               │       └── alibaba/
│   │               │           └── cloud/
│   │               │               └── integration/
│   │               │                   └── storage/
│   │               │                       ├── StorageServiceApplication.java
│   │               │                       ├── controller/
│   │               │                       │   └── StorageController.java
│   │               │                       ├── dto/
│   │               │                       │   └── StorageDTO.java
│   │               │                       ├── mapper/
│   │               │                       │   └── StorageMapper.java
│   │               │                       └── service/
│   │               │                           ├── StorageService.java
│   │               │                           └── impl/
│   │               │                               └── StorageServiceImpl.java
│   │               └── resources/
│   │                   └── application.yaml
│   ├── nacos-example/
│   │   ├── nacos-config-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── NacosConfigApplication.java
│   │   │           │                   ├── example/
│   │   │           │                   │   ├── BeanAutoRefreshConfigExample.java
│   │   │           │                   │   ├── ConfigListenerExample.java
│   │   │           │                   │   ├── DockingInterfaceExample.java
│   │   │           │                   │   └── ValueAnnotationExample.java
│   │   │           │                   └── model/
│   │   │           │                       └── NacosConfigInfo.java
│   │   │           └── resources/
│   │   │               └── application.yaml
│   │   ├── nacos-discovery-example/
│   │   │   ├── nacos-discovery-consumer-example/
│   │   │   │   ├── pom.xml
│   │   │   │   ├── scripts/
│   │   │   │   │   ├── error.sh
│   │   │   │   │   ├── feign-defaultmethod-error.sh
│   │   │   │   │   ├── feign-error.sh
│   │   │   │   │   ├── index.sh
│   │   │   │   │   └── sleep.sh
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   ├── ConsumerApplication.java
│   │   │   │           │                   ├── TestController.java
│   │   │   │           │                   ├── configuration/
│   │   │   │           │                   │   ├── FeignConfiguration.java
│   │   │   │           │                   │   ├── RestTemplateConfiguration.java
│   │   │   │           │                   │   └── UrlCleaner.java
│   │   │   │           │                   └── feign/
│   │   │   │           │                       ├── EchoClient.java
│   │   │   │           │                       └── EchoClientFallback.java
│   │   │   │           └── resources/
│   │   │   │               ├── application.properties
│   │   │   │               ├── degraderule.json
│   │   │   │               └── flowrule.json
│   │   │   ├── nacos-discovery-consumer-sclb-example/
│   │   │   │   ├── pom.xml
│   │   │   │   ├── scripts/
│   │   │   │   │   ├── error.sh
│   │   │   │   │   ├── feign-defaultmethod-error.sh
│   │   │   │   │   ├── feign-error.sh
│   │   │   │   │   ├── index.sh
│   │   │   │   │   ├── resttemplate.sh
│   │   │   │   │   └── sleep.sh
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   ├── ConsumerSCLBApplication.java
│   │   │   │           │                   ├── RandomLoadBalancer.java
│   │   │   │           │                   ├── TestController.java
│   │   │   │           │                   ├── config/
│   │   │   │           │                   │   ├── FeignConfiguration.java
│   │   │   │           │                   │   ├── MyLoadBalancerConfiguration.java
│   │   │   │           │                   │   ├── MySCLBConfiguration.java
│   │   │   │           │                   │   ├── RestTemplateConfiguration.java
│   │   │   │           │                   │   └── UrlCleaner.java
│   │   │   │           │                   └── feign/
│   │   │   │           │                       ├── EchoClient.java
│   │   │   │           │                       └── EchoClientFallback.java
│   │   │   │           └── resources/
│   │   │   │               ├── application.properties
│   │   │   │               ├── degraderule.json
│   │   │   │               └── flowrule.json
│   │   │   ├── nacos-discovery-provider-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   ├── EchoController.java
│   │   │   │           │                   └── ProviderApplication.java
│   │   │   │           └── resources/
│   │   │   │               └── application.properties
│   │   │   ├── nacos-discovery-spring-cloud-config-client-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   ├── GetConfigController.java
│   │   │   │           │                   └── SpringCloudConfigClientApplication.java
│   │   │   │           └── resources/
│   │   │   │               └── application.yml
│   │   │   ├── nacos-discovery-spring-cloud-config-server-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   └── SpringCloudConfigServerApplication.java
│   │   │   │           └── resources/
│   │   │   │               └── application.yml
│   │   │   ├── nacos-reactivediscovery-consumer-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   ├── ConsumerReactiveApplication.java
│   │   │   │           │                   ├── MyController.java
│   │   │   │           │                   └── WebClientConfiguration.java
│   │   │   │           └── resources/
│   │   │   │               └── application.properties
│   │   │   └── pom.xml
│   │   ├── nacos-gateway-example/
│   │   │   ├── nacos-gateway-discovery-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   └── GatewayApplication.java
│   │   │   │           └── resources/
│   │   │   │               └── application.properties
│   │   │   ├── nacos-gateway-provider-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   ├── EchoController.java
│   │   │   │           │                   └── ProviderApplication.java
│   │   │   │           └── resources/
│   │   │   │               └── application.properties
│   │   │   └── pom.xml
│   │   ├── readme-zh.md
│   │   └── readme.md
│   ├── pom.xml
│   ├── rocketmq-example/
│   │   ├── readme-zh.md
│   │   ├── readme.md
│   │   ├── rocketmq-broadcast-example/
│   │   │   ├── rocketmq-broadcast-consumer1-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   └── broadcast/
│   │   │   │           │                       └── RocketMQBroadcastConsumer1Application.java
│   │   │   │           └── resources/
│   │   │   │               └── application.yml
│   │   │   ├── rocketmq-broadcast-consumer2-example/
│   │   │   │   ├── pom.xml
│   │   │   │   └── src/
│   │   │   │       └── main/
│   │   │   │           ├── java/
│   │   │   │           │   └── com/
│   │   │   │           │       └── alibaba/
│   │   │   │           │           └── cloud/
│   │   │   │           │               └── examples/
│   │   │   │           │                   └── broadcast/
│   │   │   │           │                       └── RocketMQBroadcastConsumer2Application.java
│   │   │   │           └── resources/
│   │   │   │               └── application.yml
│   │   │   └── rocketmq-broadcast-producer-example/
│   │   │       ├── pom.xml
│   │   │       └── src/
│   │   │           └── main/
│   │   │               ├── java/
│   │   │               │   └── com/
│   │   │               │       └── alibaba/
│   │   │               │           └── cloud/
│   │   │               │               └── examples/
│   │   │               │                   └── broadcast/
│   │   │               │                       └── RocketMQBroadcastProducerApplication.java
│   │   │               └── resources/
│   │   │                   └── application.yml
│   │   ├── rocketmq-comprehensive-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── RocketMQComprehensiveApplication.java
│   │   │           │                   └── User.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── rocketmq-delay-consume-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   └── delay/
│   │   │           │                       └── RocketMQDelayConsumeApplication.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── rocketmq-example-common/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   └── common/
│   │   │           │                       └── SimpleMsg.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── rocketmq-orderly-consume-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   └── orderly/
│   │   │           │                       ├── OrderlyMessageQueueSelector.java
│   │   │           │                       └── RocketMQOrderlyConsumeApplication.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── rocketmq-pollable-consume-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   └── pollable/
│   │   │           │                       └── RocketMQPollableConsumeApplication.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── rocketmq-sql-consume-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   └── sql/
│   │   │           │                       └── RocketMQSqlConsumeApplication.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   └── rocketmq-tx-example/
│   │       ├── pom.xml
│   │       └── src/
│   │           └── main/
│   │               ├── java/
│   │               │   └── com/
│   │               │       └── alibaba/
│   │               │           └── cloud/
│   │               │               └── examples/
│   │               │                   └── tx/
│   │               │                       ├── RocketMQTxApplication.java
│   │               │                       └── TransactionListenerImpl.java
│   │               └── resources/
│   │                   └── application.yml
│   ├── seata-example/
│   │   ├── account-service/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── AccountApplication.java
│   │   │           │                   ├── AccountController.java
│   │   │           │                   └── DatabaseConfiguration.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── all.sql
│   │   ├── business-service/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── BusinessApplication.java
│   │   │           │                   ├── HomeController.java
│   │   │           │                   └── Order.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── order-service/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── DatabaseConfiguration.java
│   │   │           │                   ├── Order.java
│   │   │           │                   ├── OrderApplication.java
│   │   │           │                   └── OrderController.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   ├── readme-zh.md
│   │   ├── readme.md
│   │   └── storage-service/
│   │       ├── pom.xml
│   │       └── src/
│   │           └── main/
│   │               ├── java/
│   │               │   └── com/
│   │               │       └── alibaba/
│   │               │           └── cloud/
│   │               │               └── examples/
│   │               │                   ├── StorageApplication.java
│   │               │                   ├── config/
│   │               │                   │   └── DatabaseConfiguration.java
│   │               │                   └── controller/
│   │               │                       └── StorageController.java
│   │               └── resources/
│   │                   └── application.yml
│   ├── sentinel-example/
│   │   ├── README-zh.md
│   │   ├── README.md
│   │   ├── sentinel-circuitbreaker-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── FeignCircuitBreakerApplication.java
│   │   │           │                   ├── controller/
│   │   │           │                   │   ├── ApiController.java
│   │   │           │                   │   └── TestController.java
│   │   │           │                   └── feign/
│   │   │           │                       ├── OrderClient.java
│   │   │           │                       ├── OrderClientFallBack.java
│   │   │           │                       ├── UserClient.java
│   │   │           │                       └── UserClientFallBack.java
│   │   │           └── resources/
│   │   │               ├── application.yml
│   │   │               └── sentinel-circuitbreaker-rules.yml
│   │   ├── sentinel-core-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── ExceptionUtil.java
│   │   │           │                   ├── JsonFlowRuleListConverter.java
│   │   │           │                   ├── SentinelCoreApplication.java
│   │   │           │                   ├── TestController.java
│   │   │           │                   └── WebMvcConfiguration.java
│   │   │           └── resources/
│   │   │               ├── application.yml
│   │   │               ├── authority.json
│   │   │               ├── degraderule.json
│   │   │               ├── flowrule.json
│   │   │               ├── flowrule.xml
│   │   │               ├── param-flow.json
│   │   │               ├── system.json
│   │   │               └── templates/
│   │   │                   └── errorPage.html
│   │   ├── sentinel-openfeign-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── OpenFeignApplication.java
│   │   │           │                   ├── configuration/
│   │   │           │                   │   ├── EchoServiceFallbackFactory.java
│   │   │           │                   │   ├── HttpbinClient.java
│   │   │           │                   │   ├── HttpbinClientFallback.java
│   │   │           │                   │   └── SentinelRulesConfiguration.java
│   │   │           │                   └── controller/
│   │   │           │                       └── TestController.java
│   │   │           └── resources/
│   │   │               ├── application.yml
│   │   │               ├── degraderule.json
│   │   │               └── flowrule.json
│   │   ├── sentinel-resttemplate-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       ├── main/
│   │   │       │   ├── java/
│   │   │       │   │   └── com/
│   │   │       │   │       └── alibaba/
│   │   │       │   │           └── cloud/
│   │   │       │   │               └── examples/
│   │   │       │   │                   ├── RestTemplateApplication.java
│   │   │       │   │                   ├── configuration/
│   │   │       │   │                   │   ├── RestTemplateConfiguration.java
│   │   │       │   │                   │   └── SentinelRulesConfiguration.java
│   │   │       │   │                   └── controller/
│   │   │       │   │                       └── TestController.java
│   │   │       │   └── resources/
│   │   │       │       ├── application.yml
│   │   │       │       ├── degraderule.json
│   │   │       │       └── flowrule.json
│   │   │       └── test/
│   │   │           └── java/
│   │   │               └── com/
│   │   │                   └── alibaba/
│   │   │                       └── cloud/
│   │   │                           └── examples/
│   │   │                               └── RestTemplateApplicationTest.java
│   │   ├── sentinel-spring-cloud-gateway-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── examples/
│   │   │           │                   ├── MySCGConfiguration.java
│   │   │           │                   ├── RulesWebFluxController.java
│   │   │           │                   └── SentinelSpringCloudGatewayApplication.java
│   │   │           └── resources/
│   │   │               ├── api.json
│   │   │               ├── application.yaml
│   │   │               └── gateway.json
│   │   └── sentinel-webflux-example/
│   │       ├── pom.xml
│   │       └── src/
│   │           └── main/
│   │               ├── java/
│   │               │   └── com/
│   │               │       └── alibaba/
│   │               │           └── cloud/
│   │               │               └── examples/
│   │               │                   ├── MyConfiguration.java
│   │               │                   ├── SentinelWebFluxApplication.java
│   │               │                   └── SentinelWebFluxController.java
│   │               └── resources/
│   │                   ├── application.yml
│   │                   └── flowrule.json
│   ├── spring-cloud-alibaba-sidecar-examples/
│   │   ├── node-service.js
│   │   ├── readme-zh.md
│   │   ├── readme.md
│   │   ├── spring-cloud-alibaba-sidecar-consul-example/
│   │   │   ├── pom.xml
│   │   │   └── src/
│   │   │       └── main/
│   │   │           ├── java/
│   │   │           │   └── com/
│   │   │           │       └── alibaba/
│   │   │           │           └── cloud/
│   │   │           │               └── sidecar/
│   │   │           │                   └── DemoApplication.java
│   │   │           └── resources/
│   │   │               └── application.yml
│   │   └── spring-cloud-alibaba-sidecar-nacos-example/
│   │       ├── pom.xml
│   │       └── src/
│   │           └── main/
│   │               ├── java/
│   │               │   └── com/
│   │               │       └── alibaba/
│   │               │           └── cloud/
│   │               │               └── sidecar/
│   │               │                   └── DemoApplication.java
│   │               └── resources/
│   │                   └── application.yml
│   ├── spring-cloud-bus-rocketmq-example/
│   │   ├── pom.xml
│   │   └── src/
│   │       └── main/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── alibaba/
│   │           │           └── cloud/
│   │           │               └── examples/
│   │           │                   └── rocketmq/
│   │           │                       ├── RocketMQBusApplication.java
│   │           │                       ├── User.java
│   │           │                       └── UserRemoteApplicationEvent.java
│   │           └── resources/
│   │               └── application.properties
│   └── spring-cloud-scheduling-example/
│       ├── README-en.md
│       ├── README.md
│       ├── pom.xml
│       └── src/
│           └── main/
│               ├── java/
│               │   └── com/
│               │       └── alibaba/
│               │           └── cloud/
│               │               └── examples/
│               │                   └── schedule/
│               │                       ├── ScheduleApplication.java
│               │                       └── job/
│               │                           └── SimpleJob.java
│               └── resources/
│                   ├── application-schedulerx.yaml
│                   ├── application-shedlock.yaml
│                   └── application.yaml
├── spring-cloud-alibaba-starters/
│   ├── pom.xml
│   ├── spring-alibaba-nacos-config/
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── nacos/
│   │       │   │                   ├── NacosConfigAutoConfiguration.java
│   │       │   │                   ├── NacosConfigEnabledCondition.java
│   │       │   │                   ├── NacosConfigManager.java
│   │       │   │                   ├── NacosConfigProperties.java
│   │       │   │                   ├── NacosPropertiesPrefixProvider.java
│   │       │   │                   ├── NacosPropertiesPrefixer.java
│   │       │   │                   ├── NacosPropertySourceRepository.java
│   │       │   │                   ├── annotation/
│   │       │   │                   │   ├── AbstractConfigChangeListener.java
│   │       │   │                   │   ├── CustomDateDeserializer.java
│   │       │   │                   │   ├── JsonUtils.java
│   │       │   │                   │   ├── NacosAnnotationProcessor.java
│   │       │   │                   │   ├── NacosConfig.java
│   │       │   │                   │   ├── NacosConfigKeysListener.java
│   │       │   │                   │   ├── NacosConfigListener.java
│   │       │   │                   │   ├── NacosConfigRefreshableListener.java
│   │       │   │                   │   ├── NacosPropertiesKeyListener.java
│   │       │   │                   │   ├── ObjectUtils.java
│   │       │   │                   │   ├── PropertiesUtils.java
│   │       │   │                   │   ├── ScaYamlConfigChangeParser.java
│   │       │   │                   │   └── TargetRefreshable.java
│   │       │   │                   ├── client/
│   │       │   │                   │   ├── NacosPropertySource.java
│   │       │   │                   │   └── NacosPropertySourceBuilder.java
│   │       │   │                   ├── configdata/
│   │       │   │                   │   ├── ConfigPreference.java
│   │       │   │                   │   ├── NacosConfigDataLoadProperties.java
│   │       │   │                   │   ├── NacosConfigDataLoader.java
│   │       │   │                   │   ├── NacosConfigDataLocationResolver.java
│   │       │   │                   │   └── NacosConfigDataResource.java
│   │       │   │                   ├── constants/
│   │       │   │                   │   └── Constants.java
│   │       │   │                   ├── diagnostics/
│   │       │   │                   │   └── analyzer/
│   │       │   │                   │       ├── NacosConnectionFailureAnalyzer.java
│   │       │   │                   │       └── NacosConnectionFailureException.java
│   │       │   │                   ├── endpoint/
│   │       │   │                   │   ├── NacosConfigEndpoint.java
│   │       │   │                   │   ├── NacosConfigEndpointAutoConfiguration.java
│   │       │   │                   │   └── NacosConfigHealthIndicator.java
│   │       │   │                   ├── parser/
│   │       │   │                   │   ├── AbstractPropertySourceLoader.java
│   │       │   │                   │   ├── NacosByteArrayResource.java
│   │       │   │                   │   ├── NacosDataParserHandler.java
│   │       │   │                   │   ├── NacosJsonPropertySourceLoader.java
│   │       │   │                   │   └── NacosXmlPropertySourceLoader.java
│   │       │   │                   ├── proxy/
│   │       │   │                   │   └── druid/
│   │       │   │                   │       ├── NacosDruidConfigFilter.java
│   │       │   │                   │       └── NacosDruidFilterConfiguration.java
│   │       │   │                   ├── refresh/
│   │       │   │                   │   ├── NacosConfigRefreshEvent.java
│   │       │   │                   │   ├── NacosContextRefresher.java
│   │       │   │                   │   ├── NacosPropertySourceRefreshListener.java
│   │       │   │                   │   ├── NacosRefreshHistory.java
│   │       │   │                   │   └── NacosSnapshotConfigManager.java
│   │       │   │                   └── utils/
│   │       │   │                       ├── NacosConfigUtils.java
│   │       │   │                       ├── PropertySourcesUtils.java
│   │       │   │                       └── StringUtils.java
│   │       │   └── resources/
│   │       │       └── META-INF/
│   │       │           ├── additional-spring-configuration-metadata.json
│   │       │           ├── native-image/
│   │       │           │   ├── reflect-config.json
│   │       │           │   └── resource-config.json
│   │       │           ├── services/
│   │       │           │   └── com.alibaba.nacos.api.config.listener.ConfigChangeParser
│   │       │           ├── spring/
│   │       │           │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │       │           └── spring.factories
│   │       └── test/
│   │           └── java/
│   │               ├── com/
│   │               │   └── alibaba/
│   │               │       └── cloud/
│   │               │           └── nacos/
│   │               │               └── annotation/
│   │               │                   └── NacosPropertiesKeyListenerTest.java
│   │               └── com.alibaba.cloud.nacos/
│   │                   ├── NacosConfigPropertiesTest.java
│   │                   ├── configdata/
│   │                   │   └── NacosConfigDataLocationResolverTest.java
│   │                   └── endpoint/
│   │                       └── NacosConfigEndpointTests.java
│   ├── spring-cloud-alibaba-commons/
│   │   ├── pom.xml
│   │   └── src/
│   │       └── main/
│   │           └── java/
│   │               └── com/
│   │                   └── alibaba/
│   │                       └── cloud/
│   │                           └── commons/
│   │                               ├── context/
│   │                               │   └── support/
│   │                               │       └── PropertySourcesUtils.java
│   │                               ├── io/
│   │                               │   ├── Charsets.java
│   │                               │   ├── FileUtils.java
│   │                               │   ├── IOUtils.java
│   │                               │   └── StringBuilderWriter.java
│   │                               └── lang/
│   │                                   └── StringUtils.java
│   ├── spring-cloud-alibaba-sentinel-datasource/
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── sentinel/
│   │       │   │                   └── datasource/
│   │       │   │                       ├── RuleType.java
│   │       │   │                       ├── config/
│   │       │   │                       │   ├── AbstractDataSourceProperties.java
│   │       │   │                       │   ├── ApolloDataSourceProperties.java
│   │       │   │                       │   ├── ConsulDataSourceProperties.java
│   │       │   │                       │   ├── DataSourcePropertiesConfiguration.java
│   │       │   │                       │   ├── FileDataSourceProperties.java
│   │       │   │                       │   ├── NacosDataSourceProperties.java
│   │       │   │                       │   ├── RedisDataSourceProperties.java
│   │       │   │                       │   └── ZookeeperDataSourceProperties.java
│   │       │   │                       ├── converter/
│   │       │   │                       │   ├── JsonConverter.java
│   │       │   │                       │   ├── SentinelConverter.java
│   │       │   │                       │   └── XmlConverter.java
│   │       │   │                       └── factorybean/
│   │       │   │                           ├── ApolloDataSourceFactoryBean.java
│   │       │   │                           ├── ConsulDataSourceFactoryBean.java
│   │       │   │                           ├── FileRefreshableDataSourceFactoryBean.java
│   │       │   │                           ├── NacosDataSourceFactoryBean.java
│   │       │   │                           ├── RedisDataSourceFactoryBean.java
│   │       │   │                           └── ZookeeperDataSourceFactoryBean.java
│   │       │   └── resources/
│   │       │       └── META-INF/
│   │       │           └── sentinel-datasource.properties
│   │       └── test/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── alibaba/
│   │           │           └── cloud/
│   │           │               └── sentinel/
│   │           │                   └── datasource/
│   │           │                       ├── ApolloDataSourceFactoryBeanTests.java
│   │           │                       ├── DataSourcePropertiesConfigurationTests.java
│   │           │                       ├── DataSourcePropertiesTests.java
│   │           │                       ├── FileRefreshableDataSourceFactoryBeanTests.java
│   │           │                       ├── NacosDataSourceFactoryBeanTests.java
│   │           │                       ├── NacosDataSourcePropertiesTests.java
│   │           │                       ├── RuleTypeTests.java
│   │           │                       ├── SentinelConverterTests.java
│   │           │                       └── ZookeeperDataSourceFactoryBeanTests.java
│   │           └── resources/
│   │               ├── flowrule-errorcontent.json
│   │               ├── flowrule-errorformat.json
│   │               ├── flowrule.json
│   │               └── flowrule.xml
│   ├── spring-cloud-alibaba-sentinel-gateway/
│   │   ├── README.md
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── sentinel/
│   │       │   │                   └── gateway/
│   │       │   │                       ├── ConfigConstants.java
│   │       │   │                       ├── FallbackProperties.java
│   │       │   │                       ├── GatewayEnvironmentPostProcessor.java
│   │       │   │                       ├── SentinelGatewayAutoConfiguration.java
│   │       │   │                       └── scg/
│   │       │   │                           ├── SentinelGatewayProperties.java
│   │       │   │                           └── SentinelSCGAutoConfiguration.java
│   │       │   └── resources/
│   │       │       └── META-INF/
│   │       │           ├── spring/
│   │       │           │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │       │           └── spring.factories
│   │       └── test/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── alibaba/
│   │           │           └── cloud/
│   │           │               └── sentinel/
│   │           │                   └── gateway/
│   │           │                       ├── ConfigConstantsTest.java
│   │           │                       ├── FallbackPropertiesTest.java
│   │           │                       ├── GatewayEnvironmentPostProcessorTest.java
│   │           │                       ├── SentinelGatewayAutoConfigurationTest.java
│   │           │                       └── scg/
│   │           │                           ├── SentinelGatewayPropertiesTest.java
│   │           │                           └── SentinelSCGAutoConfigurationTest.java
│   │           └── resources/
│   │               ├── apidefinition.json
│   │               ├── apidefinition.xml
│   │               ├── gatewayflowrule.json
│   │               └── gatewayflowrule.xml
│   ├── spring-cloud-circuitbreaker-sentinel/
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── circuitbreaker/
│   │       │   │                   └── sentinel/
│   │       │   │                       ├── ReactiveSentinelCircuitBreaker.java
│   │       │   │                       ├── ReactiveSentinelCircuitBreakerAutoConfiguration.java
│   │       │   │                       ├── ReactiveSentinelCircuitBreakerFactory.java
│   │       │   │                       ├── SentinelCircuitBreaker.java
│   │       │   │                       ├── SentinelCircuitBreakerAutoConfiguration.java
│   │       │   │                       ├── SentinelCircuitBreakerFactory.java
│   │       │   │                       ├── SentinelConfigBuilder.java
│   │       │   │                       └── feign/
│   │       │   │                           ├── CircuitBreakerRuleChangeListener.java
│   │       │   │                           ├── FeignClientCircuitNameResolver.java
│   │       │   │                           ├── SentinelFeignClientAutoConfiguration.java
│   │       │   │                           └── SentinelFeignClientProperties.java
│   │       │   └── resources/
│   │       │       └── META-INF/
│   │       │           ├── additional-spring-configuration-metadata.json
│   │       │           └── spring/
│   │       │               └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │       └── test/
│   │           └── java/
│   │               └── com/
│   │                   └── alibaba/
│   │                       └── cloud/
│   │                           └── circuitbreaker/
│   │                               └── sentinel/
│   │                                   ├── ReactiveSentinelCircuitBreakerIntegrationTest.java
│   │                                   ├── ReactiveSentinelCircuitBreakerTest.java
│   │                                   ├── SentinelCircuitBreakerIntegrationTest.java
│   │                                   ├── SentinelCircuitBreakerTest.java
│   │                                   └── feign/
│   │                                       └── FeignClientCircuitBreakerRuleIntegrationTest.java
│   ├── spring-cloud-starter-alibaba-nacos-config/
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── nacos/
│   │       │   │                   ├── NacosConfigSpringCloudAutoConfiguration.java
│   │       │   │                   ├── SpringCloudNacosPropertiesPrefixProvider.java
│   │       │   │                   ├── client/
│   │       │   │                   │   └── NacosPropertySourceLocator.java
│   │       │   │                   ├── configdata/
│   │       │   │                   │   ├── NacosConfigDataMissingEnvironmentPostProcessor.java
│   │       │   │                   │   └── NacosConfigRefreshEventListener.java
│   │       │   │                   └── refresh/
│   │       │   │                       ├── RefreshBehavior.java
│   │       │   │                       ├── SmartConfigurationPropertiesRebinder.java
│   │       │   │                       └── condition/
│   │       │   │                           ├── ConditionalOnNonDefaultBehavior.java
│   │       │   │                           └── NonDefaultBehaviorCondition.java
│   │       │   └── resources/
│   │       │       └── META-INF/
│   │       │           ├── additional-spring-configuration-metadata.json
│   │       │           ├── services/
│   │       │           │   └── com.alibaba.cloud.nacos.NacosPropertiesPrefixProvider
│   │       │           ├── spring/
│   │       │           │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │       │           └── spring.factories
│   │       └── test/
│   │           └── java/
│   │               └── com/
│   │                   └── alibaba/
│   │                       └── cloud/
│   │                           └── nacos/
│   │                               ├── SmartConfigurationPropertiesRebinderIntegrationTest.java
│   │                               └── configdata/
│   │                                   └── NacosConfigDataMissingEnvironmentPostProcessorTest.java
│   ├── spring-cloud-starter-alibaba-nacos-discovery/
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── nacos/
│   │       │   │                   ├── ConditionalOnNacosDiscoveryEnabled.java
│   │       │   │                   ├── NacosDiscoveryProperties.java
│   │       │   │                   ├── NacosServiceAutoConfiguration.java
│   │       │   │                   ├── NacosServiceInstance.java
│   │       │   │                   ├── NacosServiceManager.java
│   │       │   │                   ├── balancer/
│   │       │   │                   │   └── NacosBalancer.java
│   │       │   │                   ├── discovery/
│   │       │   │                   │   ├── NacosDiscoveryAutoConfiguration.java
│   │       │   │                   │   ├── NacosDiscoveryClient.java
│   │       │   │                   │   ├── NacosDiscoveryClientConfiguration.java
│   │       │   │                   │   ├── NacosDiscoveryHeartBeatConfiguration.java
│   │       │   │                   │   ├── NacosDiscoveryHeartBeatPublisher.java
│   │       │   │                   │   ├── NacosServiceDiscovery.java
│   │       │   │                   │   ├── NacosWatch.java
│   │       │   │                   │   ├── ServiceCache.java
│   │       │   │                   │   ├── actuate/
│   │       │   │                   │   │   └── health/
│   │       │   │                   │   │       └── NacosDiscoveryHealthIndicator.java
│   │       │   │                   │   ├── configclient/
│   │       │   │                   │   │   ├── NacosConfigServerAutoConfiguration.java
│   │       │   │                   │   │   └── NacosDiscoveryClientConfigServiceBootstrapConfiguration.java
│   │       │   │                   │   └── reactive/
│   │       │   │                   │       ├── NacosReactiveDiscoveryClient.java
│   │       │   │                   │       └── NacosReactiveDiscoveryClientConfiguration.java
│   │       │   │                   ├── endpoint/
│   │       │   │                   │   ├── NacosDiscoveryEndpoint.java
│   │       │   │                   │   └── NacosDiscoveryEndpointAutoConfiguration.java
│   │       │   │                   ├── event/
│   │       │   │                   │   └── NacosDiscoveryInfoChangedEvent.java
│   │       │   │                   ├── loadbalancer/
│   │       │   │                   │   ├── ConditionalOnLoadBalancerNacos.java
│   │       │   │                   │   ├── DefaultLoadBalancerAlgorithm.java
│   │       │   │                   │   ├── LoadBalancerAlgorithm.java
│   │       │   │                   │   ├── LoadBalancerNacosAutoConfiguration.java
│   │       │   │                   │   ├── NacosLoadBalancer.java
│   │       │   │                   │   ├── NacosLoadBalancerClientConfiguration.java
│   │       │   │                   │   └── ServiceInstanceFilter.java
│   │       │   │                   ├── registry/
│   │       │   │                   │   ├── NacosAutoServiceRegistration.java
│   │       │   │                   │   ├── NacosGracefulShutdownDelegate.java
│   │       │   │                   │   ├── NacosRegistration.java
│   │       │   │                   │   ├── NacosRegistrationCustomizer.java
│   │       │   │                   │   ├── NacosServiceRegistry.java
│   │       │   │                   │   └── NacosServiceRegistryAutoConfiguration.java
│   │       │   │                   └── util/
│   │       │   │                       ├── InetIPv6Utils.java
│   │       │   │                       └── UtilIPv6AutoConfiguration.java
│   │       │   └── resources/
│   │       │       └── META-INF/
│   │       │           ├── additional-spring-configuration-metadata.json
│   │       │           ├── native-image/
│   │       │           │   ├── reflect-config.json
│   │       │           │   └── resource-config.json
│   │       │           ├── spring/
│   │       │           │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │       │           └── spring.factories
│   │       └── test/
│   │           └── java/
│   │               └── com/
│   │                   └── alibaba/
│   │                       └── cloud/
│   │                           └── nacos/
│   │                               ├── NacosDiscoveryClientTests.java
│   │                               ├── NacosDiscoveryPropertiesServerAddressBothLevelTests.java
│   │                               ├── NacosDiscoveryPropertiesServerAddressTopLevelTests.java
│   │                               ├── discovery/
│   │                               │   ├── NacosDiscoveryAutoConfigurationTests.java
│   │                               │   ├── NacosDiscoveryClientConfigurationTest.java
│   │                               │   ├── NacosDiscoveryHeartBeatConfigurationTest.java
│   │                               │   ├── NacosDiscoveryLoadBalancerConfigurationTest.java
│   │                               │   ├── NacosServiceDiscoveryTest.java
│   │                               │   └── reactive/
│   │                               │       ├── NacosReactiveDiscoveryClientConfigurationTests.java
│   │                               │       └── NacosReactiveDiscoveryClientTests.java
│   │                               ├── registry/
│   │                               │   ├── MockNamingService.java
│   │                               │   ├── NacosAutoServiceRegistrationIpNetworkInterfaceTests.java
│   │                               │   ├── NacosAutoServiceRegistrationIpTests.java
│   │                               │   ├── NacosAutoServiceRegistrationManagementPortTests.java
│   │                               │   ├── NacosAutoServiceRegistrationPortTests.java
│   │                               │   ├── NacosAutoServiceRegistrationTests.java
│   │                               │   ├── NacosGracefulShutdownDelegateTests.java
│   │                               │   └── NacosRegistrationCustomizerTest.java
│   │                               └── test/
│   │                                   ├── CommonTestConfig.java
│   │                                   └── NacosMockTest.java
│   ├── spring-cloud-starter-alibaba-schedulerx/
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── scheduling/
│   │       │   │                   ├── SchedulingConstants.java
│   │       │   │                   ├── schedulerx/
│   │       │   │                   │   ├── JobProperty.java
│   │       │   │                   │   ├── SchedulerxAutoConfigure.java
│   │       │   │                   │   ├── SchedulerxConfigurations.java
│   │       │   │                   │   ├── SchedulerxProperties.java
│   │       │   │                   │   ├── constants/
│   │       │   │                   │   │   └── SchedulerxConstants.java
│   │       │   │                   │   ├── service/
│   │       │   │                   │   │   ├── JobSyncService.java
│   │       │   │                   │   │   └── ScheduledJobSyncConfigurer.java
│   │       │   │                   │   └── util/
│   │       │   │                   │       └── CronExpression.java
│   │       │   │                   └── shedlock/
│   │       │   │                       └── ShedLockAutoConfigure.java
│   │       │   └── resources/
│   │       │       ├── META-INF/
│   │       │       │   ├── spring/
│   │       │       │   │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │       │       │   └── spring.factories
│   │       │       └── shedlock/
│   │       │           └── schema/
│   │       │               └── schema-mysql.sql
│   │       └── test/
│   │           └── java/
│   │               └── com/
│   │                   └── alibaba/
│   │                       └── cloud/
│   │                           └── scheduling/
│   │                               └── schedulerx/
│   │                                   └── util/
│   │                                       └── CronExpressionTest.java
│   ├── spring-cloud-starter-alibaba-seata/
│   │   ├── pom.xml
│   │   └── src/
│   │       └── main/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── alibaba/
│   │           │           └── cloud/
│   │           │               └── seata/
│   │           │                   ├── feign/
│   │           │                   │   ├── SeataFeignBuilderBeanPostProcessor.java
│   │           │                   │   ├── SeataFeignClientAutoConfiguration.java
│   │           │                   │   └── SeataFeignRequestInterceptor.java
│   │           │                   ├── rest/
│   │           │                   │   ├── SeataRestTemplateAutoConfiguration.java
│   │           │                   │   ├── SeataRestTemplateInterceptor.java
│   │           │                   │   └── SeataRestTemplateInterceptorAfterPropertiesSet.java
│   │           │                   ├── web/
│   │           │                   │   ├── SeataHandlerInterceptor.java
│   │           │                   │   └── SeataHandlerInterceptorConfiguration.java
│   │           │                   ├── webclient/
│   │           │                   │   ├── SeataWebClientAutoConfiguration.java
│   │           │                   │   ├── SeataWebClientBuilderCustomizer.java
│   │           │                   │   └── SeataWebClientFilter.java
│   │           │                   └── webflux/
│   │           │                       ├── SeataWebFilter.java
│   │           │                       └── SeataWebfluxAutoConfiguration.java
│   │           └── resources/
│   │               └── META-INF/
│   │                   ├── native-image/
│   │                   │   ├── com.alibaba.cloud/
│   │                   │   │   └── spring-cloud-starter-alibaba-seata/
│   │                   │   │       └── native-image.properties
│   │                   │   ├── proxy-config.json
│   │                   │   ├── reflect-config.json
│   │                   │   └── resource-config.json
│   │                   └── spring/
│   │                       └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   ├── spring-cloud-starter-alibaba-sentinel/
│   │   ├── pom.xml
│   │   └── src/
│   │       ├── main/
│   │       │   ├── java/
│   │       │   │   └── com/
│   │       │   │       └── alibaba/
│   │       │   │           └── cloud/
│   │       │   │               └── sentinel/
│   │       │   │                   ├── SentinelConstants.java
│   │       │   │                   ├── SentinelProperties.java
│   │       │   │                   ├── SentinelWebAutoConfiguration.java
│   │       │   │                   ├── SentinelWebFluxAutoConfiguration.java
│   │       │   │                   ├── SentinelWebMvcConfigurer.java
│   │       │   │                   ├── annotation/
│   │       │   │                   │   └── SentinelRestTemplate.java
│   │       │   │                   ├── aot/
│   │       │   │                   │   └── hint/
│   │       │   │                   │       └── SentinelProtectInterceptorHints.java
│   │       │   │                   ├── custom/
│   │       │   │                   │   ├── BlockClassRegistry.java
│   │       │   │                   │   ├── SentinelAutoConfiguration.java
│   │       │   │                   │   ├── SentinelBeanPostProcessor.java
│   │       │   │                   │   ├── SentinelDataSourceHandler.java
│   │       │   │                   │   ├── SentinelProtectInterceptor.java
│   │       │   │                   │   └── context/
│   │       │   │                   │       └── SentinelApplicationContextInitializer.java
│   │       │   │                   ├── endpoint/
│   │       │   │                   │   ├── SentinelEndpoint.java
│   │       │   │                   │   ├── SentinelEndpointAutoConfiguration.java
│   │       │   │                   │   └── SentinelHealthIndicator.java
│   │       │   │                   ├── feign/
│   │       │   │                   │   ├── SentinelContractHolder.java
│   │       │   │                   │   ├── SentinelFeign.java
│   │       │   │                   │   ├── SentinelFeignAutoConfiguration.java
│   │       │   │                   │   └── SentinelInvocationHandler.java
│   │       │   │                   └── rest/
│   │       │   │                       └── SentinelClientHttpResponse.java
│   │       │   └── resources/
│   │       │       └── META-INF/
│   │       │           ├── additional-spring-configuration-metadata.json
│   │       │           ├── native-image/
│   │       │           │   ├── reflect-config.json
│   │       │           │   └── resource-config.json
│   │       │           ├── spring/
│   │       │           │   ├── aot.factories
│   │       │           │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │       │           └── spring.factories
│   │       └── test/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── alibaba/
│   │           │           └── cloud/
│   │           │               └── sentinel/
│   │           │                   ├── ContextIdSentinelFeignTests.java
│   │           │                   ├── SentinelAutoConfigurationTests.java
│   │           │                   ├── SentinelBeanAutowiredTests.java
│   │           │                   ├── SentinelDataSourceTests.java
│   │           │                   ├── SentinelFallbackSupportFactoryBeanTests.java
│   │           │                   ├── SentinelFeignLazilyTests.java
│   │           │                   ├── SentinelFeignTests.java
│   │           │                   ├── SentinelRestTemplateTests.java
│   │           │                   ├── TestConverter.java
│   │           │                   ├── aot/
│   │           │                   │   └── hint/
│   │           │                   │       └── SentinelProtectInterceptorHintsTest.java
│   │           │                   ├── custom/
│   │           │                   │   └── SentinelDataSourceHandlerTests.java
│   │           │                   └── endpoint/
│   │           │                       └── SentinelHealthIndicatorTests.java
│   │           └── resources/
│   │               ├── authority.json
│   │               ├── degraderule.json
│   │               ├── flowrule.json
│   │               ├── param-flow.json
│   │               └── system.json
│   ├── spring-cloud-starter-alibaba-sidecar/
│   │   ├── pom.xml
│   │   └── src/
│   │       └── main/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── alibaba/
│   │           │           └── cloud/
│   │           │               └── sidecar/
│   │           │                   ├── CustomHealthCheckHandler.java
│   │           │                   ├── SidecarAutoConfiguration.java
│   │           │                   ├── SidecarDiscoveryClient.java
│   │           │                   ├── SidecarHealthChecker.java
│   │           │                   ├── SidecarHealthIndicator.java
│   │           │                   ├── SidecarInstanceInfo.java
│   │           │                   ├── SidecarProperties.java
│   │           │                   ├── consul/
│   │           │                   │   ├── SidecarConsulAutoConfiguration.java
│   │           │                   │   ├── SidecarConsulAutoRegistration.java
│   │           │                   │   └── SidecarConsulDiscoveryClient.java
│   │           │                   └── nacos/
│   │           │                       ├── SidecarNacosAutoConfiguration.java
│   │           │                       ├── SidecarNacosDiscoveryClient.java
│   │           │                       └── SidecarNacosDiscoveryProperties.java
│   │           └── resources/
│   │               └── META-INF/
│   │                   └── spring/
│   │                       └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   ├── spring-cloud-starter-bus-rocketmq/
│   │   ├── pom.xml
│   │   └── src/
│   │       └── main/
│   │           ├── java/
│   │           │   └── com/
│   │           │       └── alibaba/
│   │           │           └── cloud/
│   │           │               └── bus/
│   │           │                   └── rocketmq/
│   │           │                       ├── autoconfigurate/
│   │           │                       │   └── RocketMQBusAutoConfiguration.java
│   │           │                       └── env/
│   │           │                           └── RocketMQBusEnvironmentPostProcessor.java
│   │           └── resources/
│   │               └── META-INF/
│   │                   ├── spring/
│   │                   │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│   │                   └── spring.factories
│   └── spring-cloud-starter-stream-rocketmq/
│       ├── pom.xml
│       └── src/
│           ├── main/
│           │   ├── java/
│           │   │   └── com/
│           │   │       └── alibaba/
│           │   │           └── cloud/
│           │   │               └── stream/
│           │   │                   └── binder/
│           │   │                       └── rocketmq/
│           │   │                           ├── RocketMQMessageChannelBinder.java
│           │   │                           ├── actuator/
│           │   │                           │   └── RocketMQBinderHealthIndicator.java
│           │   │                           ├── aot/
│           │   │                           │   └── hint/
│           │   │                           │       ├── RocketMQConsumerPropertiesHints.java
│           │   │                           │       └── RocketMQSpecificPropertiesProviderHints.java
│           │   │                           ├── autoconfigurate/
│           │   │                           │   ├── ExtendedBindingHandlerMappingsProviderConfiguration.java
│           │   │                           │   └── RocketMQBinderAutoConfiguration.java
│           │   │                           ├── constant/
│           │   │                           │   └── RocketMQConst.java
│           │   │                           ├── convert/
│           │   │                           │   └── RocketMQMessageConverter.java
│           │   │                           ├── custom/
│           │   │                           │   ├── RocketMQBeanContainerCache.java
│           │   │                           │   └── RocketMQConfigBeanPostProcessor.java
│           │   │                           ├── extend/
│           │   │                           │   └── ErrorAcknowledgeHandler.java
│           │   │                           ├── integration/
│           │   │                           │   ├── inbound/
│           │   │                           │   │   ├── RocketMQConsumerFactory.java
│           │   │                           │   │   ├── RocketMQInboundChannelAdapter.java
│           │   │                           │   │   └── pull/
│           │   │                           │   │       ├── DefaultErrorAcknowledgeHandler.java
│           │   │                           │   │       ├── RocketMQAckCallback.java
│           │   │                           │   │       └── RocketMQMessageSource.java
│           │   │                           │   └── outbound/
│           │   │                           │       ├── RocketMQProduceFactory.java
│           │   │                           │       └── RocketMQProducerMessageHandler.java
│           │   │                           ├── metrics/
│           │   │                           │   ├── Instrumentation.java
│           │   │                           │   └── InstrumentationManager.java
│           │   │                           ├── properties/
│           │   │                           │   ├── RocketMQBinderConfigurationProperties.java
│           │   │                           │   ├── RocketMQCommonProperties.java
│           │   │                           │   ├── RocketMQConsumerProperties.java
│           │   │                           │   ├── RocketMQExtendedBindingProperties.java
│           │   │                           │   ├── RocketMQProducerProperties.java
│           │   │                           │   └── RocketMQSpecificPropertiesProvider.java
│           │   │                           ├── provisioning/
│           │   │                           │   ├── RocketMQTopicProvisioner.java
│           │   │                           │   └── selector/
│           │   │                           │       └── PartitionMessageQueueSelector.java
│           │   │                           ├── support/
│           │   │                           │   ├── AbstractRocketMQHeaderMapper.java
│           │   │                           │   ├── JacksonRocketMQHeaderMapper.java
│           │   │                           │   ├── RocketMQHeaderMapper.java
│           │   │                           │   └── RocketMQMessageConverterSupport.java
│           │   │                           └── utils/
│           │   │                               └── RocketMQUtils.java
│           │   └── resources/
│           │       └── META-INF/
│           │           ├── native-image/
│           │           │   ├── com.alibaba.cloud/
│           │           │   │   └── spring-cloud-starter-stream-rocketmq/
│           │           │   │       └── native-image.properties
│           │           │   └── reflect-config.json
│           │           ├── spring/
│           │           │   ├── aot.factories
│           │           │   └── org.springframework.boot.autoconfigure.AutoConfiguration.imports
│           │           └── spring.binders
│           └── test/
│               └── java/
│                   └── com/
│                       └── alibaba/
│                           └── cloud/
│                               └── stream/
│                                   └── binder/
│                                       └── rocketmq/
│                                           ├── RocketMQAutoConfigurationTests.java
│                                           ├── RocketMQMessageChannelBinderTest.java
│                                           ├── RocketMQMessageConverterSupportTest.java
│                                           ├── TestConsumerDestination.java
│                                           └── aot/
│                                               └── hint/
│                                                   ├── RocketMQConsumerPropertiesHintsTests.java
│                                                   └── RocketMQSpecificPropertiesProviderHintsTests.java
└── spring-cloud-alibaba-tests/
    ├── nacos-tests/
    │   ├── nacos-config-test/
    │   │   └── src/
    │   │       └── test/
    │   │           └── resources/
    │   │               └── docker/
    │   │                   └── nacos-compose-test.yml
    │   ├── nacos-discovery-test/
    │   │   ├── pom.xml
    │   │   └── src/
    │   │       ├── main/
    │   │       │   └── java/
    │   │       │       └── com/
    │   │       │           └── alibaba/
    │   │       │               └── cloud/
    │   │       │                   └── tests/
    │   │       │                       └── nacos/
    │   │       │                           └── discovery/
    │   │       │                               └── NacosDiscoveryTestApp.java
    │   │       └── test/
    │   │           ├── java/
    │   │           │   └── com/
    │   │           │       └── alibaba/
    │   │           │           └── cloud/
    │   │           │               └── tests/
    │   │           │                   └── nacos/
    │   │           │                       └── discovery/
    │   │           │                           └── NacosDiscoveryTest.java
    │   │           └── resources/
    │   │               ├── application-service-1.yml
    │   │               ├── application-service-2.yml
    │   │               ├── docker/
    │   │               │   └── nacos-compose-test.yml
    │   │               └── nacos/
    │   │                   └── nacos-config-refresh.yml
    │   └── pom.xml
    ├── pom.xml
    ├── rocketmq-tests/
    │   ├── pom.xml
    │   └── rocketmq-stream-test/
    │       ├── pom.xml
    │       └── src/
    │           ├── main/
    │           │   └── java/
    │           │       └── com/
    │           │           └── alibaba/
    │           │               └── cloud/
    │           │                   └── stream/
    │           │                       └── binder/
    │           │                           └── rocketmq/
    │           │                               └── RocketmqStreamApplication.java
    │           └── test/
    │               ├── java/
    │               │   └── com/
    │               │       └── alibaba/
    │               │           └── cloud/
    │               │               └── stream/
    │               │                   └── binder/
    │               │                       └── rocketmq/
    │               │                           ├── RocketMQAutoConfigurationTests.java
    │               │                           ├── RocketmqProduceAndConsumerTests.java
    │               │                           └── fixture/
    │               │                               └── RocketmqBinderProcessor.java
    │               └── resources/
    │                   └── docker/
    │                       ├── data/
    │                       │   └── broker/
    │                       │       └── conf/
    │                       │           └── broker.conf
    │                       ├── data1/
    │                       │   └── broker/
    │                       │       └── conf/
    │                       │           └── broker.conf
    │                       └── rocket-compose-test.yml
    ├── sentinel-tests/
    │   ├── pom.xml
    │   ├── sentinel-degrade-test/
    │   │   ├── pom.xml
    │   │   └── src/
    │   │       ├── main/
    │   │       │   ├── java/
    │   │       │   │   └── com/
    │   │       │   │       └── alibaba/
    │   │       │   │           └── cloud/
    │   │       │   │               └── tests/
    │   │       │   │                   └── sentinel/
    │   │       │   │                       └── degrade/
    │   │       │   │                           └── SentinelDegradeTestApp.java
    │   │       │   └── resources/
    │   │       │       └── application.yml
    │   │       └── test/
    │   │           └── java/
    │   │               └── com/
    │   │                   └── alibaba/
    │   │                       └── cloud/
    │   │                           └── tests/
    │   │                               └── sentinel/
    │   │                                   └── degrade/
    │   │                                       └── SentinelDegradeTestAppTest.java
    │   └── sentinel-flowcontrol-test/
    │       ├── pom.xml
    │       └── src/
    │           ├── main/
    │           │   ├── java/
    │           │   │   └── com/
    │           │   │       └── alibaba/
    │           │   │           └── cloud/
    │           │   │               └── tests/
    │           │   │                   └── sentinel/
    │           │   │                       └── degrade/
    │           │   │                           ├── SentinelFlowControlTestApp.java
    │           │   │                           └── Util.java
    │           │   └── resources/
    │           │       └── application.yml
    │           └── test/
    │               └── java/
    │                   └── com/
    │                       └── alibaba/
    │                           └── cloud/
    │                               └── tests/
    │                                   └── sentinel/
    │                                       └── degrade/
    │                                           └── SentinelFlowControlTestAppTest.java
    └── spring-cloud-alibaba-test-support/
        ├── pom.xml
        └── src/
            └── main/
                ├── java/
                │   └── com/
                │       └── alibaba/
                │           └── cloud/
                │               └── testsupport/
                │                   ├── Constant.java
                │                   ├── ContainerStarter.java
                │                   ├── Func.java
                │                   ├── HasDockerAndItEnabled.java
                │                   ├── HasDockerAndItEnabledCondition.java
                │                   ├── InetUtil.java
                │                   ├── SpringCloudAlibaba.java
                │                   ├── SpringCloudAlibabaExtension.java
                │                   ├── TestExtend.java
                │                   ├── TestTimeoutExtension.java
                │                   └── Tester.java
                └── resources/
                    └── rocketmq/
                        └── conf/
                            └── broker.conf
Download .txt
Showing preview only (298K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (3005 symbols across 443 files)

FILE: spring-cloud-alibaba-examples/integrated-example/config-init/sql/init.sql
  type `storage` (line 5) | CREATE TABLE `storage`
  type `account` (line 24) | CREATE TABLE `account`
  type `order` (line 42) | CREATE TABLE `order`
  type `item` (line 60) | CREATE TABLE `item`
  type `undo_log` (line 74) | CREATE TABLE `undo_log`
  type `undo_log` (line 91) | CREATE TABLE `undo_log`
  type `undo_log` (line 108) | CREATE TABLE `undo_log`

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-account/src/main/java/com/alibaba/cloud/integration/account/AccountServiceApplication.java
  class AccountServiceApplication (line 25) | @SpringBootApplication
    method main (line 28) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-account/src/main/java/com/alibaba/cloud/integration/account/controller/AccountController.java
  class AccountController (line 34) | @RestController
    method reduceBalance (line 41) | @PostMapping("/reduce-balance")
    method getRemainAccount (line 52) | @GetMapping("/")

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-account/src/main/java/com/alibaba/cloud/integration/account/dto/AccountDTO.java
  class AccountDTO (line 22) | public class AccountDTO {
    method getUserId (line 28) | public String getUserId() {
    method setUserId (line 32) | public void setUserId(String userId) {
    method getPrice (line 36) | public Integer getPrice() {
    method setPrice (line 40) | public void setPrice(Integer price) {

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-account/src/main/java/com/alibaba/cloud/integration/account/mapper/AccountMapper.java
  type AccountMapper (line 31) | @Mapper
    method getBalance (line 35) | @Select("SELECT money FROM account WHERE user_id = #{userId}")
    method reduceBalance (line 38) | @Update("UPDATE account SET money = money - #{price},update_time = #{u...

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-account/src/main/java/com/alibaba/cloud/integration/account/service/AccountService.java
  type AccountService (line 25) | public interface AccountService {
    method reduceBalance (line 27) | void reduceBalance(String userId, Integer price) throws BusinessExcept...
    method getRemainAccount (line 29) | Result<?> getRemainAccount(String userId);

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-account/src/main/java/com/alibaba/cloud/integration/account/service/impl/AccountServiceImpl.java
  class AccountServiceImpl (line 36) | @Service
    method reduceBalance (line 44) | @Override
    method getRemainAccount (line 58) | @Override
    method checkBalance (line 67) | private void checkBalance(String userId, Integer price) throws Busines...

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-common/src/main/java/com/alibaba/cloud/integration/common/BusinessException.java
  class BusinessException (line 22) | public class BusinessException extends RuntimeException {
    method BusinessException (line 24) | public BusinessException(String message) {

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-common/src/main/java/com/alibaba/cloud/integration/common/IResult.java
  type IResult (line 19) | public interface IResult {
    method getCode (line 25) | Integer getCode();
    method getMessage (line 31) | String getMessage();

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-common/src/main/java/com/alibaba/cloud/integration/common/Result.java
  class Result (line 22) | public class Result<T> {
    method success (line 30) | public static <T> Result<T> success(T data) {
    method success (line 35) | public static <T> Result<T> success(String message, T data) {
    method failed (line 39) | public static Result<?> failed() {
    method failed (line 44) | public static Result<?> failed(String message) {
    method failed (line 48) | public static Result<?> failed(IResult errorResult) {
    method Result (line 52) | public Result() {
    method Result (line 55) | public Result(Integer code, String message, T data) {
    method getCode (line 61) | public Integer getCode() {
    method setCode (line 65) | public void setCode(Integer code) {
    method getMessage (line 69) | public String getMessage() {
    method setMessage (line 73) | public void setMessage(String message) {
    method getData (line 77) | public T getData() {
    method setData (line 81) | public void setData(T data) {
    method instance (line 85) | public static <T> Result<T> instance(Integer code, String message, T d...

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-common/src/main/java/com/alibaba/cloud/integration/common/ResultEnum.java
  type ResultEnum (line 23) | public enum ResultEnum implements IResult {
    method ResultEnum (line 38) | ResultEnum() {
    method ResultEnum (line 41) | ResultEnum(Integer code, String message) {
    method getCode (line 46) | @Override
    method setCode (line 51) | public void setCode(Integer code) {
    method getMessage (line 55) | @Override
    method setMessage (line 60) | public void setMessage(String message) {

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-frontend/src/main/java/com/alibaba/cloud/integration/frontend/FrontendApplication.java
  class FrontendApplication (line 26) | @SpringBootApplication
    method main (line 29) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-frontend/src/main/java/com/alibaba/cloud/integration/frontend/controller/IntegrationController.java
  class IntegrationController (line 26) | @Controller
    method order (line 29) | @RequestMapping("/order")
    method rocketmq (line 34) | @RequestMapping("/rocketmq")
    method sentinel (line 39) | @RequestMapping("/sentinel")

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-gateway/src/main/java/com/alibaba/cloud/integration/gateway/GatewayApplication.java
  class GatewayApplication (line 26) | @SpringBootApplication
    method main (line 30) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-gateway/src/main/java/com/alibaba/cloud/integration/gateway/config/GatewayConfig.java
  class GatewayConfig (line 55) | @Configuration
    method GatewayConfig (line 62) | public GatewayConfig(ObjectProvider<List<ViewResolver>> viewResolversP...
    method sentinelGatewayFilter (line 68) | @Bean
    method initGatewayRules (line 74) | @PostConstruct
    method sentinelGatewayBlockExceptionHandler (line 82) | @Bean
    method initBlockHandlers (line 90) | @PostConstruct
    method corsFilter (line 104) | @Bean

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/OrderServiceApplication.java
  class OrderServiceApplication (line 26) | @SpringBootApplication
    method main (line 30) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/controller/OrderController.java
  class OrderController (line 32) | @RestController
    method createOrder (line 39) | @PostMapping("/create")

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/entity/Order.java
  class Order (line 24) | public class Order {
    method getId (line 40) | public Integer getId() {
    method setId (line 44) | public void setId(Integer id) {
    method getUserId (line 48) | public String getUserId() {
    method setUserId (line 52) | public void setUserId(String userId) {
    method getCommodityCode (line 56) | public String getCommodityCode() {
    method setCommodityCode (line 60) | public void setCommodityCode(String commodityCode) {
    method getCount (line 64) | public Integer getCount() {
    method setCount (line 68) | public void setCount(Integer count) {
    method getMoney (line 72) | public Integer getMoney() {
    method setMoney (line 76) | public void setMoney(Integer money) {
    method getCreateTime (line 80) | public Timestamp getCreateTime() {
    method setCreateTime (line 84) | public void setCreateTime(Timestamp createTime) {
    method getUpdateTime (line 88) | public Timestamp getUpdateTime() {
    method setUpdateTime (line 92) | public void setUpdateTime(Timestamp updateTime) {
    method toString (line 96) | @Override

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/feign/AccountServiceFeignClient.java
  type AccountServiceFeignClient (line 29) | @FeignClient(name = "integrated-account")
    method reduceBalance (line 32) | @PostMapping("/account/reduce-balance")

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/feign/StorageServiceFeignClient.java
  type StorageServiceFeignClient (line 29) | @FeignClient(name = "integrated-storage")
    method reduceStock (line 32) | @PostMapping("/storage/reduce-stock")

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/feign/dto/AccountDTO.java
  class AccountDTO (line 22) | public class AccountDTO {
    method getUserId (line 28) | public String getUserId() {
    method setUserId (line 32) | public void setUserId(String userId) {
    method getPrice (line 36) | public Integer getPrice() {
    method setPrice (line 40) | public void setPrice(Integer price) {

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/feign/dto/StorageDTO.java
  class StorageDTO (line 22) | public class StorageDTO {
    method getCommodityCode (line 28) | public String getCommodityCode() {
    method setCommodityCode (line 32) | public void setCommodityCode(String commodityCode) {
    method getCount (line 36) | public Integer getCount() {
    method setCount (line 40) | public void setCount(Integer count) {

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/mapper/OrderMapper.java
  type OrderMapper (line 29) | @Mapper
    method saveOrder (line 33) | @Insert("INSERT INTO `order` (user_id, commodity_code,money,create_tim...

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/service/OrderService.java
  type OrderService (line 25) | public interface OrderService {
    method createOrder (line 27) | Result<?> createOrder(String userId, String commodityCode, Integer count)

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/service/impl/OrderServiceImpl.java
  class OrderServiceImpl (line 43) | @Service
    method createOrder (line 57) | @Override

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/java/com/alibaba/cloud/integration/consumer/PraiseConsumerApplication.java
  class PraiseConsumerApplication (line 26) | @SpringBootApplication
    method main (line 29) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/java/com/alibaba/cloud/integration/consumer/controller/PraiseController.java
  class PraiseController (line 29) | @RestController
    method getPraise (line 36) | @GetMapping("/query")

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/java/com/alibaba/cloud/integration/consumer/listener/ListenerAutoConfiguration.java
  class ListenerAutoConfiguration (line 28) | @Configuration
    method consumer (line 30) | @Bean

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/java/com/alibaba/cloud/integration/consumer/mapper/PraiseMapper.java
  type PraiseMapper (line 31) | @Mapper
    method praiseItem (line 35) | @Update("update item set praise = praise+1,update_time=#{updateTime} w...
    method getPraise (line 39) | @Select("select praise from item where id = #{itemId}")

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/java/com/alibaba/cloud/integration/consumer/message/PraiseMessage.java
  class PraiseMessage (line 22) | public class PraiseMessage {
    method getItemId (line 26) | public Integer getItemId() {
    method setItemId (line 30) | public void setItemId(Integer itemId) {
    method toString (line 34) | @Override

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/java/com/alibaba/cloud/integration/consumer/service/PraiseService.java
  type PraiseService (line 22) | public interface PraiseService {
    method praiseItem (line 24) | void praiseItem(Integer itemId);
    method getPraise (line 26) | int getPraise(Integer itemId);

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/java/com/alibaba/cloud/integration/consumer/service/impl/PraiseServiceImpl.java
  class PraiseServiceImpl (line 30) | @Service
    method praiseItem (line 36) | @Override
    method getPraise (line 42) | @Override

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-praise-provider/src/main/java/com/alibaba/cloud/integration/provider/PraiseProviderApplication.java
  class PraiseProviderApplication (line 25) | @SpringBootApplication
    method main (line 28) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-praise-provider/src/main/java/com/alibaba/cloud/integration/provider/controller/PraiseController.java
  class PraiseController (line 33) | @RestController
    method praise (line 40) | @GetMapping({ "/rocketmq", "/sentinel" })

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-praise-provider/src/main/java/com/alibaba/cloud/integration/provider/message/PraiseMessage.java
  class PraiseMessage (line 22) | public class PraiseMessage {
    method getItemId (line 26) | public Integer getItemId() {
    method setItemId (line 30) | public void setItemId(Integer itemId) {
    method toString (line 34) | @Override

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-storage/src/main/java/com/alibaba/cloud/integration/storage/StorageServiceApplication.java
  class StorageServiceApplication (line 25) | @SpringBootApplication
    method main (line 28) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-storage/src/main/java/com/alibaba/cloud/integration/storage/controller/StorageController.java
  class StorageController (line 34) | @RestController
    method reduceStock (line 41) | @PostMapping("/reduce-stock")
    method getRemainCount (line 53) | @GetMapping("/")

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-storage/src/main/java/com/alibaba/cloud/integration/storage/dto/StorageDTO.java
  class StorageDTO (line 22) | public class StorageDTO {
    method getCommodityCode (line 28) | public String getCommodityCode() {
    method setCommodityCode (line 32) | public void setCommodityCode(String commodityCode) {
    method getCount (line 36) | public Integer getCount() {
    method setCount (line 40) | public void setCount(Integer count) {

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-storage/src/main/java/com/alibaba/cloud/integration/storage/mapper/StorageMapper.java
  type StorageMapper (line 31) | @Mapper
    method getStock (line 35) | @Select("SELECT `count` FROM storage WHERE commodity_code = #{commodit...
    method reduceStock (line 38) | @Update("UPDATE storage SET count = count - #{count},update_time=#{upd...

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-storage/src/main/java/com/alibaba/cloud/integration/storage/service/StorageService.java
  type StorageService (line 25) | public interface StorageService {
    method reduceStock (line 27) | void reduceStock(String commodityCode, Integer orderCount) throws Busi...
    method getRemainCount (line 29) | Result<?> getRemainCount(String commodityCode);

FILE: spring-cloud-alibaba-examples/integrated-example/integrated-storage/src/main/java/com/alibaba/cloud/integration/storage/service/impl/StorageServiceImpl.java
  class StorageServiceImpl (line 36) | @Service
    method reduceStock (line 44) | @Override
    method getRemainCount (line 59) | @Override
    method checkStock (line 68) | private void checkStock(String commodityCode, Integer count)

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/java/com/alibaba/cloud/examples/NacosConfigApplication.java
  class NacosConfigApplication (line 26) | @SpringBootApplication
    method main (line 29) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/java/com/alibaba/cloud/examples/example/BeanAutoRefreshConfigExample.java
  class BeanAutoRefreshConfigExample (line 34) | @RestController
    method getConfigInfo (line 41) | @GetMapping

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/java/com/alibaba/cloud/examples/example/ConfigListenerExample.java
  class ConfigListenerExample (line 39) | @Component
    method init (line 57) | @PostConstruct

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/java/com/alibaba/cloud/examples/example/DockingInterfaceExample.java
  class DockingInterfaceExample (line 40) | @RestController
    method getConfig (line 61) | @RequestMapping("/getConfig")
    method publishConfig (line 80) | @RequestMapping("/publishConfig")
    method removeConfig (line 98) | @RequestMapping("/removeConfig")
    method listenerConfig (line 115) | @RequestMapping("/listener")

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/java/com/alibaba/cloud/examples/example/ValueAnnotationExample.java
  class ValueAnnotationExample (line 33) | @RestController
    method getConfigInfo (line 50) | @GetMapping

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/java/com/alibaba/cloud/examples/model/NacosConfigInfo.java
  class NacosConfigInfo (line 25) | @ConfigurationProperties(prefix = "spring.cloud.nacos.config")
    method getServerAddr (line 49) | public String getServerAddr() {
    method setServerAddr (line 53) | public void setServerAddr(String serverAddr) {
    method getPrefix (line 57) | public String getPrefix() {
    method setPrefix (line 61) | public void setPrefix(String prefix) {
    method getGroup (line 65) | public String getGroup() {
    method setGroup (line 69) | public void setGroup(String group) {
    method getNamespace (line 73) | public String getNamespace() {
    method setNamespace (line 77) | public void setNamespace(String namespace) {

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/ConsumerApplication.java
  class ConsumerApplication (line 29) | @SpringBootApplication
    method main (line 37) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/TestController.java
  class TestController (line 36) | @RestController
    method rest (line 53) | @GetMapping("/echo-rest/{str}")
    method index (line 60) | @GetMapping("/index")
    method test (line 65) | @GetMapping("/test")
    method sleep (line 71) | @GetMapping("/sleep")
    method notFound (line 77) | @GetMapping("/notFound-feign")
    method divide (line 82) | @GetMapping("/divide-feign")
    method divide (line 87) | @GetMapping("/divide-feign2")
    method feign (line 92) | @GetMapping("/echo-feign/{str}")
    method client (line 97) | @GetMapping("/services/{service}")
    method services (line 102) | @GetMapping("/services")

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/configuration/FeignConfiguration.java
  class FeignConfiguration (line 29) | public class FeignConfiguration {
    method echoClientFallback (line 31) | @Bean

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/configuration/RestTemplateConfiguration.java
  class RestTemplateConfiguration (line 30) | @Configuration
    method urlCleanedRestTemplate (line 33) | @LoadBalanced
    method restTemplate (line 41) | @LoadBalanced

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/configuration/UrlCleaner.java
  class UrlCleaner (line 27) | public class UrlCleaner {
    method clean (line 33) | public static String clean(String url) {

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/feign/EchoClient.java
  type EchoClient (line 30) | @FeignClient(name = "service-provider", contextId = "service-provider")
    method echo (line 39) | @GetMapping("/echo/{str}")
    method divide (line 49) | @GetMapping("/divide")
    method divide (line 58) | default String divide(Integer a) {
    method notFound (line 67) | @GetMapping("/notFound")

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/feign/EchoClientFallback.java
  class EchoClientFallback (line 27) | public class EchoClientFallback implements EchoClient {
    method echo (line 29) | @Override
    method divide (line 34) | @Override
    method notFound (line 39) | @Override

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/ConsumerSCLBApplication.java
  class ConsumerSCLBApplication (line 29) | @SpringBootApplication
    method main (line 34) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/RandomLoadBalancer.java
  class RandomLoadBalancer (line 38) | public class RandomLoadBalancer implements ReactorServiceInstanceLoadBal...
    method RandomLoadBalancer (line 46) | public RandomLoadBalancer(
    method choose (line 54) | @Override
    method choose (line 63) | @Override
    method getInstanceResponse (line 70) | private Response<ServiceInstance> getInstanceResponse(

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/TestController.java
  class TestController (line 36) | @RestController
    method rest (line 56) | @GetMapping("/echo-rest/{str}")
    method zone (line 63) | @GetMapping("/zone")
    method feign (line 69) | @GetMapping("/echo-feign/{str}")
    method index (line 74) | @GetMapping("/index")
    method test (line 79) | @GetMapping("/test")
    method sleep (line 85) | @GetMapping("/sleep")
    method notFound (line 91) | @GetMapping("/notFound-feign")
    method divide (line 96) | @GetMapping("/divide-feign")
    method divide (line 101) | @GetMapping("/divide-feign2")
    method client (line 106) | @GetMapping("/services/{service}")
    method services (line 111) | @GetMapping("/services")

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/config/FeignConfiguration.java
  class FeignConfiguration (line 30) | public class FeignConfiguration {
    method echoClientFallback (line 32) | @Bean

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/config/MyLoadBalancerConfiguration.java
  class MyLoadBalancerConfiguration (line 35) | public class MyLoadBalancerConfiguration {
    method reactorServiceInstanceLoadBalancer (line 37) | @Bean

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/config/MySCLBConfiguration.java
  class MySCLBConfiguration (line 27) | @Configuration

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/config/RestTemplateConfiguration.java
  class RestTemplateConfiguration (line 31) | @Configuration
    method urlCleanedRestTemplate (line 34) | @LoadBalanced
    method restTemplate (line 41) | @LoadBalanced

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/config/UrlCleaner.java
  class UrlCleaner (line 27) | public class UrlCleaner {
    method clean (line 33) | public static String clean(String url) {

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/feign/EchoClient.java
  type EchoClient (line 31) | @FeignClient(name = "service-provider", fallback = EchoClientFallback.cl...
    method echo (line 40) | @GetMapping("/echo/{str}")
    method divide (line 50) | @GetMapping("/divide")
    method divide (line 59) | default String divide(Integer a) {
    method notFound (line 68) | @GetMapping("/notFound")

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/feign/EchoClientFallback.java
  class EchoClientFallback (line 27) | public class EchoClientFallback implements EchoClient {
    method echo (line 29) | @Override
    method divide (line 34) | @Override
    method notFound (line 39) | @Override

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-provider-example/src/main/java/com/alibaba/cloud/examples/EchoController.java
  class EchoController (line 38) | @RestController
    method index (line 44) | @GetMapping("/")
    method test (line 49) | @GetMapping("/test")
    method sleep (line 54) | @GetMapping("/sleep")
    method echo (line 65) | @GetMapping("/echo/{string}")
    method divide (line 70) | @GetMapping("/divide")
    method zone (line 80) | @GetMapping("/zone")

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-provider-example/src/main/java/com/alibaba/cloud/examples/ProviderApplication.java
  class ProviderApplication (line 28) | @EnableDiscoveryClient
    method main (line 32) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-client-example/src/main/java/com/alibaba/cloud/examples/GetConfigController.java
  class GetConfigController (line 28) | @RestController
    method getConfig (line 34) | @GetMapping("/config")

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-client-example/src/main/java/com/alibaba/cloud/examples/SpringCloudConfigClientApplication.java
  class SpringCloudConfigClientApplication (line 26) | @SpringBootApplication
    method main (line 30) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-server-example/src/main/java/com/alibaba/cloud/examples/SpringCloudConfigServerApplication.java
  class SpringCloudConfigServerApplication (line 27) | @SpringBootApplication
    method main (line 32) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-reactivediscovery-consumer-example/src/main/java/com/alibaba/cloud/examples/ConsumerReactiveApplication.java
  class ConsumerReactiveApplication (line 28) | @SpringBootApplication
    method main (line 34) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-reactivediscovery-consumer-example/src/main/java/com/alibaba/cloud/examples/MyController.java
  class MyController (line 35) | @RestController
    method allServices (line 44) | @GetMapping("/all-services")
    method serviceCall (line 51) | @GetMapping("/service-call/{name}")

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-reactivediscovery-consumer-example/src/main/java/com/alibaba/cloud/examples/WebClientConfiguration.java
  class WebClientConfiguration (line 30) | @Configuration
    method webClient (line 33) | @Bean

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-discovery-example/src/main/java/com/alibaba/cloud/examples/GatewayApplication.java
  class GatewayApplication (line 28) | @SpringBootApplication
    method main (line 35) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-provider-example/src/main/java/com/alibaba/cloud/examples/EchoController.java
  class EchoController (line 29) | @RestController
    method echo (line 32) | @GetMapping("/echo/{string}")
    method divide (line 37) | @GetMapping("/divide")

FILE: spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-provider-example/src/main/java/com/alibaba/cloud/examples/ProviderApplication.java
  class ProviderApplication (line 26) | @SpringBootApplication
    method main (line 30) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/rocketmq-example/rocketmq-broadcast-example/rocketmq-broadcast-consumer1-example/src/main/java/com/alibaba/cloud/examples/broadcast/RocketMQBroadcastConsumer1Application.java
  class RocketMQBroadcastConsumer1Application (line 33) | @SpringBootApplication
    method main (line 38) | public static void main(String[] args) {
    method consumer (line 42) | @Bean

FILE: spring-cloud-alibaba-examples/rocketmq-example/rocketmq-broadcast-example/rocketmq-broadcast-consumer2-example/src/main/java/com/alibaba/cloud/examples/broadcast/RocketMQBroadcastConsumer2Application.java
  class RocketMQBroadcastConsumer2Application (line 33) | @SpringBootApplication
    method main (line 38) | public static void main(String[] args) {
    method consumer (line 42) | @Bean

FILE: spring-cloud-alibaba-examples/rocketmq-example/rocketmq-broadcast-example/rocketmq-broadcast-producer-example/src/main/java/com/alibaba/cloud/examples/broadcast/RocketMQBroadcastProducerApplication.java
  class RocketMQBroadcastProducerApplication (line 41) | @SpringBootApplication
    method main (line 47) | public static void main(String[] args) {
    method producer (line 51) | @Bean

FILE: spring-cloud-alibaba-examples/rocketmq-example/rocketmq-comprehensive-example/src/main/java/com/alibaba/cloud/examples/RocketMQComprehensiveApplication.java
  class RocketMQComprehensiveApplication (line 37) | @SpringBootApplication
    method main (line 42) | public static void main(String[] args) {
    method producer (line 46) | @Bean
    method processor (line 59) | @Bean
    method consumer (line 70) | @Bean

FILE: spring-cloud-alibaba-examples/rocketmq-example/rocketmq-comprehensive-example/src/main/java/com/alibaba/cloud/examples/User.java
  class User (line 24) | public class User {
    method getId (line 29) | public String getId() {
    method setId (line 33) | public void setId(String id) {
    method getName (line 37) | public String getName() {
    method setName (line 41) | public void setName(String name) {
    method getMeta (line 45) | public Map<String, Object> getMeta() {
    method setMeta (line 49) | public void setMeta(Map<String, Object> meta) {
    method toString (line 53) | @Override

FILE: spring-cloud-alibaba-examples/rocketmq-example/rocketmq-delay-consume-example/src/main/java/com/alibaba/cloud/examples/delay/RocketMQDelayConsumeApplication.java
  class RocketMQDelayConsumeApplication (line 41) | @SpringBootApplication
    method main (line 53) | public static void main(String[] args) {
    method producerDelay (line 60) | @Bean
    method consumer (line 77) | @Bean

FILE: spring-cloud-alibaba-examples/rocketmq-example/rocketmq-example-common/src/main/java/com/alibaba/cloud/examples/common/SimpleMsg.java
  class SimpleMsg (line 22) | public class SimpleMsg {
    method SimpleMsg (line 26) | public SimpleMsg() {
    method SimpleMsg (line 29) | public SimpleMsg(String msg) {
    method getMsg (line 33) | public String getMsg() {
    method setMsg (line 37) | public void setMsg(String msg) {

FILE: spring-cloud-alibaba-examples/rocketmq-example/rocketmq-orderly-consume-example/src/main/java/com/alibaba/cloud/examples/orderly/OrderlyMessageQueueSelector.java
  class OrderlyMessageQueueSelector (line 35) | @Component
    method select (line 47) | @Override

FILE: spring-cloud-alibaba-examples/rocketmq-example/rocketmq-orderly-consume-example/src/main/java/com/alibaba/cloud/examples/orderly/RocketMQOrderlyConsumeApplication.java
  class RocketMQOrderlyConsumeApplication (line 40) | @SpringBootApplication
    method main (line 53) | public static void main(String[] args) {
    method producer (line 57) | @Bean
    method consumer (line 72) | @Bean

FILE: spring-cloud-alibaba-examples/rocketmq-example/rocketmq-pollable-consume-example/src/main/java/com/alibaba/cloud/examples/pollable/RocketMQPollableConsumeApplication.java
  class RocketMQPollableConsumeApplication (line 42) | @SpringBootApplication
    method main (line 51) | public static void main(String[] args) {
    method producer (line 72) | @Bean

FILE: spring-cloud-alibaba-examples/rocketmq-example/rocketmq-sql-consume-example/src/main/java/com/alibaba/cloud/examples/sql/RocketMQSqlConsumeApplication.java
  class RocketMQSqlConsumeApplication (line 39) | @SpringBootApplication
    method main (line 45) | public static void main(String[] args) {
    method producer (line 59) | @Bean
    method consumer (line 75) | @Bean

FILE: spring-cloud-alibaba-examples/rocketmq-example/rocketmq-tx-example/src/main/java/com/alibaba/cloud/examples/tx/RocketMQTxApplication.java
  class RocketMQTxApplication (line 40) | @SpringBootApplication
    method main (line 46) | public static void main(String[] args) {
    method producer (line 51) | @Bean
    method consumer (line 66) | @Bean

FILE: spring-cloud-alibaba-examples/rocketmq-example/rocketmq-tx-example/src/main/java/com/alibaba/cloud/examples/tx/TransactionListenerImpl.java
  class TransactionListenerImpl (line 29) | @Component("myTransactionListener")
    method executeLocalTransaction (line 38) | @Override
    method checkLocalTransaction (line 59) | @Override

FILE: spring-cloud-alibaba-examples/seata-example/account-service/src/main/java/com/alibaba/cloud/examples/AccountApplication.java
  class AccountApplication (line 25) | @SpringBootApplication
    method main (line 28) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/seata-example/account-service/src/main/java/com/alibaba/cloud/examples/AccountController.java
  class AccountController (line 32) | @RestController
    method AccountController (line 45) | public AccountController(JdbcTemplate jdbcTemplate) {
    method account (line 50) | @PostMapping(value = "/account", produces = "application/json")

FILE: spring-cloud-alibaba-examples/seata-example/account-service/src/main/java/com/alibaba/cloud/examples/DatabaseConfiguration.java
  class DatabaseConfiguration (line 28) | @Configuration
    method jdbcTemplate (line 39) | @Bean

FILE: spring-cloud-alibaba-examples/seata-example/all.sql
  type `undo_log` (line 3) | CREATE TABLE `undo_log` (
  type `global_table` (line 19) | CREATE TABLE IF NOT EXISTS `global_table`
  type `branch_table` (line 39) | CREATE TABLE IF NOT EXISTS `branch_table`
  type `lock_table` (line 58) | CREATE TABLE IF NOT EXISTS `lock_table`
  type `distributed_lock` (line 77) | CREATE TABLE IF NOT EXISTS `distributed_lock`
  type `storage_tbl` (line 93) | CREATE TABLE `storage_tbl` (
  type `order_tbl` (line 103) | CREATE TABLE `order_tbl` (
  type `account_tbl` (line 114) | CREATE TABLE `account_tbl` (

FILE: spring-cloud-alibaba-examples/seata-example/business-service/src/main/java/com/alibaba/cloud/examples/BusinessApplication.java
  class BusinessApplication (line 36) | @SpringBootApplication
    method main (line 46) | public static void main(String[] args) {
    method restTemplate (line 50) | @Bean
    type StorageService (line 55) | @FeignClient("storage-service")
      method storage (line 58) | @GetMapping(path = "/storage/{commodityCode}/{count}")
    type OrderService (line 64) | @FeignClient("order-service")
      method order (line 67) | @PostMapping(path = "/order")

FILE: spring-cloud-alibaba-examples/seata-example/business-service/src/main/java/com/alibaba/cloud/examples/HomeController.java
  class HomeController (line 38) | @RestController
    method HomeController (line 59) | public HomeController(RestTemplate restTemplate, OrderService orderSer...
    method rest (line 66) | @GlobalTransactional(timeoutMills = 300000, name = "spring-cloud-demo-...
    method feign (line 105) | @GlobalTransactional(timeoutMills = 300000, name = "spring-cloud-demo-...

FILE: spring-cloud-alibaba-examples/seata-example/business-service/src/main/java/com/alibaba/cloud/examples/Order.java
  class Order (line 21) | public class Order implements Serializable {
    method toString (line 48) | @Override

FILE: spring-cloud-alibaba-examples/seata-example/order-service/src/main/java/com/alibaba/cloud/examples/DatabaseConfiguration.java
  class DatabaseConfiguration (line 28) | @Configuration
    method jdbcTemplate (line 39) | @Bean

FILE: spring-cloud-alibaba-examples/seata-example/order-service/src/main/java/com/alibaba/cloud/examples/Order.java
  class Order (line 21) | public class Order implements Serializable {
    method toString (line 48) | @Override

FILE: spring-cloud-alibaba-examples/seata-example/order-service/src/main/java/com/alibaba/cloud/examples/OrderApplication.java
  class OrderApplication (line 27) | @SpringBootApplication
    method main (line 30) | public static void main(String[] args) {
    method restTemplate (line 34) | @Bean

FILE: spring-cloud-alibaba-examples/seata-example/order-service/src/main/java/com/alibaba/cloud/examples/OrderController.java
  class OrderController (line 45) | @RestController
    method OrderController (line 64) | public OrderController(JdbcTemplate jdbcTemplate, RestTemplate restTem...
    method order (line 70) | @PostMapping(value = "/order", produces = "application/json")
    method calculate (line 116) | private int calculate(String commodityId, int orderCount) {
    method invokerAccountService (line 120) | private void invokerAccountService(int orderMoney) {

FILE: spring-cloud-alibaba-examples/seata-example/storage-service/src/main/java/com/alibaba/cloud/examples/StorageApplication.java
  class StorageApplication (line 25) | @SpringBootApplication
    method main (line 28) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/seata-example/storage-service/src/main/java/com/alibaba/cloud/examples/config/DatabaseConfiguration.java
  class DatabaseConfiguration (line 28) | @Configuration
    method jdbcTemplate (line 40) | @Bean

FILE: spring-cloud-alibaba-examples/seata-example/storage-service/src/main/java/com/alibaba/cloud/examples/controller/StorageController.java
  class StorageController (line 31) | @RestController
    method StorageController (line 42) | public StorageController(JdbcTemplate jdbcTemplate) {
    method echo (line 46) | @GetMapping(value = "/storage/{commodityCode}/{count}", produces = "ap...

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-circuitbreaker-example/src/main/java/com/alibaba/cloud/examples/FeignCircuitBreakerApplication.java
  class FeignCircuitBreakerApplication (line 26) | @SpringBootApplication
    method main (line 30) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-circuitbreaker-example/src/main/java/com/alibaba/cloud/examples/controller/ApiController.java
  class ApiController (line 28) | @RestController
    method defaultConfig (line 31) | @GetMapping("/default/{ok}")
    method feignConfig (line 39) | @GetMapping("/feign/{ok}")
    method feignMethodConfig (line 47) | @GetMapping("/feignMethod/{ok}")

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-circuitbreaker-example/src/main/java/com/alibaba/cloud/examples/controller/TestController.java
  class TestController (line 32) | @RestController
    method testDefault (line 40) | @GetMapping("/test/default/{ok}")
    method testFeign (line 45) | @GetMapping("/test/feign/{ok}")
    method testFeignMethod (line 50) | @GetMapping("/test/feignMethod/{ok}")

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-circuitbreaker-example/src/main/java/com/alibaba/cloud/examples/feign/OrderClient.java
  type OrderClient (line 28) | @FeignClient(value = "order", url = "http://localhost:${server.port}", f...
    method defaultConfig (line 31) | @GetMapping("/default/{ok}")

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-circuitbreaker-example/src/main/java/com/alibaba/cloud/examples/feign/OrderClientFallBack.java
  class OrderClientFallBack (line 26) | @Component
    method defaultConfig (line 28) | @Override

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-circuitbreaker-example/src/main/java/com/alibaba/cloud/examples/feign/UserClient.java
  type UserClient (line 28) | @FeignClient(value = "user", url = "http://localhost:${server.port}", fa...
    method feignMethod (line 31) | @GetMapping("/feignMethod/{ok}")
    method feign (line 34) | @GetMapping("/feign/{ok}")

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-circuitbreaker-example/src/main/java/com/alibaba/cloud/examples/feign/UserClientFallBack.java
  class UserClientFallBack (line 26) | @Component
    method feignMethod (line 28) | @Override
    method feign (line 33) | @Override

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-core-example/src/main/java/com/alibaba/cloud/examples/ExceptionUtil.java
  class ExceptionUtil (line 28) | public final class ExceptionUtil {
    method ExceptionUtil (line 30) | private ExceptionUtil() {
    method handleException (line 34) | public static SentinelClientHttpResponse handleException(HttpRequest r...

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-core-example/src/main/java/com/alibaba/cloud/examples/JsonFlowRuleListConverter.java
  class JsonFlowRuleListConverter (line 29) | public class JsonFlowRuleListConverter implements Converter<String, List...
    method convert (line 31) | @Override

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-core-example/src/main/java/com/alibaba/cloud/examples/SentinelCoreApplication.java
  class SentinelCoreApplication (line 37) | @SpringBootApplication
    method restTemplate (line 40) | @Bean
    method restTemplate2 (line 47) | @Bean
    method myConverter (line 52) | @Bean
    method defaultConfig (line 57) | @Bean
    method main (line 69) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-core-example/src/main/java/com/alibaba/cloud/examples/TestController.java
  class TestController (line 30) | @RestController
    method hello (line 39) | @GetMapping("/hello")
    method aa (line 45) | @GetMapping("/aa")
    method test1 (line 51) | @GetMapping("/test")
    method client (line 56) | @GetMapping("/template")
    method slow (line 61) | @GetMapping("/slow")

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-core-example/src/main/java/com/alibaba/cloud/examples/WebMvcConfiguration.java
  class WebMvcConfiguration (line 27) | @Configuration
    method addViewControllers (line 31) | @Override

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-openfeign-example/src/main/java/com/alibaba/cloud/examples/OpenFeignApplication.java
  class OpenFeignApplication (line 28) | @EnableFeignClients
    method main (line 32) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-openfeign-example/src/main/java/com/alibaba/cloud/examples/configuration/EchoServiceFallbackFactory.java
  class EchoServiceFallbackFactory (line 26) | @Component
    method create (line 28) | @Override

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-openfeign-example/src/main/java/com/alibaba/cloud/examples/configuration/HttpbinClient.java
  type HttpbinClient (line 29) | @FeignClient(name = "openfeign-example", url = "https://httpbin.org", co...
    method delay (line 32) | @GetMapping("/delay/3")
    method status500 (line 35) | @GetMapping("/status/500")
    method get (line 39) | @GetMapping("/get")

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-openfeign-example/src/main/java/com/alibaba/cloud/examples/configuration/HttpbinClientFallback.java
  class HttpbinClientFallback (line 25) | public class HttpbinClientFallback implements HttpbinClient {
    method delay (line 27) | @Override
    method status500 (line 32) | @Override
    method get (line 37) | @Override
    method HttpbinClientFallback (line 44) | HttpbinClientFallback(Throwable throwable) {

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-openfeign-example/src/main/java/com/alibaba/cloud/examples/configuration/SentinelRulesConfiguration.java
  class SentinelRulesConfiguration (line 35) | @Component
    method init (line 42) | @PostConstruct

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-openfeign-example/src/main/java/com/alibaba/cloud/examples/controller/TestController.java
  class TestController (line 29) | @RestController
    method delay (line 35) | @GetMapping("/rt")
    method exp (line 40) | @GetMapping("/exp")
    method get (line 45) | @GetMapping("/get")

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-resttemplate-example/src/main/java/com/alibaba/cloud/examples/RestTemplateApplication.java
  class RestTemplateApplication (line 26) | @SpringBootApplication
    method main (line 29) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-resttemplate-example/src/main/java/com/alibaba/cloud/examples/configuration/RestTemplateConfiguration.java
  class RestTemplateConfiguration (line 31) | @Configuration
    method restTemplate (line 34) | @LoadBalanced

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-resttemplate-example/src/main/java/com/alibaba/cloud/examples/configuration/SentinelRulesConfiguration.java
  class SentinelRulesConfiguration (line 36) | @Component
    method init (line 42) | @PostConstruct

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-resttemplate-example/src/main/java/com/alibaba/cloud/examples/controller/TestController.java
  class TestController (line 28) | @RestController
    method exp (line 34) | @GetMapping("/exp")
    method rt (line 39) | @GetMapping("/rt")
    method get (line 44) | @GetMapping("/get")

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-resttemplate-example/src/test/java/com/alibaba/cloud/examples/RestTemplateApplicationTest.java
  class RestTemplateApplicationTest (line 27) | @Disabled("For debugging")
    method runWithSpringAotModeAfterProcessAot (line 35) | @Test

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-spring-cloud-gateway-example/src/main/java/com/alibaba/cloud/examples/MySCGConfiguration.java
  class MySCGConfiguration (line 33) | @Configuration
    method blockRequestHandler (line 36) | @Bean

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-spring-cloud-gateway-example/src/main/java/com/alibaba/cloud/examples/RulesWebFluxController.java
  class RulesWebFluxController (line 36) | @RestController
    method apiRules (line 39) | @GetMapping("/api")
    method apiGateway (line 44) | @GetMapping("/gateway")
    method apiFlow (line 49) | @GetMapping("/flow")

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-spring-cloud-gateway-example/src/main/java/com/alibaba/cloud/examples/SentinelSpringCloudGatewayApplication.java
  class SentinelSpringCloudGatewayApplication (line 25) | @SpringBootApplication
    method main (line 28) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-webflux-example/src/main/java/com/alibaba/cloud/examples/MyConfiguration.java
  class MyConfiguration (line 41) | @Configuration
    method blockRequestHandler (line 44) | @Bean
    method slowCustomizer (line 56) | @Bean

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-webflux-example/src/main/java/com/alibaba/cloud/examples/SentinelWebFluxApplication.java
  class SentinelWebFluxApplication (line 25) | @SpringBootApplication
    method main (line 28) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/sentinel-example/sentinel-webflux-example/src/main/java/com/alibaba/cloud/examples/SentinelWebFluxController.java
  class SentinelWebFluxController (line 32) | @RestController
    method mono (line 38) | @GetMapping("/mono")
    method test (line 45) | @GetMapping("/test")
    method flux (line 52) | @GetMapping("/flux")
    method cbSlow (line 59) | @GetMapping("/cbSlow")
    method cbError (line 70) | @GetMapping("/cbError")

FILE: spring-cloud-alibaba-examples/spring-cloud-alibaba-sidecar-examples/spring-cloud-alibaba-sidecar-consul-example/src/main/java/com/alibaba/cloud/sidecar/DemoApplication.java
  class DemoApplication (line 24) | @SpringBootApplication
    method main (line 30) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/spring-cloud-alibaba-sidecar-examples/spring-cloud-alibaba-sidecar-nacos-example/src/main/java/com/alibaba/cloud/sidecar/DemoApplication.java
  class DemoApplication (line 24) | @SpringBootApplication
    method main (line 30) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/spring-cloud-bus-rocketmq-example/src/main/java/com/alibaba/cloud/examples/rocketmq/RocketMQBusApplication.java
  class RocketMQBusApplication (line 39) | @RestController
    method main (line 44) | public static void main(String[] args) {
    method publish (line 72) | @GetMapping("/bus/event/publish/user")
    method onEvent (line 87) | @EventListener
    method onAckEvent (line 93) | @EventListener

FILE: spring-cloud-alibaba-examples/spring-cloud-bus-rocketmq-example/src/main/java/com/alibaba/cloud/examples/rocketmq/User.java
  class User (line 25) | public class User {
    method getId (line 31) | public Long getId() {
    method setId (line 35) | public void setId(Long id) {
    method getName (line 39) | public String getName() {
    method setName (line 43) | public void setName(String name) {
    method toString (line 47) | @Override

FILE: spring-cloud-alibaba-examples/spring-cloud-bus-rocketmq-example/src/main/java/com/alibaba/cloud/examples/rocketmq/UserRemoteApplicationEvent.java
  class UserRemoteApplicationEvent (line 27) | public class UserRemoteApplicationEvent extends RemoteApplicationEvent {
    method UserRemoteApplicationEvent (line 31) | public UserRemoteApplicationEvent() {
    method UserRemoteApplicationEvent (line 34) | public UserRemoteApplicationEvent(Object source, User user, String ori...
    method setUser (line 40) | public void setUser(User user) {
    method getUser (line 44) | public User getUser() {

FILE: spring-cloud-alibaba-examples/spring-cloud-scheduling-example/src/main/java/com/alibaba/cloud/examples/schedule/ScheduleApplication.java
  class ScheduleApplication (line 28) | @SpringBootApplication
    method main (line 32) | public static void main(String[] args) {

FILE: spring-cloud-alibaba-examples/spring-cloud-scheduling-example/src/main/java/com/alibaba/cloud/examples/schedule/job/SimpleJob.java
  class SimpleJob (line 32) | @Component
    method job1 (line 40) | @Scheduled(cron = "0 */1 * * * ?")
    method job2 (line 51) | @Scheduled(cron = "0 */1 * * * ?")

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosConfigAutoConfiguration.java
  class NacosConfigAutoConfiguration (line 35) | @Configuration(proxyBeanMethods = false)
    method nacosConfigProperties (line 41) | @Bean
    method nacosRefreshHistory (line 56) | @Bean
    method nacosConfigManager (line 61) | @Bean
    method nacosAnnotationProcessor (line 66) | @Bean
    method nacosContextRefresher (line 71) | @Bean

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosConfigEnabledCondition.java
  class NacosConfigEnabledCondition (line 26) | public class NacosConfigEnabledCondition implements Condition {
    method matches (line 27) | @Override

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosConfigManager.java
  class NacosConfigManager (line 31) | public class NacosConfigManager {
    method NacosConfigManager (line 41) | public NacosConfigManager(NacosConfigProperties nacosConfigProperties) {
    method getInstance (line 45) | public static NacosConfigManager getInstance() {
    method getInstance (line 49) | public static NacosConfigManager getInstance(NacosConfigProperties pro...
    method createConfigService (line 65) | private ConfigService createConfigService(
    method getConfigService (line 81) | public ConfigService getConfigService() {
    method getNacosConfigProperties (line 88) | public NacosConfigProperties getNacosConfigProperties() {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosConfigProperties.java
  class NacosConfigProperties (line 68) | public class NacosConfigProperties {
    method init (line 198) | @PostConstruct
    method overrideFromEnv (line 203) | private void overrideFromEnv() {
    method getServerAddr (line 231) | public String getServerAddr() {
    method setServerAddr (line 235) | public void setServerAddr(String serverAddr) {
    method getUsername (line 239) | public String getUsername() {
    method setUsername (line 243) | public void setUsername(String username) {
    method getPassword (line 247) | public String getPassword() {
    method setPassword (line 251) | public void setPassword(String password) {
    method getPrefix (line 255) | public String getPrefix() {
    method setPrefix (line 259) | public void setPrefix(String prefix) {
    method getFileExtension (line 263) | public String getFileExtension() {
    method setFileExtension (line 267) | public void setFileExtension(String fileExtension) {
    method getGroup (line 271) | public String getGroup() {
    method setGroup (line 275) | public void setGroup(String group) {
    method getTimeout (line 279) | public int getTimeout() {
    method setTimeout (line 283) | public void setTimeout(int timeout) {
    method getMaxRetry (line 287) | public String getMaxRetry() {
    method setMaxRetry (line 291) | public void setMaxRetry(String maxRetry) {
    method getConfigLongPollTimeout (line 295) | public String getConfigLongPollTimeout() {
    method setConfigLongPollTimeout (line 299) | public void setConfigLongPollTimeout(String configLongPollTimeout) {
    method getConfigRetryTime (line 303) | public String getConfigRetryTime() {
    method setConfigRetryTime (line 307) | public void setConfigRetryTime(String configRetryTime) {
    method getEnableRemoteSyncConfig (line 311) | public Boolean getEnableRemoteSyncConfig() {
    method setEnableRemoteSyncConfig (line 315) | public void setEnableRemoteSyncConfig(Boolean enableRemoteSyncConfig) {
    method getEndpoint (line 319) | public String getEndpoint() {
    method setEndpoint (line 323) | public void setEndpoint(String endpoint) {
    method getNamespace (line 327) | public String getNamespace() {
    method setNamespace (line 331) | public void setNamespace(String namespace) {
    method getAccessKey (line 335) | public String getAccessKey() {
    method setAccessKey (line 339) | public void setAccessKey(String accessKey) {
    method getSecretKey (line 343) | public String getSecretKey() {
    method setSecretKey (line 347) | public void setSecretKey(String secretKey) {
    method getRamRoleName (line 351) | public String getRamRoleName() {
    method setRamRoleName (line 355) | public void setRamRoleName(String ramRoleName) {
    method getEncode (line 359) | public String getEncode() {
    method setEncode (line 363) | public void setEncode(String encode) {
    method getContextPath (line 367) | public String getContextPath() {
    method setContextPath (line 371) | public void setContextPath(String contextPath) {
    method getClusterName (line 375) | public String getClusterName() {
    method setClusterName (line 379) | public void setClusterName(String clusterName) {
    method getName (line 383) | public String getName() {
    method setName (line 387) | public void setName(String name) {
    method getEnvironment (line 391) | public Environment getEnvironment() {
    method setEnvironment (line 395) | public void setEnvironment(Environment environment) {
    method getSharedConfigs (line 399) | public List<Config> getSharedConfigs() {
    method setSharedConfigs (line 403) | public void setSharedConfigs(List<Config> sharedConfigs) {
    method getExtensionConfigs (line 407) | public List<Config> getExtensionConfigs() {
    method setExtensionConfigs (line 411) | public void setExtensionConfigs(List<Config> extensionConfigs) {
    method isRefreshEnabled (line 415) | public boolean isRefreshEnabled() {
    method setRefreshEnabled (line 419) | public void setRefreshEnabled(boolean refreshEnabled) {
    method getSharedDataids (line 427) | @Deprecated
    method setSharedDataids (line 441) | @Deprecated
    method getRefreshableDataids (line 456) | @Deprecated
    method setRefreshableDataids (line 468) | @Deprecated
    method compatibleSharedConfigs (line 478) | private void compatibleSharedConfigs(List<Config> configList) {
    method getExtConfig (line 501) | @Deprecated
    method setExtConfig (line 507) | @Deprecated
    method configServiceInstance (line 516) | @Deprecated
    method getConfigServiceProperties (line 526) | @Deprecated
    method assembleConfigServiceProperties (line 536) | public Properties assembleConfigServiceProperties() {
    method resolveNamespace (line 578) | private String resolveNamespace() {
    method enrichNacosConfigProperties (line 588) | protected void enrichNacosConfigProperties(Properties nacosConfigPrope...
    method resolveKey (line 600) | protected String resolveKey(String key) {
    method mask (line 615) | private static String mask(String value) {
    method toString (line 619) | @Override
    class Config (line 646) | public static class Config {
      method Config (line 663) | public Config() {
      method Config (line 666) | public Config(String dataId) {
      method Config (line 670) | public Config(String dataId, String group) {
      method Config (line 675) | public Config(String dataId, boolean refresh) {
      method Config (line 680) | public Config(String dataId, String group, boolean refresh) {
      method getDataId (line 685) | public String getDataId() {
      method setDataId (line 689) | public Config setDataId(String dataId) {
      method getGroup (line 694) | public String getGroup() {
      method setGroup (line 698) | public Config setGroup(String group) {
      method isRefresh (line 703) | public boolean isRefresh() {
      method setRefresh (line 707) | public Config setRefresh(boolean refresh) {
      method toString (line 712) | @Override
      method equals (line 718) | @Override
      method hashCode (line 731) | @Override

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosPropertiesPrefixProvider.java
  type NacosPropertiesPrefixProvider (line 22) | public interface NacosPropertiesPrefixProvider {
    method getPrefix (line 24) | String getPrefix();

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosPropertiesPrefixer.java
  class NacosPropertiesPrefixer (line 30) | public final class NacosPropertiesPrefixer {
    method NacosPropertiesPrefixer (line 37) | private NacosPropertiesPrefixer() {
    method getPrefixFromSpi (line 40) | private static String getPrefixFromSpi() {
    method getPrefix (line 48) | public static String getPrefix(Environment environment) {
    method getPrefix (line 66) | public static String getPrefix(Binder binder) {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosPropertySourceRepository.java
  class NacosPropertySourceRepository (line 29) | public final class NacosPropertySourceRepository {
    method NacosPropertySourceRepository (line 33) | private NacosPropertySourceRepository() {
    method getAll (line 40) | public static List<NacosPropertySource> getAll() {
    method collectNacosPropertySources (line 48) | @Deprecated
    method getNacosPropertySource (line 61) | @Deprecated
    method collectNacosPropertySource (line 66) | public static void collectNacosPropertySource(
    method getNacosPropertySource (line 73) | public static NacosPropertySource getNacosPropertySource(String dataId,
    method getMapKey (line 78) | public static String getMapKey(String dataId, String group) {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/annotation/AbstractConfigChangeListener.java
  class AbstractConfigChangeListener (line 26) | public abstract class AbstractConfigChangeListener extends AbstractShare...
    method getTarget (line 32) | @Override
    method setTarget (line 37) | @Override
    method AbstractConfigChangeListener (line 42) | public AbstractConfigChangeListener(Object target) {
    method setLastContent (line 46) | protected void setLastContent(String lastContent) {
    method innerReceive (line 50) | @Override
    method type (line 65) | private String type(String dataId) {
    method receiveConfigChange (line 72) | abstract void receiveConfigChange(ConfigChangeEvent event);

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/annotation/CustomDateDeserializer.java
  class CustomDateDeserializer (line 28) | public class CustomDateDeserializer extends JsonDeserializer<Date> {
    method CustomDateDeserializer (line 34) | public CustomDateDeserializer() {
    method deserialize (line 38) | @Override

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/annotation/JsonUtils.java
  class JsonUtils (line 28) | final class JsonUtils {
    method JsonUtils (line 30) | private JsonUtils() {
    method toObj (line 49) | public static <T> T toObj(String json, Class<T> cls) {
    method toObj (line 58) | public static <T> T toObj(String json, Type type) {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/annotation/NacosAnnotationProcessor.java
  class NacosAnnotationProcessor (line 59) | public class NacosAnnotationProcessor implements BeanPostProcessor, Prio...
    method getOrder (line 68) | @Override
    method getGroupKeyContent (line 76) | private String getGroupKeyContent(String dataId, String group, boolean...
    method postProcessBeforeInitialization (line 110) | @Override
    method postProcessAfterInitialization (line 116) | @Override
    method getBeanFields (line 135) | private List<Field> getBeanFields(Class clazz) {
    method getBeanMethods (line 141) | private List<Method> getBeanMethods(Class clazz) {
    method handleFiledAnnotation (line 147) | private void handleFiledAnnotation(Object bean, String beanName, Field...
    method handleBeanNacosConfigAnnotation (line 154) | private void handleBeanNacosConfigAnnotation(String dataId, String gro...
    method handleMethodNacosConfigKeysChangeListener (line 245) | private void handleMethodNacosConfigKeysChangeListener(NacosConfigKeys...
    method wrapArrayToSet (line 291) | private Set<String> wrapArrayToSet(String... arrayKeys) {
    method methodSignature (line 295) | private String methodSignature(Method method) {
    method handleMethodNacosConfigListener (line 309) | private void handleMethodNacosConfigListener(NacosConfigListener annot...
    method convertContentToTargetType (line 416) | Object convertContentToTargetType(String rawContent, Type type) {
    method handleFiledNacosConfigAnnotation (line 438) | private void handleFiledNacosConfigAnnotation(NacosConfig annotation, ...
    method handleFiledNacosConfigAnnotationInner (line 451) | private void handleFiledNacosConfigAnnotationInner(String dataId, Stri...
    method handPrimitiveFiled (line 546) | private boolean handPrimitiveFiled(Field field, String dataId, String ...
    method setPrimitiveFiled (line 634) | private boolean setPrimitiveFiled(Field filed, Object bean, String val...
    method invokePrimitiveMethod (line 671) | private boolean invokePrimitiveMethod(Method method, Object bean, Stri...
    method getDestContent (line 709) | private String getDestContent(String content, String key) throws Excep...
    method handleMethodAnnotation (line 719) | private void handleMethodAnnotation(final Object bean, String beanName...
    method setApplicationContext (line 758) | @Override
    method getNacosConfigManager (line 763) | private NacosConfigManager getNacosConfigManager() {
    method getNullPropertyNames (line 771) | private static String[] getNullPropertyNames(Object source) {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/annotation/NacosConfigRefreshableListener.java
  class NacosConfigRefreshableListener (line 21) | public abstract class NacosConfigRefreshableListener extends AbstractLis...
    method NacosConfigRefreshableListener (line 25) | NacosConfigRefreshableListener(Object target) {
    method getTarget (line 29) | public Object getTarget() {
    method setTarget (line 33) | @Override

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/annotation/NacosPropertiesKeyListener.java
  class NacosPropertiesKeyListener (line 25) | public abstract class NacosPropertiesKeyListener extends AbstractConfigC...
    method NacosPropertiesKeyListener (line 31) | NacosPropertiesKeyListener(Object target) {
    method NacosPropertiesKeyListener (line 35) | NacosPropertiesKeyListener(Object target, Set<String> interestedKeys) {
    method NacosPropertiesKeyListener (line 40) | public NacosPropertiesKeyListener(Object target, Set<String> intereste...
    method receiveConfigChange (line 46) | @Override
    method matchesInterestedKey (line 84) | private boolean matchesInterestedKey(String changedKey, Set<String> in...
    method toString (line 97) | @Override
    method configChanged (line 103) | public abstract void configChanged(ConfigChangeEvent event);

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/annotation/ObjectUtils.java
  class ObjectUtils (line 23) | final class ObjectUtils {
    method ObjectUtils (line 25) | private ObjectUtils() {
    method convertToObject (line 28) | public static Object convertToObject(String content, Type clazz) {
    method convertFormJsonContent (line 36) | private static Object convertFormJsonContent(String content, Type claz...

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/annotation/PropertiesUtils.java
  class PropertiesUtils (line 28) | final class PropertiesUtils {
    method PropertiesUtils (line 30) | private PropertiesUtils() {
    method convertToProperties (line 33) | public static Properties convertToProperties(String content) throws Ex...
    method convertFormPropertiesContent (line 45) | private static Properties convertFormPropertiesContent(String content)...
    method convertFormYamlContent (line 51) | private static Properties convertFormYamlContent(String content) {
    method flattenMap (line 62) | private static void flattenMap(String prefix, Map<String, Object> map,...

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/annotation/ScaYamlConfigChangeParser.java
  class ScaYamlConfigChangeParser (line 36) | public class ScaYamlConfigChangeParser extends YmlChangeParser {
    method ScaYamlConfigChangeParser (line 39) | public ScaYamlConfigChangeParser() {
    method doParse (line 43) | @Override
    method handleYamlException (line 65) | private void handleYamlException(MarkedYAMLException e) {
    method getFlattenedMap (line 75) | private Map<String, Object> getFlattenedMap(Map<String, Object> source) {
    method buildFlattenedMap (line 81) | private void buildFlattenedMap(Map<String, Object> result, Map<String,...

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/annotation/TargetRefreshable.java
  type TargetRefreshable (line 21) | interface TargetRefreshable extends Listener {
    method getTarget (line 23) | Object getTarget();
    method setTarget (line 25) | void setTarget(Object target);

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/client/NacosPropertySource.java
  class NacosPropertySource (line 36) | public class NacosPropertySource extends MapPropertySource {
    method NacosPropertySource (line 58) | NacosPropertySource(String group, String dataId, Map<String, Object> s...
    method NacosPropertySource (line 67) | public NacosPropertySource(List<PropertySource<?>> propertySources, St...
    method getSourceMap (line 73) | private static Map<String, Object> getSourceMap(String group, String d...
    method getGroup (line 116) | public String getGroup() {
    method getDataId (line 120) | public String getDataId() {
    method getTimestamp (line 124) | public Date getTimestamp() {
    method isRefreshable (line 128) | public boolean isRefreshable() {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/client/NacosPropertySourceBuilder.java
  class NacosPropertySourceBuilder (line 38) | public class NacosPropertySourceBuilder {
    method NacosPropertySourceBuilder (line 47) | public NacosPropertySourceBuilder(ConfigService configService, long ti...
    method getTimeout (line 52) | public long getTimeout() {
    method setTimeout (line 56) | public void setTimeout(long timeout) {
    method getConfigService (line 60) | public ConfigService getConfigService() {
    method setConfigService (line 64) | public void setConfigService(ConfigService configService) {
    method build (line 72) | public NacosPropertySource build(String dataId, String group, String f...
    method loadNacosData (line 82) | private List<PropertySource<?>> loadNacosData(String dataId, String gr...

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/configdata/ConfigPreference.java
  type ConfigPreference (line 32) | public enum ConfigPreference {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/configdata/NacosConfigDataLoadProperties.java
  class NacosConfigDataLoadProperties (line 28) | public class NacosConfigDataLoadProperties extends NacosConfigProperties {
    method enrichNacosConfigProperties (line 31) | @Override
    method getConfig (line 37) | Map<String, String> getConfig() {
    method setConfig (line 41) | void setConfig(Map<String, String> config) {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/configdata/NacosConfigDataLoader.java
  class NacosConfigDataLoader (line 57) | public class NacosConfigDataLoader implements ConfigDataLoader<NacosConf...
    method NacosConfigDataLoader (line 61) | public NacosConfigDataLoader(DeferredLogFactory logFactory) {
    method load (line 65) | @Override
    method doLoad (line 71) | public ConfigData doLoad(ConfigDataLoaderContext context,
    method getOptions (line 102) | private Option[] getOptions(ConfigDataLoaderContext context,
    method getPreference (line 116) | private ConfigPreference getPreference(ConfigDataLoaderContext context,
    method pullConfig (line 140) | private List<PropertySource<?>> pullConfig(ConfigService configService...
    method logLoadInfo (line 150) | private void logLoadInfo(String group, String dataId, String config) {
    method getBean (line 167) | protected <T> T getBean(ConfigDataLoaderContext context, Class<T> type) {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/configdata/NacosConfigDataLocationResolver.java
  class NacosConfigDataLocationResolver (line 58) | public class NacosConfigDataLocationResolver
    method NacosConfigDataLocationResolver (line 71) | public NacosConfigDataLocationResolver(DeferredLogFactory logFactory) {
    method getOrder (line 75) | @Override
    method loadProperties (line 80) | protected NacosConfigProperties loadProperties(
    method getBindHandler (line 111) | private BindHandler getBindHandler(ConfigDataLocationResolverContext c...
    method getLog (line 115) | protected Log getLog() {
    method isResolvable (line 119) | @Override
    method getPrefix (line 132) | protected String getPrefix() {
    method resolve (line 136) | @Override
    method resolveProfileSpecific (line 144) | @Override
    method loadConfigDataResources (line 162) | private List<NacosConfigDataResource> loadConfigDataResources(
    method preferenceFor (line 183) | private String preferenceFor(URI uri) {
    method getUri (line 187) | private URI getUri(ConfigDataLocation location, NacosConfigProperties ...
    method registerConfigManager (line 199) | private void registerConfigManager(NacosConfigProperties properties,
    method getUri (line 210) | private URI getUri(String uris) {
    method groupFor (line 224) | private String groupFor(URI uri, NacosConfigProperties properties) {
    method getQueryMap (line 229) | private Map<String, String> getQueryMap(URI uri) {
    method suffixFor (line 244) | private String suffixFor(URI uri, NacosConfigProperties properties) {
    method refreshEnabledFor (line 252) | private boolean refreshEnabledFor(URI uri, NacosConfigProperties prope...
    method dataIdFor (line 259) | private String dataIdFor(URI uri) {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/configdata/NacosConfigDataResource.java
  class NacosConfigDataResource (line 33) | public class NacosConfigDataResource extends ConfigDataResource {
    method NacosConfigDataResource (line 45) | public NacosConfigDataResource(NacosConfigProperties properties, boole...
    method getProperties (line 54) | public NacosConfigProperties getProperties() {
    method isOptional (line 58) | public boolean isOptional() {
    method getProfiles (line 62) | public String getProfiles() {
    method getAcceptedProfiles (line 66) | List<String> getAcceptedProfiles() {
    method getLog (line 70) | public Log getLog() {
    method getConfig (line 74) | public NacosItemConfig getConfig() {
    method equals (line 78) | @Override
    method hashCode (line 92) | @Override
    method toString (line 97) | @Override
    class NacosItemConfig (line 103) | public static class NacosItemConfig {
      method NacosItemConfig (line 110) | public NacosItemConfig() {
      method NacosItemConfig (line 113) | public NacosItemConfig(String group, String dataId, String suffix,
      method setGroup (line 122) | public NacosItemConfig setGroup(String group) {
      method setDataId (line 127) | public NacosItemConfig setDataId(String dataId) {
      method setSuffix (line 132) | public NacosItemConfig setSuffix(String suffix) {
      method setRefreshEnabled (line 137) | public NacosItemConfig setRefreshEnabled(boolean refreshEnabled) {
      method setPreference (line 142) | public NacosItemConfig setPreference(String preference) {
      method getGroup (line 147) | public String getGroup() {
      method getDataId (line 151) | public String getDataId() {
      method getSuffix (line 155) | public String getSuffix() {
      method isRefreshEnabled (line 159) | public boolean isRefreshEnabled() {
      method getPreference (line 163) | public String getPreference() {
      method equals (line 167) | @Override
      method hashCode (line 183) | @Override
      method toString (line 188) | @Override

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/constants/Constants.java
  class Constants (line 24) | public final class Constants {
    method Constants (line 26) | private Constants() {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/diagnostics/analyzer/NacosConnectionFailureAnalyzer.java
  class NacosConnectionFailureAnalyzer (line 28) | public class NacosConnectionFailureAnalyzer
    method analyze (line 31) | @Override

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/diagnostics/analyzer/NacosConnectionFailureException.java
  class NacosConnectionFailureException (line 25) | public class NacosConnectionFailureException extends RuntimeException {
    method NacosConnectionFailureException (line 29) | public NacosConnectionFailureException(String serverAddr, String messa...
    method NacosConnectionFailureException (line 34) | public NacosConnectionFailureException(String serverAddr, String message,
    method getServerAddr (line 40) | public String getServerAddr() {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/endpoint/NacosConfigEndpoint.java
  class NacosConfigEndpoint (line 39) | @Endpoint(id = "nacosconfig")
    method NacosConfigEndpoint (line 49) | public NacosConfigEndpoint(NacosConfigProperties properties,
    method invoke (line 55) | @ReadOperation

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/endpoint/NacosConfigEndpointAutoConfiguration.java
  class NacosConfigEndpointAutoConfiguration (line 37) | @ConditionalOnWebApplication
    method nacosConfigEndpoint (line 48) | @ConditionalOnMissingBean
    method nacosConfigHealthIndicator (line 56) | @Bean

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/endpoint/NacosConfigHealthIndicator.java
  class NacosConfigHealthIndicator (line 31) | public class NacosConfigHealthIndicator extends AbstractHealthIndicator {
    method NacosConfigHealthIndicator (line 45) | public NacosConfigHealthIndicator(ConfigService configService) {
    method doHealthCheck (line 49) | @Override

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/parser/AbstractPropertySourceLoader.java
  class AbstractPropertySourceLoader (line 47) | public abstract class AbstractPropertySourceLoader implements PropertySo...
    method canLoad (line 62) | protected boolean canLoad(String name, Resource resource) {
    method load (line 76) | @Override
    method doLoad (line 95) | protected abstract List<PropertySource<?>> doLoad(String name, Resourc...
    method flattenedMap (line 98) | protected void flattenedMap(Map<String, Object> result, Map<String, Ob...

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/parser/NacosByteArrayResource.java
  class NacosByteArrayResource (line 26) | public class NacosByteArrayResource extends ByteArrayResource {
    method NacosByteArrayResource (line 34) | public NacosByteArrayResource(byte[] byteArray) {
    method NacosByteArrayResource (line 43) | public NacosByteArrayResource(byte[] byteArray, String description) {
    method setFilename (line 47) | public void setFilename(String filename) {
    method getFilename (line 55) | @Override

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/parser/NacosDataParserHandler.java
  class NacosDataParserHandler (line 44) | public final class NacosDataParserHandler {
    method NacosDataParserHandler (line 53) | private NacosDataParserHandler() {
    method parseNacosData (line 66) | public List<PropertySource<?>> parseNacosData(String configName, Strin...
    method canLoadFileExtension (line 122) | private boolean canLoadFileExtension(PropertySourceLoader loader, Stri...
    method getFileExtension (line 132) | public String getFileExtension(String name) {
    method getFileName (line 143) | private String getFileName(String name, String extension) {
    method getInstance (line 160) | public static NacosDataParserHandler getInstance() {
    class ParserHandler (line 164) | private static final class ParserHandler {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/parser/NacosJsonPropertySourceLoader.java
  class NacosJsonPropertySourceLoader (line 35) | public class NacosJsonPropertySourceLoader extends AbstractPropertySourc...
    method getFileExtensions (line 46) | @Override
    method doLoad (line 61) | @Override
    method reloadMap (line 79) | protected Map<String, Object> reloadMap(Map<String, Object> map) {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/parser/NacosXmlPropertySourceLoader.java
  class NacosXmlPropertySourceLoader (line 48) | public class NacosXmlPropertySourceLoader extends AbstractPropertySource...
    method getOrder (line 63) | @Override
    method getFileExtensions (line 72) | @Override
    method doLoad (line 87) | @Override
    method parseXml2Map (line 96) | private Map<String, Object> parseXml2Map(Resource resource) throws IOE...
    method parseNodeList (line 113) | private void parseNodeList(NodeList nodeList, Map<String, Object> map,
    method parseNodeAttr (line 144) | private void parseNodeAttr(NamedNodeMap nodeMap, Map<String, Object> map,

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/proxy/druid/NacosDruidConfigFilter.java
  class NacosDruidConfigFilter (line 35) | public class NacosDruidConfigFilter extends FilterAdapter {
    method NacosDruidConfigFilter (line 43) | public NacosDruidConfigFilter(String proxyDataId) {
    method init (line 47) | @Override
    method convert (line 98) | private static Properties convert(String config) throws Exception {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/proxy/druid/NacosDruidFilterConfiguration.java
  class NacosDruidFilterConfiguration (line 27) | @Configuration
    method nacosDruidFilter (line 30) | @Bean

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/refresh/NacosConfigRefreshEvent.java
  class NacosConfigRefreshEvent (line 21) | public class NacosConfigRefreshEvent extends ApplicationEvent {
    method NacosConfigRefreshEvent (line 29) | public NacosConfigRefreshEvent(Object source, Object event, String eve...
    method getEvent (line 35) | public Object getEvent() {
    method getEventDesc (line 39) | public String getEventDesc() {
    method getDataId (line 43) | public String getDataId() {
    method setDataId (line 47) | void setDataId(String dataId) {
    method getGroup (line 51) | public String getGroup() {
    method setGroup (line 55) | void setGroup(String group) {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/refresh/NacosContextRefresher.java
  class NacosContextRefresher (line 49) | public class NacosContextRefresher
    method NacosContextRefresher (line 69) | public NacosContextRefresher(NacosConfigManager nacosConfigManager,
    method getRefreshCount (line 77) | public static long getRefreshCount() {
    method refreshCountIncrement (line 81) | public static void refreshCountIncrement() {
    method onApplicationEvent (line 85) | @Override
    method setApplicationContext (line 93) | @Override
    method registerNacosListenersForApplications (line 101) | private void registerNacosListenersForApplications() {
    method registerNacosListener (line 114) | private void registerNacosListener(final String groupKey, final String...
    method getNacosConfigProperties (line 155) | public NacosConfigProperties getNacosConfigProperties() {
    method setNacosConfigProperties (line 159) | public NacosContextRefresher setNacosConfigProperties(
    method isRefreshEnabled (line 165) | public boolean isRefreshEnabled() {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/refresh/NacosPropertySourceRefreshListener.java
  class NacosPropertySourceRefreshListener (line 43) | public class NacosPropertySourceRefreshListener implements BeanPostProce...
    method NacosPropertySourceRefreshListener (line 56) | public NacosPropertySourceRefreshListener(NacosConfigManager nacosConf...
    method postProcessBeforeInitialization (line 60) | @Override
    method supportsEventType (line 71) | @Override
    method setApplicationContext (line 76) | @Override
    method handle (line 81) | public void handle(ApplicationReadyEvent event) {
    method onApplicationEvent (line 85) | @Override
    method handle (line 96) | public void handle(NacosConfigRefreshEvent event) {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/refresh/NacosRefreshHistory.java
  class NacosRefreshHistory (line 34) | public class NacosRefreshHistory {
    method NacosRefreshHistory (line 47) | public NacosRefreshHistory() {
    method add (line 62) | @Deprecated
    method addRefreshRecord (line 71) | public void addRefreshRecord(String dataId, String group, String data) {
    method getRecords (line 79) | public LinkedList<Record> getRecords() {
    method md5 (line 83) | private String md5(String data) {
    class Record (line 99) | static class Record {
      method Record (line 109) | Record(String timestamp, String dataId, String group, String md5,
      method getTimestamp (line 117) | public String getTimestamp() {
      method getDataId (line 121) | public String getDataId() {
      method getGroup (line 125) | public String getGroup() {
      method getMd5 (line 129) | public String getMd5() {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/refresh/NacosSnapshotConfigManager.java
  class NacosSnapshotConfigManager (line 30) | public final class NacosSnapshotConfigManager {
    method NacosSnapshotConfigManager (line 32) | private NacosSnapshotConfigManager() {
    method formatConfigSnapshotKey (line 43) | private static String formatConfigSnapshotKey(String dataId, String gr...
    method getAndRemoveConfigSnapshot (line 47) | public static String getAndRemoveConfigSnapshot(String dataId, String ...
    method putConfigSnapshot (line 54) | public static void putConfigSnapshot(String dataId, String group, Stri...
    method removeConfigSnapshot (line 77) | public static void removeConfigSnapshot(String dataId, String group) {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/utils/NacosConfigUtils.java
  class NacosConfigUtils (line 22) | public final class NacosConfigUtils {
    method NacosConfigUtils (line 24) | private NacosConfigUtils() {
    method selectiveConvertUnicode (line 32) | public static String selectiveConvertUnicode(String configValue) {
    method isBaseLetter (line 51) | public static boolean isBaseLetter(char ch) {
    method isChinese (line 61) | public static boolean isChinese(char c) {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/utils/PropertySourcesUtils.java
  class PropertySourcesUtils (line 39) | public final class PropertySourcesUtils {
    method PropertySourcesUtils (line 41) | private PropertySourcesUtils() {
    method getSubProperties (line 57) | public static Map<String, Object> getSubProperties(Iterable<PropertySo...
    method getSubProperties (line 77) | public static Map<String, Object> getSubProperties(ConfigurableEnviron...
    method normalizePrefix (line 88) | public static String normalizePrefix(String prefix) {
    method getSubProperties (line 100) | public static Map<String, Object> getSubProperties(PropertySources pro...
    method getSubProperties (line 114) | public static Map<String, Object> getSubProperties(PropertySources pro...
    method getPropertyNames (line 145) | public static String[] getPropertyNames(PropertySource propertySource) {

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/utils/StringUtils.java
  class StringUtils (line 24) | public final class StringUtils {
    method StringUtils (line 39) | private StringUtils() {
    method isEmpty (line 63) | public static boolean isEmpty(final CharSequence cs) {
    method isNotEmpty (line 83) | public static boolean isNotEmpty(final CharSequence cs) {
    method isBlank (line 102) | public static boolean isBlank(final CharSequence cs) {
    method isNotBlank (line 137) | public static boolean isNotBlank(final CharSequence cs) {
    method trim (line 165) | public static String trim(final String str) {
    method equals (line 196) | public static boolean equals(final CharSequence cs1, final CharSequenc...
    method regionMatches (line 220) | public static boolean regionMatches(final CharSequence cs, final boole...
    method substringAfter (line 285) | public static String substringAfter(String str, String separator) {
    method substringBetween (line 324) | public static String substringBetween(String str, String tag) {
    method substringBetween (line 358) | public static String substringBetween(String str, String open, String ...

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/test/java/com.alibaba.cloud.nacos/NacosConfigPropertiesTest.java
  class NacosConfigPropertiesTest (line 25) | public class NacosConfigPropertiesTest {
    method testSensitivePropertiesMaskedInToString (line 27) | @Test

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/test/java/com.alibaba.cloud.nacos/configdata/NacosConfigDataLocationResolverTest.java
  class NacosConfigDataLocationResolverTest (line 47) | public class NacosConfigDataLocationResolverTest {
    method setup (line 61) | @BeforeEach
    method testIsResolvable_givenIncorrectPrefix_thenReturnFalse (line 72) | @Test
    method testIsResolvable_givenCorrectPrefix_thenReturnTure (line 79) | @Test
    method testIsResolvable_givenDisable_thenReturnFalse (line 88) | @Test
    method testResolveProfileSpecific_givenNothing_thenReturnDefaultProfile (line 99) | @Test
    method testStartWithASlashIsOK (line 105) | @Test
    method testDataIdMustBeSpecified (line 118) | @Test
    method testInvalidDataId (line 125) | @Test
    method whenCustomizeSuffix_thenOverrideDefault (line 131) | @Test
    method testUrisInLocationShouldOverridesProperty (line 153) | @Test
    method testSetCommonPropertiesIsOK (line 167) | @Test
    method testCommonPropertiesHasLowerPriority (line 182) | @Test
    method testUri (line 200) | private List<NacosConfigDataResource> testUri(String locationUri,
    method whenNoneInBootstrapContext_thenCreateNewConfigClientProperties (line 208) | @Test
    method testResolveProfileSpecific (line 223) | private NacosConfigDataResource testResolveProfileSpecific() {
    method testResolveProfileSpecific (line 227) | private NacosConfigDataResource testResolveProfileSpecific(String acti...

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/test/java/com.alibaba.cloud.nacos/endpoint/NacosConfigEndpointTests.java
  class NacosConfigEndpointTests (line 45) | @SpringBootTest(classes = NacosConfigEndpointTests.TestConfig.class, web...
    method contextLoads (line 71) | @Test
    method checkoutAcmHealthIndicator (line 79) | private void checkoutAcmHealthIndicator() {
    method checkoutEndpoint (line 98) | private void checkoutEndpoint() throws Exception {
    class TestConfig (line 107) | @Configuration

FILE: spring-cloud-alibaba-starters/spring-alibaba-nacos-config/src/test/java/com/alibaba/cloud/nacos/annotation/NacosPropertiesKeyListenerTest.java
  class NacosPropertiesKeyListenerTest (line 36) | class NacosPropertiesKeyListenerTest {
    method exactKeyMatch (line 38) | @Test
    method arrayIndexedKeyMatchesBaseKey (line 48) | @Test
    method arrayIndexedKeyWithNestedPathMatchesBaseKey (line 58) | @Test
    method unrelatedKeyDoesNotMatch (line 68) | @Test
    method prefixMatchStillWorks (line 78) | @Test
    method emptyInterestedKeysPassesAllChanges (line 88) | @Test
    method createListener (line 98) | private NacosPropertiesKeyListener createListener(AtomicBoolean called...
    method buildEvent (line 109) | private ConfigChangeEvent buildEvent(String key) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-commons/src/main/java/com/alibaba/cloud/commons/context/support/PropertySourcesUtils.java
  class PropertySourcesUtils (line 39) | public final class PropertySourcesUtils {
    method PropertySourcesUtils (line 41) | private PropertySourcesUtils() {
    method getSubProperties (line 57) | public static Map<String, Object> getSubProperties(Iterable<PropertySo...
    method getSubProperties (line 77) | public static Map<String, Object> getSubProperties(ConfigurableEnviron...
    method normalizePrefix (line 88) | public static String normalizePrefix(String prefix) {
    method getSubProperties (line 100) | public static Map<String, Object> getSubProperties(PropertySources pro...
    method getSubProperties (line 114) | public static Map<String, Object> getSubProperties(PropertySources pro...
    method getPropertyNames (line 145) | public static String[] getPropertyNames(PropertySource propertySource) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-commons/src/main/java/com/alibaba/cloud/commons/io/Charsets.java
  class Charsets (line 30) | public final class Charsets {
    method Charsets (line 32) | private Charsets() {
    method requiredCharsets (line 48) | public static SortedMap<String, Charset> requiredCharsets() {
    method toCharset (line 66) | public static Charset toCharset(final Charset charset) {
    method toCharset (line 78) | public static Charset toCharset(final String charset) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-commons/src/main/java/com/alibaba/cloud/commons/io/FileUtils.java
  class FileUtils (line 31) | public final class FileUtils {
    method FileUtils (line 33) | private FileUtils() {
    method openInputStream (line 54) | public static FileInputStream openInputStream(final File file) throws ...
    method readFileToString (line 77) | public static String readFileToString(final File file, final Charset e...
    method readFileToString (line 94) | public static String readFileToString(final File file, final String en...
    method readFileToString (line 108) | @Deprecated

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-commons/src/main/java/com/alibaba/cloud/commons/io/IOUtils.java
  class IOUtils (line 32) | public final class IOUtils {
    method IOUtils (line 47) | private IOUtils() {
    method toString (line 65) | public static String toString(final InputStream input, final Charset e...
    method copy (line 92) | public static int copy(final Reader input, final Writer output) throws...
    method copy (line 116) | public static void copy(final InputStream input, final Writer output,
    method copy (line 138) | public static long copy(final InputStream input, final OutputStream ou...
    method copyLarge (line 157) | public static long copyLarge(final Reader input, final Writer output)
    method copyLarge (line 176) | public static long copyLarge(final Reader input, final Writer output,
    method copyLarge (line 202) | public static long copyLarge(final InputStream input, final OutputStre...
    method copyLarge (line 222) | public static long copyLarge(final InputStream input, final OutputStre...

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-commons/src/main/java/com/alibaba/cloud/commons/io/StringBuilderWriter.java
  class StringBuilderWriter (line 27) | public class StringBuilderWriter extends Writer implements Serializable {
    method StringBuilderWriter (line 36) | public StringBuilderWriter() {
    method StringBuilderWriter (line 44) | public StringBuilderWriter(final int capacity) {
    method StringBuilderWriter (line 56) | public StringBuilderWriter(final StringBuilder builder) {
    method append (line 65) | @Override
    method append (line 76) | @Override
    method append (line 89) | @Override
    method close (line 98) | @Override
    method flush (line 106) | @Override
    method write (line 115) | @Override
    method write (line 128) | @Override
    method getBuilder (line 139) | public StringBuilder getBuilder() {
    method toString (line 147) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-commons/src/main/java/com/alibaba/cloud/commons/lang/StringUtils.java
  class StringUtils (line 24) | public final class StringUtils {
    method StringUtils (line 39) | private StringUtils() {
    method isEmpty (line 63) | public static boolean isEmpty(final CharSequence cs) {
    method isNotEmpty (line 83) | public static boolean isNotEmpty(final CharSequence cs) {
    method isBlank (line 102) | public static boolean isBlank(final CharSequence cs) {
    method isNotBlank (line 137) | public static boolean isNotBlank(final CharSequence cs) {
    method trim (line 165) | public static String trim(final String str) {
    method equals (line 196) | public static boolean equals(final CharSequence cs1, final CharSequenc...
    method regionMatches (line 220) | public static boolean regionMatches(final CharSequence cs, final boole...
    method substringAfter (line 285) | public static String substringAfter(String str, String separator) {
    method substringBetween (line 324) | public static String substringBetween(String str, String tag) {
    method substringBetween (line 358) | public static String substringBetween(String str, String open, String ...

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/RuleType.java
  type RuleType (line 37) | public enum RuleType {
    method RuleType (line 85) | RuleType(String name, Class clazz) {
    method RuleType (line 90) | RuleType(String name, String clazzName) {
    method getName (line 95) | public String getName() {
    method getClazz (line 99) | public Class getClazz() {
    method getByName (line 113) | public static Optional<RuleType> getByName(String name) {
    method getByClass (line 121) | public static Optional<RuleType> getByClass(Class clazz) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/config/AbstractDataSourceProperties.java
  class AbstractDataSourceProperties (line 40) | public class AbstractDataSourceProperties {
    method AbstractDataSourceProperties (line 56) | public AbstractDataSourceProperties(String factoryBeanName) {
    method getDataType (line 60) | public String getDataType() {
    method setDataType (line 64) | public void setDataType(String dataType) {
    method getRuleType (line 68) | public RuleType getRuleType() {
    method setRuleType (line 72) | public void setRuleType(RuleType ruleType) {
    method getConverterClass (line 76) | public String getConverterClass() {
    method setConverterClass (line 80) | public void setConverterClass(String converterClass) {
    method getFactoryBeanName (line 84) | public String getFactoryBeanName() {
    method getEnv (line 88) | protected Environment getEnv() {
    method setEnv (line 92) | public void setEnv(Environment env) {
    method preCheck (line 96) | public void preCheck(String dataSourceName) {
    method postRegister (line 100) | public void postRegister(AbstractDataSource dataSource) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/config/ApolloDataSourceProperties.java
  class ApolloDataSourceProperties (line 29) | public class ApolloDataSourceProperties extends AbstractDataSourceProper...
    method ApolloDataSourceProperties (line 39) | public ApolloDataSourceProperties() {
    method getNamespaceName (line 43) | public String getNamespaceName() {
    method setNamespaceName (line 47) | public void setNamespaceName(String namespaceName) {
    method getFlowRulesKey (line 51) | public String getFlowRulesKey() {
    method setFlowRulesKey (line 55) | public void setFlowRulesKey(String flowRulesKey) {
    method getDefaultFlowRuleValue (line 59) | public String getDefaultFlowRuleValue() {
    method setDefaultFlowRuleValue (line 63) | public void setDefaultFlowRuleValue(String defaultFlowRuleValue) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/config/ConsulDataSourceProperties.java
  class ConsulDataSourceProperties (line 29) | public class ConsulDataSourceProperties extends AbstractDataSourceProper...
    method ConsulDataSourceProperties (line 31) | public ConsulDataSourceProperties() {
    method preCheck (line 61) | @Override
    method getHost (line 72) | public String getHost() {
    method setHost (line 76) | public void setHost(String host) {
    method getPort (line 80) | public int getPort() {
    method setPort (line 84) | public void setPort(int port) {
    method getRuleKey (line 88) | public String getRuleKey() {
    method setRuleKey (line 92) | public void setRuleKey(String ruleKey) {
    method getWaitTimeoutInSecond (line 96) | public int getWaitTimeoutInSecond() {
    method setWaitTimeoutInSecond (line 100) | public void setWaitTimeoutInSecond(int waitTimeoutInSecond) {
    method getToken (line 104) | public String getToken() {
    method setToken (line 108) | public void setToken(String token) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/config/DataSourcePropertiesConfiguration.java
  class DataSourcePropertiesConfiguration (line 39) | public class DataSourcePropertiesConfiguration {
    method DataSourcePropertiesConfiguration (line 53) | public DataSourcePropertiesConfiguration() {
    method DataSourcePropertiesConfiguration (line 56) | public DataSourcePropertiesConfiguration(ConsulDataSourceProperties co...
    method getConsul (line 60) | public ConsulDataSourceProperties getConsul() {
    method setConsul (line 64) | public void setConsul(ConsulDataSourceProperties consul) {
    method DataSourcePropertiesConfiguration (line 68) | public DataSourcePropertiesConfiguration(FileDataSourceProperties file) {
    method DataSourcePropertiesConfiguration (line 72) | public DataSourcePropertiesConfiguration(NacosDataSourceProperties nac...
    method DataSourcePropertiesConfiguration (line 76) | public DataSourcePropertiesConfiguration(ZookeeperDataSourceProperties...
    method DataSourcePropertiesConfiguration (line 80) | public DataSourcePropertiesConfiguration(ApolloDataSourceProperties ap...
    method DataSourcePropertiesConfiguration (line 84) | public DataSourcePropertiesConfiguration(RedisDataSourceProperties red...
    method getFile (line 88) | public FileDataSourceProperties getFile() {
    method setFile (line 92) | public void setFile(FileDataSourceProperties file) {
    method getNacos (line 96) | public NacosDataSourceProperties getNacos() {
    method setNacos (line 100) | public void setNacos(NacosDataSourceProperties nacos) {
    method getZk (line 104) | public ZookeeperDataSourceProperties getZk() {
    method setZk (line 108) | public void setZk(ZookeeperDataSourceProperties zk) {
    method getApollo (line 112) | public ApolloDataSourceProperties getApollo() {
    method setApollo (line 116) | public void setApollo(ApolloDataSourceProperties apollo) {
    method getRedis (line 120) | public RedisDataSourceProperties getRedis() {
    method setRedis (line 124) | public void setRedis(RedisDataSourceProperties redis) {
    method getValidField (line 128) | @JsonIgnore
    method getValidDataSourceProperties (line 148) | @JsonIgnore

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/config/FileDataSourceProperties.java
  class FileDataSourceProperties (line 33) | public class FileDataSourceProperties extends AbstractDataSourceProperti...
    method FileDataSourceProperties (line 44) | public FileDataSourceProperties() {
    method getFile (line 48) | public String getFile() {
    method setFile (line 52) | public void setFile(String file) {
    method getCharset (line 56) | public String getCharset() {
    method setCharset (line 60) | public void setCharset(String charset) {
    method getRecommendRefreshMs (line 64) | public long getRecommendRefreshMs() {
    method setRecommendRefreshMs (line 68) | public void setRecommendRefreshMs(long recommendRefreshMs) {
    method getBufSize (line 72) | public int getBufSize() {
    method setBufSize (line 76) | public void setBufSize(int bufSize) {
    method preCheck (line 80) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/config/NacosDataSourceProperties.java
  class NacosDataSourceProperties (line 29) | public class NacosDataSourceProperties extends AbstractDataSourcePropert...
    method NacosDataSourceProperties (line 53) | public NacosDataSourceProperties() {
    method preCheck (line 57) | @Override
    method getServerAddr (line 66) | public String getServerAddr() {
    method setServerAddr (line 70) | public void setServerAddr(String serverAddr) {
    method getContextPath (line 74) | public String getContextPath() {
    method setContextPath (line 78) | public void setContextPath(String contextPath) {
    method getUsername (line 82) | public String getUsername() {
    method setUsername (line 86) | public void setUsername(String username) {
    method getPassword (line 90) | public String getPassword() {
    method setPassword (line 94) | public void setPassword(String password) {
    method getGroupId (line 98) | public String getGroupId() {
    method setGroupId (line 102) | public void setGroupId(String groupId) {
    method getDataId (line 106) | public String getDataId() {
    method setDataId (line 110) | public void setDataId(String dataId) {
    method getEndpoint (line 114) | public String getEndpoint() {
    method setEndpoint (line 118) | public void setEndpoint(String endpoint) {
    method getNamespace (line 122) | public String getNamespace() {
    method setNamespace (line 126) | public void setNamespace(String namespace) {
    method getAccessKey (line 130) | public String getAccessKey() {
    method setAccessKey (line 134) | public void setAccessKey(String accessKey) {
    method getSecretKey (line 138) | public String getSecretKey() {
    method setSecretKey (line 142) | public void setSecretKey(String secretKey) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/config/RedisDataSourceProperties.java
  class RedisDataSourceProperties (line 32) | public class RedisDataSourceProperties extends AbstractDataSourcePropert...
    method RedisDataSourceProperties (line 34) | public RedisDataSourceProperties() {
    method preCheck (line 83) | @Override
    method getHost (line 102) | public String getHost() {
    method setHost (line 106) | public void setHost(String host) {
    method getPort (line 110) | public int getPort() {
    method setPort (line 114) | public void setPort(int port) {
    method getRuleKey (line 118) | public String getRuleKey() {
    method setRuleKey (line 122) | public void setRuleKey(String ruleKey) {
    method getChannel (line 126) | public String getChannel() {
    method setChannel (line 130) | public void setChannel(String channel) {
    method getPassword (line 134) | public String getPassword() {
    method setPassword (line 138) | public void setPassword(String password) {
    method getDatabase (line 142) | public int getDatabase() {
    method setDatabase (line 146) | public void setDatabase(int database) {
    method getTimeout (line 150) | public Duration getTimeout() {
    method setTimeout (line 154) | public void setTimeout(Duration timeout) {
    method getNodes (line 158) | public List<String> getNodes() {
    method setNodes (line 162) | public void setNodes(List<String> nodes) {
    method getMasterId (line 166) | public String getMasterId() {
    method setMasterId (line 170) | public void setMasterId(String masterId) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/config/ZookeeperDataSourceProperties.java
  class ZookeeperDataSourceProperties (line 29) | public class ZookeeperDataSourceProperties extends AbstractDataSourcePro...
    method ZookeeperDataSourceProperties (line 31) | public ZookeeperDataSourceProperties() {
    method preCheck (line 43) | @Override
    method getServerAddr (line 55) | public String getServerAddr() {
    method setServerAddr (line 59) | public void setServerAddr(String serverAddr) {
    method getPath (line 63) | public String getPath() {
    method setPath (line 67) | public void setPath(String path) {
    method getGroupId (line 71) | public String getGroupId() {
    method setGroupId (line 75) | public void setGroupId(String groupId) {
    method getDataId (line 79) | public String getDataId() {
    method setDataId (line 83) | public void setDataId(String dataId) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/converter/JsonConverter.java
  class JsonConverter (line 37) | public class JsonConverter<T> extends SentinelConverter {
    method JsonConverter (line 39) | public JsonConverter(ObjectMapper objectMapper, Class<T> ruleClass) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/converter/SentinelConverter.java
  class SentinelConverter (line 50) | public abstract class SentinelConverter<T extends Object>
    method SentinelConverter (line 59) | public SentinelConverter(ObjectMapper objectMapper, Class<T> ruleClass) {
    method convert (line 64) | @Override
    method convertRule (line 111) | private Object convertRule(String ruleStr) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/converter/XmlConverter.java
  class XmlConverter (line 38) | public class XmlConverter<T> extends SentinelConverter {
    method XmlConverter (line 40) | public XmlConverter(XmlMapper xmlMapper, Class<T> ruleClass) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/factorybean/ApolloDataSourceFactoryBean.java
  class ApolloDataSourceFactoryBean (line 30) | public class ApolloDataSourceFactoryBean implements FactoryBean<ApolloDa...
    method getObject (line 40) | @Override
    method getObjectType (line 46) | @Override
    method getNamespaceName (line 51) | public String getNamespaceName() {
    method setNamespaceName (line 55) | public void setNamespaceName(String namespaceName) {
    method getFlowRulesKey (line 59) | public String getFlowRulesKey() {
    method setFlowRulesKey (line 63) | public void setFlowRulesKey(String flowRulesKey) {
    method getDefaultFlowRuleValue (line 67) | public String getDefaultFlowRuleValue() {
    method setDefaultFlowRuleValue (line 71) | public void setDefaultFlowRuleValue(String defaultFlowRuleValue) {
    method getConverter (line 75) | public Converter getConverter() {
    method setConverter (line 79) | public void setConverter(Converter converter) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/factorybean/ConsulDataSourceFactoryBean.java
  class ConsulDataSourceFactoryBean (line 30) | public class ConsulDataSourceFactoryBean implements FactoryBean<ConsulDa...
    method getObject (line 44) | @Override
    method getObjectType (line 49) | @Override
    method getHost (line 54) | public String getHost() {
    method setHost (line 58) | public void setHost(String host) {
    method getPort (line 62) | public int getPort() {
    method setPort (line 66) | public void setPort(int port) {
    method getRuleKey (line 70) | public String getRuleKey() {
    method setRuleKey (line 74) | public void setRuleKey(String ruleKey) {
    method getWaitTimeoutInSecond (line 78) | public int getWaitTimeoutInSecond() {
    method setWaitTimeoutInSecond (line 82) | public void setWaitTimeoutInSecond(int waitTimeoutInSecond) {
    method getConverter (line 86) | public Converter getConverter() {
    method setConverter (line 90) | public void setConverter(Converter converter) {
    method getToken (line 94) | public String getToken() {
    method setToken (line 98) | public void setToken(String token) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/factorybean/FileRefreshableDataSourceFactoryBean.java
  class FileRefreshableDataSourceFactoryBean (line 33) | public class FileRefreshableDataSourceFactoryBean
    method getObject (line 46) | @Override
    method getObjectType (line 52) | @Override
    method getFile (line 57) | public String getFile() {
    method setFile (line 61) | public void setFile(String file) {
    method getCharset (line 65) | public String getCharset() {
    method setCharset (line 69) | public void setCharset(String charset) {
    method getRecommendRefreshMs (line 73) | public long getRecommendRefreshMs() {
    method setRecommendRefreshMs (line 77) | public void setRecommendRefreshMs(long recommendRefreshMs) {
    method getBufSize (line 81) | public int getBufSize() {
    method setBufSize (line 85) | public void setBufSize(int bufSize) {
    method getConverter (line 89) | public Converter getConverter() {
    method setConverter (line 93) | public void setConverter(Converter converter) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/factorybean/NacosDataSourceFactoryBean.java
  class NacosDataSourceFactoryBean (line 34) | public class NacosDataSourceFactoryBean implements FactoryBean<NacosData...
    method getObject (line 58) | @Override
    method getObjectType (line 89) | @Override
    method getServerAddr (line 94) | public String getServerAddr() {
    method setServerAddr (line 98) | public void setServerAddr(String serverAddr) {
    method getContextPath (line 102) | public String getContextPath() {
    method setContextPath (line 106) | public void setContextPath(String contextPath) {
    method getUsername (line 110) | public String getUsername() {
    method setUsername (line 114) | public void setUsername(String username) {
    method getPassword (line 118) | public String getPassword() {
    method setPassword (line 122) | public void setPassword(String password) {
    method getGroupId (line 126) | public String getGroupId() {
    method setGroupId (line 130) | public void setGroupId(String groupId) {
    method getDataId (line 134) | public String getDataId() {
    method setDataId (line 138) | public void setDataId(String dataId) {
    method getConverter (line 142) | public Converter getConverter() {
    method setConverter (line 146) | public void setConverter(Converter converter) {
    method getEndpoint (line 150) | public String getEndpoint() {
    method setEndpoint (line 154) | public void setEndpoint(String endpoint) {
    method getNamespace (line 158) | public String getNamespace() {
    method setNamespace (line 162) | public void setNamespace(String namespace) {
    method getAccessKey (line 166) | public String getAccessKey() {
    method setAccessKey (line 170) | public void setAccessKey(String accessKey) {
    method getSecretKey (line 174) | public String getSecretKey() {
    method setSecretKey (line 178) | public void setSecretKey(String secretKey) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/factorybean/RedisDataSourceFactoryBean.java
  class RedisDataSourceFactoryBean (line 37) | public class RedisDataSourceFactoryBean implements FactoryBean<RedisData...
    method getObject (line 71) | @Override
    method getObjectType (line 105) | @Override
    method getConverter (line 110) | public Converter getConverter() {
    method setConverter (line 114) | public void setConverter(Converter converter) {
    method getHost (line 118) | public String getHost() {
    method setHost (line 122) | public void setHost(String host) {
    method getPort (line 126) | public int getPort() {
    method setPort (line 130) | public void setPort(int port) {
    method getRuleKey (line 134) | public String getRuleKey() {
    method setRuleKey (line 138) | public void setRuleKey(String ruleKey) {
    method getChannel (line 142) | public String getChannel() {
    method setChannel (line 146) | public void setChannel(String channel) {
    method getPassword (line 150) | public String getPassword() {
    method setPassword (line 154) | public void setPassword(String password) {
    method getDatabase (line 158) | public int getDatabase() {
    method setDatabase (line 162) | public void setDatabase(int database) {
    method getTimeout (line 166) | public Duration getTimeout() {
    method setTimeout (line 170) | public void setTimeout(Duration timeout) {
    method getNodes (line 174) | public List<String> getNodes() {
    method setNodes (line 178) | public void setNodes(List<String> nodes) {
    method getMasterId (line 182) | public String getMasterId() {
    method setMasterId (line 186) | public void setMasterId(String masterId) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/main/java/com/alibaba/cloud/sentinel/datasource/factorybean/ZookeeperDataSourceFactoryBean.java
  class ZookeeperDataSourceFactoryBean (line 31) | public class ZookeeperDataSourceFactoryBean implements FactoryBean<Zooke...
    method getObject (line 43) | @Override
    method getObjectType (line 55) | @Override
    method getServerAddr (line 60) | public String getServerAddr() {
    method setServerAddr (line 64) | public void setServerAddr(String serverAddr) {
    method getPath (line 68) | public String getPath() {
    method setPath (line 72) | public void setPath(String path) {
    method getGroupId (line 76) | public String getGroupId() {
    method setGroupId (line 80) | public void setGroupId(String groupId) {
    method getDataId (line 84) | public String getDataId() {
    method setDataId (line 88) | public void setDataId(String dataId) {
    method getConverter (line 92) | public Converter getConverter() {
    method setConverter (line 96) | public void setConverter(Converter converter) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/test/java/com/alibaba/cloud/sentinel/datasource/ApolloDataSourceFactoryBeanTests.java
  class ApolloDataSourceFactoryBeanTests (line 34) | public class ApolloDataSourceFactoryBeanTests {
    method testApolloFactoryBean (line 42) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/test/java/com/alibaba/cloud/sentinel/datasource/DataSourcePropertiesConfigurationTests.java
  class DataSourcePropertiesConfigurationTests (line 32) | public class DataSourcePropertiesConfigurationTests {
    method testGetValidField (line 39) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/test/java/com/alibaba/cloud/sentinel/datasource/DataSourcePropertiesTests.java
  class DataSourcePropertiesTests (line 44) | public class DataSourcePropertiesTests {
    method testApollo (line 46) | @Test
    method testZK (line 65) | @Test
    method testFileDefaultValue (line 89) | @Test
    method testFileCustomValue (line 105) | @Test
    method testFileException (line 120) | @Test
    method testPostRegister (line 129) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/test/java/com/alibaba/cloud/sentinel/datasource/FileRefreshableDataSourceFactoryBeanTests.java
  class FileRefreshableDataSourceFactoryBeanTests (line 40) | public class FileRefreshableDataSourceFactoryBeanTests {
    method testFile (line 42) | @Test
    class TestConfig (line 60) | @Configuration
      method fileBean (line 63) | @Bean
      method buildConverter (line 80) | private Converter buildConverter() {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/test/java/com/alibaba/cloud/sentinel/datasource/NacosDataSourceFactoryBeanTests.java
  class NacosDataSourceFactoryBeanTests (line 34) | public class NacosDataSourceFactoryBeanTests {
    method testNacosFactoryBeanServerAddr (line 52) | @Test
    method testNacosFactoryBeanProperties (line 78) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/test/java/com/alibaba/cloud/sentinel/datasource/NacosDataSourcePropertiesTests.java
  class NacosDataSourcePropertiesTests (line 28) | public class NacosDataSourcePropertiesTests {
    method testNacosWithAddr (line 30) | @Test
    method testNacosWithProperties (line 49) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/test/java/com/alibaba/cloud/sentinel/datasource/RuleTypeTests.java
  class RuleTypeTests (line 32) | public class RuleTypeTests {
    method testGetByName (line 34) | @Test
    method testGetByClass (line 53) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/test/java/com/alibaba/cloud/sentinel/datasource/SentinelConverterTests.java
  class SentinelConverterTests (line 41) | public class SentinelConverterTests {
    method testJsonConverter (line 47) | @Test
    method testConverterEmptyContent (line 64) | @Test
    method testConverterErrorFormat (line 71) | @Test
    method testConverterErrorContent (line 80) | @Test
    method testXmlConverter (line 90) | @Test
    method readFileContent (line 116) | private String readFileContent(String file) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-datasource/src/test/java/com/alibaba/cloud/sentinel/datasource/ZookeeperDataSourceFactoryBeanTests.java
  class ZookeeperDataSourceFactoryBeanTests (line 34) | public class ZookeeperDataSourceFactoryBeanTests {
    method testZKWithoutPathFactoryBean (line 44) | @Test
    method testZKWithPathFactoryBean (line 69) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/ConfigConstants.java
  class ConfigConstants (line 24) | public final class ConfigConstants {
    method ConfigConstants (line 46) | private ConfigConstants() {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/FallbackProperties.java
  class FallbackProperties (line 25) | public class FallbackProperties {
    method getMode (line 53) | public String getMode() {
    method setMode (line 57) | public FallbackProperties setMode(String mode) {
    method getRedirect (line 62) | public String getRedirect() {
    method setRedirect (line 66) | public FallbackProperties setRedirect(String redirect) {
    method getResponseBody (line 71) | public String getResponseBody() {
    method setResponseBody (line 75) | public FallbackProperties setResponseBody(String responseBody) {
    method getResponseStatus (line 80) | public Integer getResponseStatus() {
    method setResponseStatus (line 84) | public FallbackProperties setResponseStatus(Integer responseStatus) {
    method getContentType (line 89) | public String getContentType() {
    method setContentType (line 93) | public FallbackProperties setContentType(String contentType) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/GatewayEnvironmentPostProcessor.java
  class GatewayEnvironmentPostProcessor (line 32) | public class GatewayEnvironmentPostProcessor implements EnvironmentPostP...
    method postProcessEnvironment (line 38) | @Override
    method addDefaultPropertySource (line 44) | private void addDefaultPropertySource(ConfigurableEnvironment environm...
    method configureDefaultProperties (line 53) | private void configureDefaultProperties(Map<String, Object> source) {
    method addOrReplace (line 58) | private void addOrReplace(MutablePropertySources propertySources,

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/SentinelGatewayAutoConfiguration.java
  class SentinelGatewayAutoConfiguration (line 48) | @Configuration(proxyBeanMethods = false)
    class SentinelConverterConfiguration (line 52) | @ConditionalOnClass(ObjectMapper.class)
      class ApiPredicateItemDeserializer (line 56) | static class ApiPredicateItemDeserializer
        method ApiPredicateItemDeserializer (line 61) | ApiPredicateItemDeserializer() {
        method registerApiPredicateItem (line 65) | void registerApiPredicateItem(String uniqueAttribute,
        method deserialize (line 70) | @Override
      class SentinelJsonConfiguration (line 89) | @Configuration(proxyBeanMethods = false)
        method SentinelJsonConfiguration (line 94) | public SentinelJsonConfiguration() {
        method jsonGatewayFlowConverter (line 111) | @Bean("sentinel-json-gw-flow-converter")
        method jsonApiConverter (line 116) | @Bean("sentinel-json-gw-api-group-converter")
      class SentinelXmlConfiguration (line 123) | @ConditionalOnClass(XmlMapper.class)
        method SentinelXmlConfiguration (line 129) | public SentinelXmlConfiguration() {
        method xmlGatewayFlowConverter (line 146) | @Bean("sentinel-xml-gw-flow-converter")
        method xmlApiConverter (line 151) | @Bean("sentinel-xml-gw-api-group-converter")

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/scg/SentinelGatewayProperties.java
  class SentinelGatewayProperties (line 29) | @ConfigurationProperties(prefix = ConfigConstants.GATEWAY_PREFIX)
    method getFallback (line 37) | public FallbackProperties getFallback() {
    method setFallback (line 41) | public SentinelGatewayProperties setFallback(FallbackProperties fallba...
    method getOrder (line 46) | public Integer getOrder() {
    method setOrder (line 50) | public void setOrder(Integer order) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-gateway/src/main/java/com/alibaba/cloud/sentinel/gateway/scg/SentinelSCGAutoConfiguration.java
  class SentinelSCGAutoConfiguration (line 57) | @Configuration(proxyBeanMethods = false)
    method init (line 77) | @PostConstruct
    method SentinelSCGAutoConfiguration (line 85) | public SentinelSCGAutoConfiguration(
    method initAppType (line 92) | private void initAppType() {
    method initFallback (line 97) | private void initFallback() {
    method sentinelGatewayBlockExceptionHandler (line 128) | @Bean
    method sentinelGatewayFilter (line 139) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-gateway/src/test/java/com/alibaba/cloud/sentinel/gateway/ConfigConstantsTest.java
  class ConfigConstantsTest (line 22) | public class ConfigConstantsTest {
    method testConfigConstants (line 23) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-gateway/src/test/java/com/alibaba/cloud/sentinel/gateway/FallbackPropertiesTest.java
  class FallbackPropertiesTest (line 25) | public class FallbackPropertiesTest {
    method testFallbackProperties (line 33) | @Test
    method testDefaultValues (line 53) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-gateway/src/test/java/com/alibaba/cloud/sentinel/gateway/GatewayEnvironmentPostProcessorTest.java
  class GatewayEnvironmentPostProcessorTest (line 34) | public class GatewayEnvironmentPostProcessorTest {
    method testPostProcessEnvironment (line 40) | @Test
    method testPostProcessEnvironmentWithExistingPropertySource (line 58) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-gateway/src/test/java/com/alibaba/cloud/sentinel/gateway/SentinelGatewayAutoConfigurationTest.java
  class SentinelGatewayAutoConfigurationTest (line 36) | public class SentinelGatewayAutoConfigurationTest {
    method setup (line 44) | @Before
    method testJsonGatewayFlowConverter (line 54) | @Test
    method testJsonApiConverter (line 66) | @Test
    method testXmlGatewayFlowConverter (line 78) | @Test
    method testSentinelXmlConfiguration (line 90) | @Test
    method readFileContent (line 104) | private String readFileContent(String file) {

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-gateway/src/test/java/com/alibaba/cloud/sentinel/gateway/scg/SentinelGatewayPropertiesTest.java
  class SentinelGatewayPropertiesTest (line 26) | public class SentinelGatewayPropertiesTest {
    method setUp (line 30) | @Before
    method testDefaultOrder (line 35) | @Test
    method testSetOrder (line 40) | @Test
    method testFallbackPropertiesInitialization (line 47) | @Test
    method testSetFallbackProperties (line 52) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-alibaba-sentinel-gateway/src/test/java/com/alibaba/cloud/sentinel/gateway/scg/SentinelSCGAutoConfigurationTest.java
  class SentinelSCGAutoConfigurationTest (line 46) | public class SentinelSCGAutoConfigurationTest {
    method setup (line 59) | @Before
    method testInit (line 75) | @Test
    method testInitWithFallbackMsgResponse (line 87) | @Test
    method testInitWithFallbackRedirect (line 105) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/main/java/com/alibaba/cloud/circuitbreaker/sentinel/ReactiveSentinelCircuitBreaker.java
  class ReactiveSentinelCircuitBreaker (line 42) | public class ReactiveSentinelCircuitBreaker implements ReactiveCircuitBr...
    method ReactiveSentinelCircuitBreaker (line 50) | public ReactiveSentinelCircuitBreaker(String resourceName, EntryType e...
    method ReactiveSentinelCircuitBreaker (line 61) | public ReactiveSentinelCircuitBreaker(String resourceName, List<Degrad...
    method ReactiveSentinelCircuitBreaker (line 65) | public ReactiveSentinelCircuitBreaker(String resourceName) {
    method applyToSentinelRuleManager (line 69) | private void applyToSentinelRuleManager() {
    method run (line 84) | @Override
    method run (line 94) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/main/java/com/alibaba/cloud/circuitbreaker/sentinel/ReactiveSentinelCircuitBreakerAutoConfiguration.java
  class ReactiveSentinelCircuitBreakerAutoConfiguration (line 35) | @Configuration(proxyBeanMethods = false)
    method reactiveSentinelCircuitBreakerFactory (line 45) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/main/java/com/alibaba/cloud/circuitbreaker/sentinel/ReactiveSentinelCircuitBreakerFactory.java
  class ReactiveSentinelCircuitBreakerFactory (line 33) | public class ReactiveSentinelCircuitBreakerFactory extends
    method create (line 39) | @Override
    method configBuilder (line 48) | @Override
    method configureDefault (line 53) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/main/java/com/alibaba/cloud/circuitbreaker/sentinel/SentinelCircuitBreaker.java
  class SentinelCircuitBreaker (line 43) | public class SentinelCircuitBreaker implements CircuitBreaker {
    method SentinelCircuitBreaker (line 51) | public SentinelCircuitBreaker(String resourceName, EntryType entryType,
    method SentinelCircuitBreaker (line 62) | public SentinelCircuitBreaker(String resourceName, List<DegradeRule> r...
    method SentinelCircuitBreaker (line 66) | public SentinelCircuitBreaker(String resourceName) {
    method applyToSentinelRuleManager (line 70) | private void applyToSentinelRuleManager() {
    method run (line 85) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/main/java/com/alibaba/cloud/circuitbreaker/sentinel/SentinelCircuitBreakerAutoConfiguration.java
  class SentinelCircuitBreakerAutoConfiguration (line 40) | @Configuration(proxyBeanMethods = false)
    method sentinelCircuitBreakerFactory (line 49) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/main/java/com/alibaba/cloud/circuitbreaker/sentinel/SentinelCircuitBreakerFactory.java
  class SentinelCircuitBreakerFactory (line 32) | public class SentinelCircuitBreakerFactory extends
    method create (line 38) | @Override
    method configBuilder (line 46) | @Override
    method configureDefault (line 51) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/main/java/com/alibaba/cloud/circuitbreaker/sentinel/SentinelConfigBuilder.java
  class SentinelConfigBuilder (line 32) | public class SentinelConfigBuilder implements
    method SentinelConfigBuilder (line 41) | public SentinelConfigBuilder() {
    method SentinelConfigBuilder (line 44) | public SentinelConfigBuilder(String resourceName) {
    method resourceName (line 48) | public SentinelConfigBuilder resourceName(String resourceName) {
    method entryType (line 53) | public SentinelConfigBuilder entryType(EntryType entryType) {
    method rules (line 58) | public SentinelConfigBuilder rules(List<DegradeRule> rules) {
    method build (line 63) | @Override
    class SentinelCircuitBreakerConfiguration (line 75) | public static class SentinelCircuitBreakerConfiguration {
      method getResourceName (line 83) | public String getResourceName() {
      method setResourceName (line 87) | public SentinelCircuitBreakerConfiguration setResourceName(String re...
      method getEntryType (line 92) | public EntryType getEntryType() {
      method setEntryType (line 96) | public SentinelCircuitBreakerConfiguration setEntryType(EntryType en...
      method getRules (line 101) | public List<DegradeRule> getRules() {
      method setRules (line 105) | public SentinelCircuitBreakerConfiguration setRules(List<DegradeRule...

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/main/java/com/alibaba/cloud/circuitbreaker/sentinel/feign/CircuitBreakerRuleChangeListener.java
  class CircuitBreakerRuleChangeListener (line 54) | @SuppressWarnings({ "unchecked", "rawtypes" })
    method onApplicationEvent (line 69) | @Override
    method setApplicationContext (line 90) | @Override
    method afterSingletonsInstantiated (line 96) | @Override
    method ensureReady (line 102) | private void ensureReady() {
    method clearRules (line 120) | private void clearRules() {
    method configureDefault (line 125) | private void configureDefault() {
    method configureCustom (line 129) | private void configureCustom() {
    method clearCircuitBreakerFactory (line 133) | private void clearCircuitBreakerFactory() {
    method clearFeignClientRulesInDegradeManager (line 138) | private void clearFeignClientRulesInDegradeManager() {
    method updateBackup (line 171) | private void updateBackup() {
    method prettyPrint (line 175) | private String prettyPrint(Object o) {
    method configureCustom (line 188) | public static void configureCustom(SentinelFeignClientProperties prope...
    method configureDefault (line 200) | public static void configureDefault(SentinelFeignClientProperties prop...
    method getConfigurations (line 209) | public static Map getConfigurations(

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/main/java/com/alibaba/cloud/circuitbreaker/sentinel/feign/FeignClientCircuitNameResolver.java
  class FeignClientCircuitNameResolver (line 37) | @SuppressWarnings("rawtypes")
    method FeignClientCircuitNameResolver (line 42) | public FeignClientCircuitNameResolver(AbstractCircuitBreakerFactory fa...
    method resolveCircuitBreakerName (line 46) | @Override
    method getKey (line 58) | private String getKey(String feignClientName, Target<?> target, Method...

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/main/java/com/alibaba/cloud/circuitbreaker/sentinel/feign/SentinelFeignClientAutoConfiguration.java
  class SentinelFeignClientAutoConfiguration (line 47) | @Configuration(proxyBeanMethods = false)
    class CircuitBreakerListenerConfiguration (line 53) | @Configuration(proxyBeanMethods = false)
      method circuitBreakerRuleChangeListener (line 57) | @Bean
    class CircuitBreakerNameResolverConfiguration (line 64) | @Configuration(proxyBeanMethods = false)
      method feignClientCircuitNameResolver (line 67) | @Bean
    class SentinelCustomizerConfiguration (line 82) | @Configuration(proxyBeanMethods = false)
      method configureRulesCustomizer (line 85) | @Bean
    class ReactiveSentinelCustomizerConfiguration (line 96) | @Configuration(proxyBeanMethods = false)
      method reactiveConfigureRulesCustomizer (line 101) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/main/java/com/alibaba/cloud/circuitbreaker/sentinel/feign/SentinelFeignClientProperties.java
  class SentinelFeignClientProperties (line 36) | @ConfigurationProperties("feign.sentinel")
    method getDefaultRule (line 51) | public String getDefaultRule() {
    method setDefaultRule (line 55) | public void setDefaultRule(String defaultRule) {
    method isEnableRefreshRules (line 59) | public boolean isEnableRefreshRules() {
    method setEnableRefreshRules (line 63) | public void setEnableRefreshRules(boolean enableRefreshRules) {
    method getRules (line 67) | public Map<String, List<DegradeRule>> getRules() {
    method setRules (line 71) | public void setRules(Map<String, List<DegradeRule>> rules) {
    method equals (line 75) | @Override
    method hashCode (line 89) | @Override
    method copy (line 94) | public SentinelFeignClientProperties copy() {

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/test/java/com/alibaba/cloud/circuitbreaker/sentinel/ReactiveSentinelCircuitBreakerIntegrationTest.java
  class ReactiveSentinelCircuitBreakerIntegrationTest (line 50) | @SpringBootTest(webEnvironment = RANDOM_PORT, classes = Application.clas...
    method setup (line 60) | @BeforeEach
    method test (line 65) | @Test
    class Application (line 103) | @Configuration
      method slow (line 108) | @GetMapping("/slow")
      method normal (line 113) | @GetMapping("/normal")
      method slowFlux (line 118) | @GetMapping("/slow_flux")
      method normalFlux (line 123) | @GetMapping("normal_flux")
      method slowCustomizer (line 128) | @Bean
      class DemoControllerService (line 152) | @Service
        method DemoControllerService (line 159) | DemoControllerService(ReactiveCircuitBreakerFactory cbFactory) {
        method slow (line 163) | public Mono<String> slow() {
        method normal (line 172) | public Mono<String> normal() {
        method slowFlux (line 181) | public Flux<String> slowFlux() {
        method normalFlux (line 191) | public Flux<String> normalFlux() {
        method setPort (line 200) | public void setPort(int port) {

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/test/java/com/alibaba/cloud/circuitbreaker/sentinel/ReactiveSentinelCircuitBreakerTest.java
  class ReactiveSentinelCircuitBreakerTest (line 34) | public class ReactiveSentinelCircuitBreakerTest {
    method testCreateWithNullRule (line 36) | @Test
    method runMono (line 46) | @Test
    method runMonoWithFallback (line 54) | @Test
    method runFlux (line 63) | @Test
    method runFluxWithFallback (line 71) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/test/java/com/alibaba/cloud/circuitbreaker/sentinel/SentinelCircuitBreakerIntegrationTest.java
  class SentinelCircuitBreakerIntegrationTest (line 49) | @AutoConfigureTestRestTemplate
    method testSlow (line 58) | @Test
    method testNormal (line 80) | @Test
    method setUp (line 85) | @BeforeEach
    method tearDown (line 90) | @BeforeEach
    class Application (line 95) | @Configuration
      method slow (line 100) | @GetMapping("/slow")
      method normal (line 109) | @GetMapping("/normal")
      method slowCustomizer (line 114) | @Bean
      class DemoControllerService (line 132) | @Service
        method DemoControllerService (line 139) | DemoControllerService(TestRestTemplate rest,
        method slow (line 145) | public String slow(boolean slow) {
        method normal (line 151) | public String normal() {

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/test/java/com/alibaba/cloud/circuitbreaker/sentinel/SentinelCircuitBreakerTest.java
  class SentinelCircuitBreakerTest (line 34) | public class SentinelCircuitBreakerTest {
    method tearDown (line 36) | @AfterEach
    method testCreateDirectlyThenRun (line 42) | @Test
    method testCreateWithNullRule (line 61) | @Test
    method testCreateFromFactoryThenRun (line 70) | @Test
    method testRunWithFallback (line 76) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-circuitbreaker-sentinel/src/test/java/com/alibaba/cloud/circuitbreaker/sentinel/feign/FeignClientCircuitBreakerRuleIntegrationTest.java
  class FeignClientCircuitBreakerRuleIntegrationTest (line 39) | @SpringBootTest(webEnvironment = DEFINED_PORT, classes = Application.cla...
    method testDefaultRule (line 66) | @Test
    method testSpecificFeignRule (line 98) | @Test
    method testSpecificFeignMethodRule (line 129) | @Test
    class Application (line 159) | @Configuration
      type UserClient (line 165) | @FeignClient(value = "user", url = "http://localhost:${server.port}"...
        method specificFeign (line 168) | @GetMapping("/specificFeign/{success}")
        method specificFeignMethod (line 171) | @GetMapping("/specificFeignMethod/{success}")
      type OrderClient (line 176) | @FeignClient(value = "order", url = "http://localhost:${server.port}...
        method defaultConfig (line 179) | @GetMapping("/defaultConfig/{success}")
      class UserClientFallback (line 184) | @Component
        method specificFeign (line 187) | @Override
        method specificFeignMethod (line 192) | @Override
      class OrderClientFallback (line 199) | @Component
        method defaultConfig (line 202) | @Override
      class TestController (line 209) | @RestController
        method specificFeign (line 212) | @GetMapping("/specificFeign/{success}")
        method defaultConfig (line 220) | @GetMapping("/defaultConfig/{success}")
        method specificFeignMethod (line 228) | @GetMapping("/specificFeignMethod/{success}")

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosConfigSpringCloudAutoConfiguration.java
  class NacosConfigSpringCloudAutoConfiguration (line 38) | @Configuration(proxyBeanMethods = false)
    method smartConfigurationPropertiesRebinder (line 42) | @Bean
    method nacosConfigRefreshEventListener (line 51) | @Bean(name = "nacosConfigSpringCloudRefreshEventListener")
    class BootstrapDetectionConfiguration (line 56) | @Configuration(proxyBeanMethods = false)
      method BootstrapDetectionConfiguration (line 60) | BootstrapDetectionConfiguration() {

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/SpringCloudNacosPropertiesPrefixProvider.java
  class SpringCloudNacosPropertiesPrefixProvider (line 19) | public class SpringCloudNacosPropertiesPrefixProvider implements NacosPr...
    method getPrefix (line 21) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/client/NacosPropertySourceLocator.java
  class NacosPropertySourceLocator (line 41) | @Order(0)
    method NacosPropertySourceLocator (line 65) | @Deprecated
    method NacosPropertySourceLocator (line 70) | public NacosPropertySourceLocator(NacosConfigManager nacosConfigManage...
    method locate (line 75) | @Override
    method loadApplicationConfiguration (line 107) | private void loadApplicationConfiguration(
    method loadNacosConfiguration (line 127) | private void loadNacosConfiguration(final CompositePropertySource comp...
    method checkConfiguration (line 137) | private void checkConfiguration(List<NacosConfigProperties.Config> con...
    method loadNacosDataIfPresent (line 149) | private void loadNacosDataIfPresent(final CompositePropertySource comp...
    method loadNacosPropertySource (line 163) | private NacosPropertySource loadNacosPropertySource(final String dataId,
    method addFirstPropertySource (line 179) | private void addFirstPropertySource(final CompositePropertySource comp...
    method setNacosConfigManager (line 190) | public void setNacosConfigManager(NacosConfigManager nacosConfigManage...

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/configdata/NacosConfigDataMissingEnvironmentPostProcessor.java
  class NacosConfigDataMissingEnvironmentPostProcessor (line 35) | public class NacosConfigDataMissingEnvironmentPostProcessor
    method getOrder (line 43) | @Override
    method shouldProcessEnvironment (line 48) | @Override
    method getPrefix (line 65) | @Override
    class ImportExceptionFailureAnalyzer (line 70) | static class ImportExceptionFailureAnalyzer
      method analyze (line 73) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/configdata/NacosConfigRefreshEventListener.java
  class NacosConfigRefreshEventListener (line 34) | public class NacosConfigRefreshEventListener implements SmartApplication...
    method supportsEventType (line 40) | @Override
    method setApplicationContext (line 45) | @Override
    method onApplicationEvent (line 50) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/refresh/RefreshBehavior.java
  type RefreshBehavior (line 27) | public enum RefreshBehavior {

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/refresh/SmartConfigurationPropertiesRebinder.java
  class SmartConfigurationPropertiesRebinder (line 51) | public class SmartConfigurationPropertiesRebinder
    method SmartConfigurationPropertiesRebinder (line 60) | public SmartConfigurationPropertiesRebinder(ConfigurationPropertiesBea...
    method fillBeanMap (line 65) | @SuppressWarnings("unchecked")
    method setApplicationContext (line 77) | @Override
    method onApplicationEvent (line 87) | @Override
    method rebindSpecificBean (line 99) | private void rebindSpecificBean(EnvironmentChangeEvent event) {

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/refresh/condition/NonDefaultBehaviorCondition.java
  class NonDefaultBehaviorCondition (line 31) | public class NonDefaultBehaviorCondition extends SpringBootCondition {
    method getMatchOutcome (line 35) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/test/java/com/alibaba/cloud/nacos/SmartConfigurationPropertiesRebinderIntegrationTest.java
  class SmartConfigurationPropertiesRebinderIntegrationTest (line 39) | public class SmartConfigurationPropertiesRebinderIntegrationTest {
    method testUsingSmartConfigurationPropertiesRebinder_whenBehaviorIsNotDefault (line 43) | @Test
    method testUsingConfigurationPropertiesRebinder_whenBehaviorIsDefault (line 63) | @Test
    class RebinderConfiguration (line 77) | @Configuration

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/test/java/com/alibaba/cloud/nacos/configdata/NacosConfigDataMissingEnvironmentPostProcessorTest.java
  class NacosConfigDataMissingEnvironmentPostProcessorTest (line 31) | class NacosConfigDataMissingEnvironmentPostProcessorTest {
    method noSpringConfigImport (line 33) | @Test
    method boostrap (line 43) | @Test
    method legacy (line 53) | @Test
    method configNotEnabled (line 63) | @Test
    method importCheckNotEnabled (line 73) | @Test
    method importSinglePropertySource (line 84) | @Test
    method importMultiplePropertySource (line 94) | @Test
    method importMultiplePropertySourceAsList (line 104) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/NacosDiscoveryProperties.java
  class NacosDiscoveryProperties (line 69) | @ConfigurationProperties("spring.cloud.nacos.discovery")
    method init (line 255) | @PostConstruct
    method namingServiceInstance (line 336) | @Deprecated
    method getEndpoint (line 341) | public String getEndpoint() {
    method setEndpoint (line 345) | public void setEndpoint(String endpoint) {
    method getNamespace (line 349) | public String getNamespace() {
    method setNamespace (line 353) | public void setNamespace(String namespace) {
    method getLogName (line 357) | public String getLogName() {
    method setLogName (line 361) | public void setLogName(String logName) {
    method setInetUtils (line 365) | public void setInetUtils(InetUtils inetUtils) {
    method getWeight (line 369) | public float getWeight() {
    method setWeight (line 373) | public void setWeight(float weight) {
    method getClusterName (line 377) | public String getClusterName() {
    method setClusterName (line 381) | public void setClusterName(String clusterName) {
    method getService (line 385) | public String getService() {
    method setService (line 389) | public void setService(String service) {
    method isRegisterEnabled (line 393) | public boolean isRegisterEnabled() {
    method setRegisterEnabled (line 397) | public void setRegisterEnabled(boolean registerEnabled) {
    method getIp (line 401) | public String getIp() {
    method setIp (line 405) | public void setIp(String ip) {
    method getIpType (line 409) | public String getIpType() {
    method setIpType (line 413) | public void setIpType(String ipType) {
    method getNetworkInterface (line 417) | public String getNetworkInterface() {
    method setNetworkInterface (line 421) | public void setNetworkInterface(String networkInterface) {
    method getPort (line 425) | public int getPort() {
    method setPort (line 429) | public void setPort(int port) {
    method isSecure (line 433) | public boolean isSecure() {
    method setSecure (line 437) | public void setSecure(boolean secure) {
    method getMetadata (line 441) | public Map<String, String> getMetadata() {
    method setMetadata (line 445) | public void setMetadata(Map<String, String> metadata) {
    method getServerAddr (line 449) | public String getServerAddr() {
    method setServerAddr (line 453) | public void setServerAddr(String serverAddr) {
    method getAccessKey (line 457) | public String getAccessKey() {
    method setAccessKey (line 461) | public void setAccessKey(String accessKey) {
    method getSecretKey (line 465) | public String getSecretKey() {
    method setSecretKey (line 469) | public void setSecretKey(String secretKey) {
    method getHeartBeatInterval (line 473) | public Integer getHeartBeatInterval() {
    method setHeartBeatInterval (line 477) | public void setHeartBeatInterval(Integer heartBeatInterval) {
    method getHeartBeatTimeout (line 481) | public Integer getHeartBeatTimeout() {
    method setHeartBeatTimeout (line 485) | public void setHeartBeatTimeout(Integer heartBeatTimeout) {
    method getIpDeleteTimeout (line 489) | public Integer getIpDeleteTimeout() {
    method setIpDeleteTimeout (line 493) | public void setIpDeleteTimeout(Integer ipDeleteTimeout) {
    method getNamingLoadCacheAtStart (line 497) | public String getNamingLoadCacheAtStart() {
    method setNamingLoadCacheAtStart (line 501) | public void setNamingLoadCacheAtStart(String namingLoadCacheAtStart) {
    method getWatchDelay (line 505) | public long getWatchDelay() {
    method setWatchDelay (line 509) | public void setWatchDelay(long watchDelay) {
    method getGroup (line 513) | public String getGroup() {
    method setGroup (line 517) | public void setGroup(String group) {
    method getUsername (line 521) | public String getUsername() {
    method setUsername (line 525) | public void setUsername(String username) {
    method getPassword (line 529) | public String getPassword() {
    method setPassword (line 533) | public void setPassword(String password) {
    method isInstanceEnabled (line 537) | public boolean isInstanceEnabled() {
    method setInstanceEnabled (line 541) | public void setInstanceEnabled(boolean instanceEnabled) {
    method isEphemeral (line 545) | public boolean isEphemeral() {
    method setEphemeral (line 549) | public void setEphemeral(boolean ephemeral) {
    method isFailureToleranceEnabled (line 553) | public boolean isFailureToleranceEnabled() {
    method setFailureToleranceEnabled (line 557) | public void setFailureToleranceEnabled(boolean failureToleranceEnabled) {
    method isFailFast (line 561) | public boolean isFailFast() {
    method setFailFast (line 565) | public void setFailFast(boolean failFast) {
    method getGracefulShutdownWaitTime (line 569) | public Integer getGracefulShutdownWaitTime() {
    method setGracefulShutdownWaitTime (line 573) | public void setGracefulShutdownWaitTime(Integer gracefulShutdownWaitTi...
    method equals (line 577) | @Override
    method hashCode (line 611) | @Override
    method toString (line 621) | @Override
    method overrideFromEnv (line 641) | public void overrideFromEnv(Environment env) {
    method getNacosProperties (line 688) | public Properties getNacosProperties() {
    method enrichNacosDiscoveryProperties (line 715) | private void enrichNacosDiscoveryProperties(Properties nacosDiscoveryP...
    method resolveKey (line 722) | private String resolveKey(String key) {

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/NacosServiceAutoConfiguration.java
  class NacosServiceAutoConfiguration (line 26) | @Configuration(proxyBeanMethods = false)
    method nacosServiceManager (line 31) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/NacosServiceInstance.java
  class NacosServiceInstance (line 29) | public class NacosServiceInstance implements ServiceInstance {
    method getServiceId (line 43) | @Override
    method getInstanceId (line 48) | @Override
    method getHost (line 53) | @Override
    method getPort (line 58) | @Override
    method isSecure (line 63) | @Override
    method getUri (line 68) | @Override
    method getMetadata (line 73) | @Override
    method getScheme (line 78) | @Override
    method setServiceId (line 83) | public void setServiceId(String serviceId) {
    method setInstanceId (line 87) | public void setInstanceId(String instanceId) {
    method setHost (line 91) | public void setHost(String host) {
    method setPort (line 95) | public void setPort(int port) {
    method setSecure (line 99) | public void setSecure(boolean secure) {
    method setMetadata (line 103) | public void setMetadata(Map<String, String> metadata) {
    method equals (line 107) | @Override
    method hashCode (line 125) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/NacosServiceManager.java
  class NacosServiceManager (line 34) | public class NacosServiceManager {
    method getNamingService (line 44) | public NamingService getNamingService() {
    method getNamingService (line 51) | @Deprecated
    method getNamingMaintainService (line 59) | public NamingMaintainService getNamingMaintainService(Properties prope...
    method isNacosDiscoveryInfoChanged (line 66) | public boolean isNacosDiscoveryInfoChanged(
    method buildNamingMaintainService (line 75) | private NamingMaintainService buildNamingMaintainService(Properties pr...
    method buildNamingService (line 86) | private NamingService buildNamingService(Properties properties) {
    method createNewNamingService (line 97) | private NamingService createNewNamingService(Properties properties) {
    method createNamingMaintainService (line 106) | private NamingMaintainService createNamingMaintainService(Properties p...
    method nacosServiceShutDown (line 115) | public void nacosServiceShutDown() throws NacosException {
    method setNacosDiscoveryProperties (line 126) | public void setNacosDiscoveryProperties(NacosDiscoveryProperties nacos...

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/balancer/NacosBalancer.java
  class NacosBalancer (line 38) | public class NacosBalancer extends Balancer {
    method getHostByRandomWeight2 (line 49) | public static Instance getHostByRandomWeight2(List<Instance> instances) {
    method getHostByRandomWeight3 (line 58) | public static ServiceInstance getHostByRandomWeight3(
    method convertIPv4ToIPv6 (line 88) | private static void convertIPv4ToIPv6(NacosServiceInstance instance) {

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosDiscoveryAutoConfiguration.java
  class NacosDiscoveryAutoConfiguration (line 31) | @Configuration(proxyBeanMethods = false)
    method nacosProperties (line 36) | @Bean
    method nacosServiceDiscovery (line 42) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosDiscoveryClient.java
  class NacosDiscoveryClient (line 36) | public class NacosDiscoveryClient implements DiscoveryClient {
    method NacosDiscoveryClient (line 50) | public NacosDiscoveryClient(NacosServiceDiscovery nacosServiceDiscover...
    method description (line 54) | @Override
    method getInstances (line 59) | @Override
    method getServices (line 77) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosDiscoveryClientConfiguration.java
  class NacosDiscoveryClientConfiguration (line 40) | @Configuration(proxyBeanMethods = false)
    method nacosDiscoveryClient (line 49) | @Bean
    method nacosWatch (line 59) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosDiscoveryHeartBeatConfiguration.java
  class NacosDiscoveryHeartBeatConfiguration (line 39) | @Configuration(proxyBeanMethods = false)
    method nacosDiscoveryHeartBeatPublisher (line 53) | @Bean
    class NacosDiscoveryHeartBeatCondition (line 60) | private static class NacosDiscoveryHeartBeatCondition extends AnyNeste...
      method NacosDiscoveryHeartBeatCondition (line 62) | NacosDiscoveryHeartBeatCondition()  {
      class GatewayLocatorHeartBeatEnabled (line 69) | @ConditionalOnProperty(value = "spring.cloud.gateway.server.webflux....
      class SpringBootAdminHeartBeatEnabled (line 76) | @ConditionalOnBean(type = "de.codecentric.boot.admin.server.cloud.di...
      class NacosDiscoveryHeartBeatEnabled (line 82) | @ConditionalOnProperty(value = "spring.cloud.nacos.discovery.heart-b...

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosDiscoveryHeartBeatPublisher.java
  class NacosDiscoveryHeartBeatPublisher (line 39) | public class NacosDiscoveryHeartBeatPublisher implements ApplicationEven...
    method NacosDiscoveryHeartBeatPublisher (line 51) | public NacosDiscoveryHeartBeatPublisher(NacosDiscoveryProperties nacos...
    method getTaskScheduler (line 56) | private static ThreadPoolTaskScheduler getTaskScheduler() {
    method start (line 63) | @Override
    method stop (line 72) | @Override
    method isAutoStartup (line 84) | @Override
    method isRunning (line 89) | @Override
    method setApplicationEventPublisher (line 94) | @Override
    method publishHeartBeat (line 102) | public void publishHeartBeat() {

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosServiceDiscovery.java
  class NacosServiceDiscovery (line 38) | public class NacosServiceDiscovery {
    method NacosServiceDiscovery (line 44) | public NacosServiceDiscovery(NacosDiscoveryProperties discoveryPropert...
    method getInstances (line 56) | public List<ServiceInstance> getInstances(String serviceId) throws Nac...
    method getServices (line 68) | public List<String> getServices() throws NacosException {
    method hostToServiceInstanceList (line 75) | public static List<ServiceInstance> hostToServiceInstanceList(
    method hostToServiceInstance (line 87) | public static ServiceInstance hostToServiceInstance(Instance instance,
    method namingService (line 116) | private NamingService namingService() {

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/NacosWatch.java
  class NacosWatch (line 45) | public class NacosWatch implements SmartLifecycle, DisposableBean {
    method NacosWatch (line 57) | public NacosWatch(NacosServiceManager nacosServiceManager,
    method isAutoStartup (line 63) | @Override
    method stop (line 68) | @Override
    method start (line 74) | @Override
    method buildKey (line 104) | private String buildKey() {
    method resetIfNeeded (line 108) | private void resetIfNeeded(Instance instance) {
    method selectCurrentInstance (line 114) | private Optional<Instance> selectCurrentInstance(List<Instance> instan...
    method stop (line 121) | @Override
    method isRunning (line 138) | @Override
    method getPhase (line 143) | @Override
    method destroy (line 148) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/ServiceCache.java
  class ServiceCache (line 41) | public final class ServiceCache {
    method ServiceCache (line 43) | private ServiceCache() {
    method setInstances (line 55) | public static void setInstances(String serviceId, List<ServiceInstance...
    method getInstances (line 64) | public static List<ServiceInstance> getInstances(String serviceId) {
    method set (line 74) | @Deprecated
    method setServiceIds (line 84) | public static void setServiceIds(List<String> serviceIds) {
    method get (line 93) | @Deprecated
    method getServiceIds (line 103) | public static List<String> getServiceIds() {

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/actuate/health/NacosDiscoveryHealthIndicator.java
  class NacosDiscoveryHealthIndicator (line 33) | public class NacosDiscoveryHealthIndicator extends AbstractHealthIndicat...
    method NacosDiscoveryHealthIndicator (line 50) | public NacosDiscoveryHealthIndicator(NacosServiceManager nacosServiceM...
    method NacosDiscoveryHealthIndicator (line 54) | @Deprecated
    method doHealthCheck (line 59) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/configclient/NacosConfigServerAutoConfiguration.java
  class NacosConfigServerAutoConfiguration (line 35) | @Configuration(proxyBeanMethods = false)
    method init (line 46) | @PostConstruct

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/configclient/NacosDiscoveryClientConfigServiceBootstrapConfiguration.java
  class NacosDiscoveryClientConfigServiceBootstrapConfiguration (line 36) | @ConditionalOnClass(ConfigServicePropertySourceLocator.class)

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/reactive/NacosReactiveDiscoveryClient.java
  class NacosReactiveDiscoveryClient (line 39) | public class NacosReactiveDiscoveryClient implements ReactiveDiscoveryCl...
    method NacosReactiveDiscoveryClient (line 49) | public NacosReactiveDiscoveryClient(NacosServiceDiscovery nacosService...
    method description (line 53) | @Override
    method getInstances (line 58) | @Override
    method loadInstancesFromNacos (line 65) | private Function<String, Publisher<ServiceInstance>> loadInstancesFrom...
    method getServices (line 83) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/discovery/reactive/NacosReactiveDiscoveryClientConfiguration.java
  class NacosReactiveDiscoveryClientConfiguration (line 36) | @Configuration(proxyBeanMethods = false)
    method nacosReactiveDiscoveryClient (line 45) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/endpoint/NacosDiscoveryEndpoint.java
  class NacosDiscoveryEndpoint (line 40) | @Endpoint(id = "nacosdiscovery")
    method NacosDiscoveryEndpoint (line 50) | public NacosDiscoveryEndpoint(NacosServiceManager nacosServiceManager,
    method nacosDiscovery (line 59) | @ReadOperation

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/endpoint/NacosDiscoveryEndpointAutoConfiguration.java
  class NacosDiscoveryEndpointAutoConfiguration (line 40) | @Configuration(proxyBeanMethods = false)
    method nacosDiscoveryEndpoint (line 45) | @Bean
    method nacosDiscoveryHealthIndicator (line 54) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/event/NacosDiscoveryInfoChangedEvent.java
  class NacosDiscoveryInfoChangedEvent (line 26) | public class NacosDiscoveryInfoChangedEvent extends ApplicationEvent {
    method NacosDiscoveryInfoChangedEvent (line 28) | public NacosDiscoveryInfoChangedEvent(
    method getSource (line 33) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/loadbalancer/DefaultLoadBalancerAlgorithm.java
  class DefaultLoadBalancerAlgorithm (line 33) | public class DefaultLoadBalancerAlgorithm implements LoadBalancerAlgorit...
    method getServiceId (line 34) | @Override
    method getInstance (line 39) | @Override
    method getOrder (line 44) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/loadbalancer/LoadBalancerAlgorithm.java
  type LoadBalancerAlgorithm (line 31) | public interface LoadBalancerAlgorithm extends Ordered {
    method getServiceId (line 37) | String getServiceId();
    method getInstance (line 39) | ServiceInstance getInstance(Request<?> request, List<ServiceInstance> ...

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/loadbalancer/LoadBalancerNacosAutoConfiguration.java
  class LoadBalancerNacosAutoConfiguration (line 30) | @Configuration(proxyBeanMethods = false)
    method defaultLoadBalancerAlgorithm (line 36) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/loadbalancer/NacosLoadBalancer.java
  class NacosLoadBalancer (line 51) | public class NacosLoadBalancer implements ReactorServiceInstanceLoadBala...
    method init (line 75) | @PostConstruct
    method filterInstanceByIpType (line 86) | private List<ServiceInstance> filterInstanceByIpType(List<ServiceInsta...
    method NacosLoadBalancer (line 114) | public NacosLoadBalancer(
    method choose (line 127) | @Override
    method getInstanceResponse (line 134) | private Response<ServiceInstance> getInstanceResponse(Request<?> request,

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/loadbalancer/NacosLoadBalancerClientConfiguration.java
  class NacosLoadBalancerClientConfiguration (line 54) | @Configuration(proxyBeanMethods = false)
    method nacosLoadBalancer (line 61) | @Bean
    class ReactiveSupportConfiguration (line 83) | @Configuration(proxyBeanMethods = false)
      method discoveryClientServiceInstanceListSupplier (line 88) | @Bean
      method zonePreferenceDiscoveryClientServiceInstanceListSupplier (line 98) | @Bean
    class BlockingSupportConfiguration (line 110) | @Configuration(proxyBeanMethods = false)
      method discoveryClientServiceInstanceListSupplier (line 115) | @Bean
      method zonePreferenceDiscoveryClientServiceInstanceListSupplier (line 125) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/loadbalancer/ServiceInstanceFilter.java
  type ServiceInstanceFilter (line 31) | public interface ServiceInstanceFilter extends Ordered {
    method filterInstance (line 32) | List<ServiceInstance> filterInstance(Request<?> request, List<ServiceI...

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/registry/NacosAutoServiceRegistration.java
  class NacosAutoServiceRegistration (line 36) | public class NacosAutoServiceRegistration
    method NacosAutoServiceRegistration (line 44) | public NacosAutoServiceRegistration(ApplicationContext context,
    method setPort (line 52) | @Deprecated
    method getRegistration (line 57) | @Override
    method getManagementRegistration (line 66) | @Override
    method register (line 71) | @Override
    method registerManagement (line 83) | @Override
    method getConfiguration (line 92) | @Override
    method isEnabled (line 97) | @Override
    method getAppName (line 102) | @Override
    method onNacosDiscoveryInfoChangedEvent (line 109) | @EventListener
    method restart (line 114) | private void restart() {

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/registry/NacosGracefulShutdownDelegate.java
  class NacosGracefulShutdownDelegate (line 34) | public class NacosGracefulShutdownDelegate implements ApplicationListene...
    method NacosGracefulShutdownDelegate (line 44) | public NacosGracefulShutdownDelegate(NacosAutoServiceRegistration auto...
    method setApplicationContext (line 50) | @Override
    method onApplicationEvent (line 55) | @Override
    method doGracefulShutdown (line 67) | protected void doGracefulShutdown() {
    method supportsAsyncExecution (line 83) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/registry/NacosRegistration.java
  class NacosRegistration (line 39) | public class NacosRegistration implements Registration {
    method NacosRegistration (line 67) | public NacosRegistration(List<NacosRegistrationCustomizer> registratio...
    method init (line 75) | @PostConstruct
    method customize (line 115) | protected void customize(
    method getServiceId (line 124) | @Override
    method getHost (line 129) | @Override
    method getPort (line 134) | @Override
    method setPort (line 139) | public void setPort(int port) {
    method isSecure (line 143) | @Override
    method getUri (line 148) | @Override
    method getMetadata (line 153) | @Override
    method isRegisterEnabled (line 158) | public boolean isRegisterEnabled() {
    method getCluster (line 162) | public String getCluster() {
    method getRegisterWeight (line 166) | public float getRegisterWeight() {
    method getNacosDiscoveryProperties (line 170) | public NacosDiscoveryProperties getNacosDiscoveryProperties() {
    method toString (line 174) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/registry/NacosRegistrationCustomizer.java
  type NacosRegistrationCustomizer (line 22) | public interface NacosRegistrationCustomizer {
    method customize (line 28) | void customize(NacosRegistration registration);

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/registry/NacosServiceRegistry.java
  class NacosServiceRegistry (line 41) | public class NacosServiceRegistry implements ServiceRegistry<Registratio...
    method NacosServiceRegistry (line 53) | public NacosServiceRegistry(NacosServiceManager nacosServiceManager,
    method register (line 59) | @Override
    method deregister (line 91) | @Override
    method close (line 117) | @Override
    method setStatus (line 127) | @Override
    method getStatus (line 149) | @Override
    method getNacosInstanceFromRegistration (line 170) | private Instance getNacosInstanceFromRegistration(Registration registr...
    method namingService (line 182) | private NamingService namingService() {

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/registry/NacosServiceRegistryAutoConfiguration.java
  class NacosServiceRegistryAutoConfiguration (line 42) | @Configuration(proxyBeanMethods = false)
    method nacosServiceRegistry (line 52) | @Bean
    method nacosRegistration (line 59) | @Bean
    method nacosAutoServiceRegistration (line 69) | @Bean
    method nacosGracefulShutdownDelegate (line 80) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/util/InetIPv6Utils.java
  class InetIPv6Utils (line 36) | public class InetIPv6Utils {
    method InetIPv6Utils (line 43) | public InetIPv6Utils(final InetUtilsProperties properties) {
    method findFirstValidHostInfo (line 47) | private InetUtils.HostInfo findFirstValidHostInfo() {
    method findFirstValidIPv6Address (line 52) | private InetAddress findFirstValidIPv6Address() {
    method findIPv6Address (line 97) | public String findIPv6Address() {
    method normalizeIPv6 (line 102) | private String normalizeIPv6(String ip) {
    method isPreferredAddress (line 109) | private boolean isPreferredAddress(InetAddress address) {
    method ignoreInterface (line 130) | boolean ignoreInterface(String interfaceName) {
    method getHostInfo (line 139) | private InetUtils.HostInfo getHostInfo(final InetAddress address) {
    method isUniqueLocalAddress (line 161) | private boolean isUniqueLocalAddress(InetAddress inetAddress) {

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/main/java/com/alibaba/cloud/nacos/util/UtilIPv6AutoConfiguration.java
  class UtilIPv6AutoConfiguration (line 30) | @Configuration(proxyBeanMethods = false)
    method UtilIPv6AutoConfiguration (line 35) | public UtilIPv6AutoConfiguration() {
    method inetIPv6Utils (line 38) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/NacosDiscoveryClientTests.java
  class NacosDiscoveryClientTests (line 46) | @ExtendWith(MockitoExtension.class)
    method testGetInstances (line 58) | @Test
    method testGetServices (line 70) | @Test
    method testGetInstancesFailureToleranceEnabled (line 81) | @Test
    method testGetInstancesFailureToleranceDisabled (line 93) | @Test
    method testFailureToleranceEnabled (line 103) | @Test
    method testFailureToleranceDisabled (line 115) | @Test
    method testCacheIsOK (line 127) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/NacosDiscoveryPropertiesServerAddressBothLevelTests.java
  class NacosDiscoveryPropertiesServerAddressBothLevelTests (line 36) | @SpringBootTest(classes = TestConfig.class, properties = {
    method testGetServerAddr (line 45) | @Test
    class TestConfig (line 50) | @Configuration

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/NacosDiscoveryPropertiesServerAddressTopLevelTests.java
  class NacosDiscoveryPropertiesServerAddressTopLevelTests (line 37) | @SpringBootTest(classes = TestConfig.class, properties = {
    method testGetServerAddr (line 45) | @Test
    class TestConfig (line 50) | @Configuration

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/discovery/NacosDiscoveryAutoConfigurationTests.java
  class NacosDiscoveryAutoConfigurationTests (line 33) | public class NacosDiscoveryAutoConfigurationTests {
    method testDefaultInitialization (line 41) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/discovery/NacosDiscoveryClientConfigurationTest.java
  class NacosDiscoveryClientConfigurationTest (line 38) | public class NacosDiscoveryClientConfigurationTest {
    method taskScheduler (line 50) | @Bean
    method testDefaultInitialization (line 55) | @Test
    method testDiscoveryBlockingDisabled (line 64) | @Test
    method testNacosWatchEnabled (line 73) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/discovery/NacosDiscoveryHeartBeatConfigurationTest.java
  class NacosDiscoveryHeartBeatConfigurationTest (line 34) | public class NacosDiscoveryHeartBeatConfigurationTest {
    method testDefaultNacosDiscoveryHeartBeatPublisher (line 47) | @Test
    method testNacosDiscoveryHeartBeatPublisherEnabledForGateway (line 54) | @Test
    method testNacosDiscoveryHeartBeatPublisherEnabledForProperties (line 63) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/discovery/NacosDiscoveryLoadBalancerConfigurationTest.java
  class NacosDiscoveryLoadBalancerConfigurationTest (line 38) | public class NacosDiscoveryLoadBalancerConfigurationTest {
    method testNacosLoadBalancerEnabled (line 51) | @Test
    method testNacosLoadBalancerDisabled (line 66) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/discovery/NacosServiceDiscoveryTest.java
  class NacosServiceDiscoveryTest (line 44) | public class NacosServiceDiscoveryTest {
    method testGetInstances (line 52) | @Test
    method testGetServices (line 93) | @Test
    method getUri (line 127) | private String getUri(ServiceInstance instance) {

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/discovery/reactive/NacosReactiveDiscoveryClientConfigurationTests.java
  class NacosReactiveDiscoveryClientConfigurationTests (line 34) | public class NacosReactiveDiscoveryClientConfigurationTests {
    method testDefaultInitialization (line 43) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/discovery/reactive/NacosReactiveDiscoveryClientTests.java
  class NacosReactiveDiscoveryClientTests (line 42) | @ExtendWith(MockitoExtension.class)
    method testGetInstances (line 54) | @Test
    method testGetServices (line 65) | @Test
    method testGetInstancesFailureToleranceEnabled (line 77) | @Test
    method testGetInstancesFailureToleranceDisabled (line 90) | @Test
    method testFailureToleranceEnabled (line 102) | @Test
    method testFailureToleranceDisabled (line 116) | @Test
    method testCacheIsOK (line 128) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/registry/MockNamingService.java
  class MockNamingService (line 34) | public abstract class MockNamingService implements NamingService {
    method registerInstance (line 36) | @Override
    method registerInstance (line 42) | @Override
    method registerInstance (line 48) | @Override
    method registerInstance (line 54) | @Override
    method registerInstance (line 60) | @Override
    method registerInstance (line 66) | @Override
    method batchRegisterInstance (line 72) | @Override
    method batchDeregisterInstance (line 77) | @Override
    method deregisterInstance (line 82) | @Override
    method deregisterInstance (line 88) | @Override
    method deregisterInstance (line 94) | @Override
    method deregisterInstance (line 100) | @Override
    method deregisterInstance (line 106) | @Override
    method deregisterInstance (line 112) | @Override
    method getAllInstances (line 118) | @Override
    method getAllInstances (line 123) | @Override
    method getAllInstances (line 129) | @Override
    method getAllInstances (line 135) | @Override
    method getAllInstances (line 141) | @Override
    method getAllInstances (line 147) | @Override
    method getAllInstances (line 153) | @Override
    method getAllInstances (line 159) | @Override
    method selectInstances (line 165) | @Override
    method selectInstances (line 171) | @Override
    method selectInstances (line 177) | @Override
    method selectInstances (line 183) | @Override
    method selectInstances (line 189) | @Override
    method selectInstances (line 195) | @Override
    method selectInstances (line 201) | @Override
    method selectInstances (line 207) | @Override
    method selectOneHealthyInstance (line 214) | @Override
    method selectOneHealthyInstance (line 219) | @Override
    method selectOneHealthyInstance (line 225) | @Override
    method selectOneHealthyInstance (line 231) | @Override
    method selectOneHealthyInstance (line 237) | @Override
    method selectOneHealthyInstance (line 243) | @Override
    method selectOneHealthyInstance (line 249) | @Override
    method selectOneHealthyInstance (line 255) | @Override
    method subscribe (line 261) | @Override
    method subscribe (line 267) | @Override
    method subscribe (line 273) | @Override
    method subscribe (line 279) | @Override
    method unsubscribe (line 285) | @Override
    method unsubscribe (line 291) | @Override
    method unsubscribe (line 297) | @Override
    method unsubscribe (line 303) | @Override
    method getServicesOfServer (line 309) | @Override
    method getServicesOfServer (line 315) | @Override
    method getServicesOfServer (line 321) | @Override
    method getServicesOfServer (line 327) | @Override
    method getSubscribeServices (line 333) | @Override
    method getServerStatus (line 338) | @Override
    method shutDown (line 343) | @Override
    method emptyListView (line 347) | private ListView<String> emptyListView() {
    method subscribe (line 354) | @Override
    method subscribe (line 359) | @Override
    method unsubscribe (line 364) | @Override
    method unsubscribe (line 369) | @Override

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/registry/NacosAutoServiceRegistrationIpNetworkInterfaceTests.java
  class NacosAutoServiceRegistrationIpNetworkInterfaceTests (line 54) | @SpringBootTest(
    method fuzzyWatch (line 77) | @Override
    method fuzzyWatch (line 82) | @Override
    method fuzzyWatchWithServiceKeys (line 87) | @Override
    method fuzzyWatchWithServiceKeys (line 92) | @Override
    method cancelFuzzyWatch (line 97) | @Override
    method cancelFuzzyWatch (line 102) | @Override
    method finished (line 108) | @AfterAll
    method contextLoads (line 114) | @Test
    method checkoutNacosDiscoveryServiceIP (line 123) | private void checkoutNacosDiscoveryServiceIP() {
    method getIPFromNetworkInterface (line 128) | private String getIPFromNetworkInterface(String networkInterface) {
    class TestConfig (line 152) | @Configuration

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/registry/NacosAutoServiceRegistrationIpTests.java
  class NacosAutoServiceRegistrationIpTests (line 48) | @SpringBootTest(classes = NacosAutoServiceRegistrationIpTests.TestConfig...
    method fuzzyWatch (line 69) | @Override
    method fuzzyWatch (line 74) | @Override
    method fuzzyWatchWithServiceKeys (line 79) | @Override
    method fuzzyWatchWithServiceKeys (line 84) | @Override
    method cancelFuzzyWatch (line 89) | @Override
    method cancelFuzzyWatch (line 94) | @Override
    method finished (line 100) | @AfterAll
    method contextLoads (line 107) | @Test
    method checkoutNacosDiscoveryServiceIP (line 116) | private void checkoutNacosDiscoveryServiceIP() {
    class TestConfig (line 120) | @Configuration

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/registry/NacosAutoServiceRegistrationManagementPortTests.java
  class NacosAutoServiceRegistrationManagementPortTests (line 48) | @SpringBootTest(
    method fuzzyWatch (line 72) | @Override
    method fuzzyWatch (line 77) | @Override
    method fuzzyWatchWithServiceKeys (line 82) | @Override
    method fuzzyWatchWithServiceKeys (line 87) | @Override
    method cancelFuzzyWatch (line 92) | @Override
    method cancelFuzzyWatch (line 97) | @Override
    method finished (line 103) | @AfterAll
    method contextLoads (line 110) | @Test
    method checkoutNacosDiscoveryManagementData (line 119) | private void checkoutNacosDiscoveryManagementData() {
    class TestConfig (line 127) | @Configuration

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/registry/NacosAutoServiceRegistrationPortTests.java
  class NacosAutoServiceRegistrationPortTests (line 48) | @SpringBootTest(classes = NacosAutoServiceRegistrationPortTests.TestConf...
    method fuzzyWatch (line 69) | @Override
    method fuzzyWatch (line 74) | @Override
    method fuzzyWatchWithServiceKeys (line 79) | @Override
    method fuzzyWatchWithServiceKeys (line 84) | @Override
    method cancelFuzzyWatch (line 89) | @Override
    method cancelFuzzyWatch (line 94) | @Override
    method finished (line 100) | @AfterAll
    method contextLoads (line 107) | @Test
    method checkoutNacosDiscoveryServicePort (line 116) | private void checkoutNacosDiscoveryServicePort() {
    class TestConfig (line 120) | @Configuration

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/registry/NacosAutoServiceRegistrationTests.java
  class NacosAutoServiceRegistrationTests (line 53) | @SpringBootTest(classes = NacosAutoServiceRegistrationTests.TestConfig.c...
    method fuzzyWatch (line 95) | @Override
    method fuzzyWatch (line 100) | @Override
    method fuzzyWatchWithServiceKeys (line 105) | @Override
    method fuzzyWatchWithServiceKeys (line 110) | @Override
    method cancelFuzzyWatch (line 115) | @Override
    method cancelFuzzyWatch (line 120) | @Override
    method finished (line 126) | @AfterAll
    method contextLoads (line 133) | @Test
    method checkAutoRegister (line 163) | private void checkAutoRegister() {
    method checkoutNacosDiscoveryServerAddr (line 167) | private void checkoutNacosDiscoveryServerAddr() {
    method checkoutNacosDiscoveryEndpoint (line 171) | private void checkoutNacosDiscoveryEndpoint() {
    method checkoutNacosDiscoveryNamespace (line 175) | private void checkoutNacosDiscoveryNamespace() {
    method checkoutNacosDiscoveryLogName (line 179) | private void checkoutNacosDiscoveryLogName() {
    method checkoutNacosDiscoveryWeight (line 183) | private void checkoutNacosDiscoveryWeight() {
    method checkoutNacosDiscoveryClusterName (line 187) | private void checkoutNacosDiscoveryClusterName() {
    method checkoutNacosDiscoveryCache (line 191) | private void checkoutNacosDiscoveryCache() {
    method checkoutNacosDiscoverySecure (line 195) | private void checkoutNacosDiscoverySecure() {
    method checkoutNacosDiscoveryAccessKey (line 200) | private void checkoutNacosDiscoveryAccessKey() {
    method checkoutNacosDiscoverySecrectKey (line 204) | private void checkoutNacosDiscoverySecrectKey() {
    method checkoutNacosDiscoveryHeartBeatInterval (line 208) | private void checkoutNacosDiscoveryHeartBeatInterval() {
    method checkoutNacosDiscoveryHeartBeatTimeout (line 212) | private void checkoutNacosDiscoveryHeartBeatTimeout() {
    method checkoutNacosDiscoveryIpDeleteTimeout (line 216) | private void checkoutNacosDiscoveryIpDeleteTimeout() {
    method checkoutNacosDiscoveryServiceName (line 220) | private void checkoutNacosDiscoveryServiceName() {
    method checkoutNacosDiscoveryServiceIP (line 224) | private void checkoutNacosDiscoveryServiceIP() {
    method checkoutNacosDiscoveryServicePort (line 228) | private void checkoutNacosDiscoveryServicePort() {
    method checkoutEndpoint (line 232) | private void checkoutEndpoint() throws Exception {
    class TestConfig (line 242) | @Configuration

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/registry/NacosGracefulShutdownDelegateTests.java
  class NacosGracefulShutdownDelegateTests (line 40) | @ExtendWith(MockitoExtension.class)
    method setUp (line 55) | @BeforeEach
    method sameContextShouldTriggerStop (line 60) | @Test
    method differentContextShouldNotTriggerStop (line 69) | @Test
    method stopExceptionShouldBeSwallowed (line 76) | @Test
    method supportsAsyncExecutionShouldBeFalse (line 85) | @Test

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/registry/NacosRegistrationCustomizerTest.java
  class NacosRegistrationCustomizerTest (line 48) | @SpringBootTest(classes = NacosRegistrationCustomizerTest.TestConfig.class,
    method fuzzyWatch (line 62) | @Override
    method fuzzyWatch (line 67) | @Override
    method fuzzyWatchWithServiceKeys (line 72) | @Override
    method fuzzyWatchWithServiceKeys (line 77) | @Override
    method cancelFuzzyWatch (line 82) | @Override
    method cancelFuzzyWatch (line 87) | @Override
    method finished (line 93) | @AfterAll
    method contextLoads (line 101) | @Test
    class TestConfig (line 108) | @Configuration
      method nacosRegistrationCustomizer (line 115) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/test/CommonTestConfig.java
  class CommonTestConfig (line 28) | @Configuration
    method loadBalancedRestTemplate (line 31) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-discovery/src/test/java/com/alibaba/cloud/nacos/test/NacosMockTest.java
  class NacosMockTest (line 27) | public final class NacosMockTest {
    method NacosMockTest (line 29) | private NacosMockTest() {
    method serviceInstance (line 33) | public static Instance serviceInstance(String serviceName, boolean isH...
    method serviceInstance (line 43) | public static Instance serviceInstance(String serviceName, boolean isH...

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-schedulerx/src/main/java/com/alibaba/cloud/scheduling/SchedulingConstants.java
  class SchedulingConstants (line 22) | public final class SchedulingConstants {
    method SchedulingConstants (line 34) | private SchedulingConstants() {

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-schedulerx/src/main/java/com/alibaba/cloud/scheduling/schedulerx/JobProperty.java
  class JobProperty (line 29) | @ConfigurationProperties(prefix = SchedulerxProperties.CONFIG_PREFIX)
    method getJobType (line 56) | public String getJobType() {
    method setJobType (line 60) | public void setJobType(String jobType) {
    method getJobModel (line 64) | public String getJobModel() {
    method setJobModel (line 68) | public void setJobModel(String jobModel) {
    method getClassName (line 72) | public String getClassName() {
    method setClassName (line 76) | public void setClassName(String className) {
    method getCron (line 80) | public String getCron() {
    method setCron (line 84) | public void setCron(String cron) {
    method getOneTime (line 88) | public String getOneTime() {
    method setOneTime (line 92) | public void setOneTime(String oneTime) {
    method getJobParameter (line 96) | public String getJobParameter() {
    method setJobParameter (line 100) | public void setJobParameter(String jobParameter) {
    method getDescription (line 104) | public String getDescription() {
    method setDescription (line 108) | public void setDescription(String description) {
    method isOverwrite (line 112) | public boolean isOverwrite() {
    method setOverwrite (line 116) | public void setOverwrite(boolean overwrite) {
    method getContent (line 120) | public String getContent() {
    method setContent (line 124) | public void setContent(String content) {
    method getJobName (line 128) | public String getJobName() {
    method setJobName (line 132) | public void setJobName(String jobName) {
    method getTimeType (line 136) | public Integer getTimeType() {
    method setTimeType (line 140) | public void setTimeType(Integer timeType) {
    method getTimeExpression (line 144) | public String getTimeExpression() {
    method setTimeExpression (line 148) | public void setTimeExpression(String timeExpression) {

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-schedulerx/src/main/java/com/alibaba/cloud/scheduling/schedulerx/SchedulerxAutoConfigure.java
  class SchedulerxAutoConfigure (line 30) | @EnableConfigurationProperties(SchedulerxProperties.class)

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-schedulerx/src/main/java/com/alibaba/cloud/scheduling/schedulerx/SchedulerxConfigurations.java
  class SchedulerxConfigurations (line 44) | public class SchedulerxConfigurations {
    class SchedulerxWorkerConfiguration (line 46) | @Configuration(proxyBeanMethods = false)
      method jobSyncService (line 58) | @Bean
      method syncJobs (line 63) | @PostConstruct
      method schedulerxWorker (line 72) | @Bean
    class SpringScheduleAdaptConfiguration (line 151) | @Configuration(proxyBeanMethods = false)
      method noOpScheduler (line 156) | @Bean(ScheduledAnnotationBeanPostProcessor.DEFAULT_TASK_SCHEDULER_BE...
      method schedulerxSchedulingConfigurer (line 161) | @Bean
      method schedulerxAnnotationBeanPostProcessor (line 166) | @Bean
      method scheduledJobSyncConfigurer (line 171) | @Bean

FILE: spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-schedulerx/src/main/java/com/alibaba/cloud/scheduling/schedulerx/SchedulerxProperties.java
  class SchedulerxProperties (line 38) | @ConfigurationProperties(prefix = SchedulerxProperties.CONFIG_PREFIX)
    method getDomainName (line 303) | public String getDomainName() {
    method setDomainName (line 307) | public void setDomainName(String domainName) {
    method getGroupId (line 311) | public String getGroupId() {
    method setGroupId (line 315) | public void setGroupId(String groupId) {
    method isEnabled (line 319) | public boolean isEnabled() {
    method setEnabled (line 323) | public void setEnabled(boolean enabled) {
    method getHost (line 327) | public String getHost() {
    method setHost (line 331) | public void setHost(String host) {
    method getPort (line 335) | public int getPort() {
    method setPort (line 339) | public void setPort(int port) {
    method getEnableUnits (line 343) | public String getEnableUnits() {
    method setEnableUnits (line 347) | public void setEnableUnits(String enableUnits) {
    method getDisableUnits (line 351) | public String getDisableUnits() {
    method setDisableUnits (line 355) | public void setDisableUnits(String disableUnits) {
    method getEnableSites (line 359) | public String getEnableSites() {
    method setEnableSites (line 363) | public void setEnableSites(String enableSites) {
    method getDisableSites (line 367) | public String getDisableSites() {
    method setDisableSites (line 371) | public void setDisableSites(String disableSites) {
    method isEnableBatchWork (line 375) | public boolean isEnableBatchWork() {
    method setEnableBatchWork (line 379) | public void setEnableBatchWork(boolean enableBatchWork) {
    method getAliyunAccessKey (line 383) | public String getAliyunAccessKey() {
    method setAliyunAccessKey (line 387) | public void setAliyunAccessKey(String aliyunAccessKey) {
    method getAliyunSecretKey (line 391) | public String getAliyunSecretKey() {
    method setAliyunSecretKey (line 395) | public void setAliyunSecretKey(String aliyunSecretKey) {
    method getNamespace (line 399) | public String getNamespace() {
    method setNamespace (line 403) | public void setNamespace(String namespace) {
    method getEndpoint (line 407) | public String getEndpoint() {
    method setEndpoint (line 411) | public void setEndpoint(String endpoint) {
    method getEndpointPort (line 415) | public String getEndpointPort() {
    method setEndpointPort (line 419) | public void setEndpointPort(String endpointPort) {
    method getNamespaceName (line 423) | public String getNamespaceName() {
    method setNamespaceName (line 427) | public void setNamespaceName(String namespaceName) {
    method getNamespaceSource (line 431) | public String getNamespaceSource() {
    method setNamespaceSource (line 435) | public void setNamespaceSource(String namespaceSource) {
    method getMaxTaskBodySize (line 439) | public int getMaxTaskBodySize() {
    method setMaxTaskBodySize (line 443) | public void setMaxTaskBodySize(int maxTaskBodySize) {
    method isBlockAppStart (line 447) | public boolean isBlockAppStart() {
    method setBlockAppStart (line 451) | public void setBlockAppStart(boolean blockAppStart) {
    method getAppName (line 455) | public String getAppName() {
    method setAppName (line 459) | public void setAppName(String appName) {
    method getAppKey (line 463) | public String getAppKey() {
    method setAppKey (line 467) | public void setAppKey(String appKey) {
    method getStsAccessKey (line 471) | public 
Condensed preview — 748 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (2,476K chars).
[
  {
    "path": ".circleci/config.yml",
    "chars": 1290,
    "preview": "version: 2\njobs:\n  build:\n    docker:\n      - image: springcloud/pipeline-base\n        user: appuser\n    environment:\n  "
  },
  {
    "path": ".codecov.yml",
    "chars": 52,
    "preview": "\ncoverage:\n  status:\n    project: off\n    patch: off"
  },
  {
    "path": ".editorconfig",
    "chars": 328,
    "preview": "root = true\n\n[*.java]\nindent_style = tab\nindent_size = 4\ncontinuation_indent_size = 8\n\n[*.groovy]\nindent_style = tab\nind"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/bug_report.md",
    "chars": 1223,
    "preview": "---\nname: Bug report\nabout: Create a report to help us improve\ntitle: ''\nlabels: ''\nassignees: ''\n\n---\n\n我们鼓励使用英文,如果不能直接使"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/config.yml",
    "chars": 27,
    "preview": "blank_issues_enabled: true\n"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/feature_request.md",
    "chars": 1060,
    "preview": "---\nname: Feature request\nabout: Suggest an idea for this project\ntitle: ''\nlabels: ''\nassignees: ''\n\n---\n\n我们鼓励使用英文,如果不能"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/question.md",
    "chars": 860,
    "preview": "---\nname: Question\nabout: how to ask a valid question\ntitle: ''\nlabels: ''\nassignees: ''\n\n---\n\n我们鼓励使用英文,如果不能直接使用,可以使用翻译软"
  },
  {
    "path": ".github/PULL_REQUEST_TEMPLATE.md",
    "chars": 292,
    "preview": "\n### Describe what this PR does / why we need it\n\n\n### Does this pull request fix one issue?\n\n<!--If that, add \"Fixes #x"
  },
  {
    "path": ".github/dependbot.yml",
    "chars": 396,
    "preview": "# `dependabot.yml` file with\n# maven version update.\n\nversion: 2\nupdates:\n\n  - package-ecosystem: \"maven\"\n    directory:"
  },
  {
    "path": ".github/labels.yml",
    "chars": 286,
    "preview": "area:\n  - 'ai'\n  - 'ci'\n  - 'nacos'\n  - 'sentinel'\n  - 'rocketmq'\n  - 'community'\n  - 'example'\n  - 'seata'\n  - 'openSer"
  },
  {
    "path": ".github/workflows/github-packages-release.yml",
    "chars": 1608,
    "preview": "name: GitHub Packages Release\non:\n  push:\n    branches:\n      - 2023.x\n      - 2025.0.x\n      - 2025.1.x\njobs:\n  release"
  },
  {
    "path": ".github/workflows/integration-test.yml",
    "chars": 1466,
    "preview": "name: Integration Testing\non:\n  push:\n    branches:\n      - 2023.x\n      - 2025.0.x\n      - 2025.1.x\n  pull_request:\n   "
  },
  {
    "path": ".github/workflows/issue-command.yml",
    "chars": 664,
    "preview": "name: Issue and PR comment commands\n\npermissions: {}\n\non:\n  issue_comment:\n    types:\n      - created\n      - edited\n\njo"
  },
  {
    "path": ".github/workflows/md-link-check.yml",
    "chars": 1529,
    "preview": "name: 'Link Checker'\n\n# **What it does**: Renders the content of every page and check all internal links.\n# **Why we hav"
  },
  {
    "path": ".github/workflows/stale.yml",
    "chars": 1188,
    "preview": "name: \"Stale bot of marking stale issues\"\non:\n  schedule:\n    - cron: \"50 18 * * *\"\n\npermissions:\n  issues: write\n\njobs:"
  },
  {
    "path": ".gitignore",
    "chars": 541,
    "preview": "# Compiled class file\n*.class\n*.classpath\n*.factorypath\n\n# Log file\n*.log\n\n# BlueJ files\n*.ctxt\n\n# Mobile Tools for Java"
  },
  {
    "path": ".licenscheckconfig.yaml",
    "chars": 1797,
    "preview": "header:\n  license:\n    spdx-id: Apache-2.0\n    copyright-owner: alibaba\n    content: |\n      Copyright 2013-2023 the ori"
  },
  {
    "path": ".mvn/jvm.config",
    "chars": 95,
    "preview": "-Xmx1024m -XX:CICompilerCount=1 -XX:TieredStopAtLevel=1 -Djava.security.egd=file:/dev/./urandom"
  },
  {
    "path": ".mvn/wrapper/maven-wrapper.properties",
    "chars": 835,
    "preview": "# Copyright 2013-2023 the original author or authors.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\")"
  },
  {
    "path": "CODE_OF_CONDUCT.md",
    "chars": 2360,
    "preview": "## Contributor Code of Conduct\n\nAs contributors and maintainers of this project, and in the interest of fostering an ope"
  },
  {
    "path": "LICENSE",
    "chars": 11357,
    "preview": "                                 Apache License\n                           Version 2.0, January 2004\n                   "
  },
  {
    "path": "README-zh.md",
    "chars": 8099,
    "preview": "# Spring Cloud Alibaba\n\n[![CircleCI](https://circleci.com/gh/alibaba/spring-cloud-alibaba/tree/2025.1.x.svg?style=svg)]("
  },
  {
    "path": "README.md",
    "chars": 12078,
    "preview": "# Spring Cloud Alibaba\n\n[![CircleCI](https://circleci.com/gh/alibaba/spring-cloud-alibaba/tree/2025.1.x.svg?style=svg)]("
  },
  {
    "path": "Roadmap-zh.md",
    "chars": 1531,
    "preview": "# Roadmap\n\n[Spring Cloud Alibaba](https://github.com/alibaba/spring-cloud-alibaba) 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组"
  },
  {
    "path": "Roadmap.md",
    "chars": 3669,
    "preview": "# Roadmap\n\nSee the [中文文档](https://github.com/alibaba/spring-cloud-alibaba/blob/2025.1.x/Roadmap-zh.md) for Chinese Roadm"
  },
  {
    "path": "eclipse/checkstyle-suppressions.xml",
    "chars": 470,
    "preview": "<?xml version=\"1.0\"?>\n<!DOCTYPE suppressions PUBLIC\n        \"-//Checkstyle//DTD SuppressionFilter Configuration 1.2//EN\""
  },
  {
    "path": "eclipse/eclipse-code-formatter.xml",
    "chars": 31347,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<profiles version=\"12\">\n<profile kind=\"CodeFormatterProfile\" name"
  },
  {
    "path": "eclipse/org.eclipse.jdt.core.prefs",
    "chars": 32692,
    "preview": "eclipse.preferences.version=1\norg.eclipse.jdt.core.codeComplete.argumentPrefixes=\norg.eclipse.jdt.core.codeComplete.argu"
  },
  {
    "path": "eclipse/org.eclipse.jdt.ui.prefs",
    "chars": 11557,
    "preview": "cleanup.add_default_serial_version_id=true\ncleanup.add_generated_serial_version_id=false\ncleanup.add_missing_annotations"
  },
  {
    "path": "mvnw",
    "chars": 10284,
    "preview": "#!/bin/sh\n# ----------------------------------------------------------------------------\n# Licensed to the Apache Softwa"
  },
  {
    "path": "mvnw.cmd",
    "chars": 6734,
    "preview": "@REM ----------------------------------------------------------------------------\n@REM Licensed to the Apache Software F"
  },
  {
    "path": "pom.xml",
    "chars": 19216,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\n         xmlns:xsi=\"http://ww"
  },
  {
    "path": "spring-cloud-alibaba-coverage/pom.xml",
    "chars": 3696,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\n         xmlns:xsi=\"http://www"
  },
  {
    "path": "spring-cloud-alibaba-dependencies/pom.xml",
    "chars": 17264,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\n         xmlns:xsi=\"http://www"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/config-init/config/datasource-config.yaml",
    "chars": 224,
    "preview": "spring:\n  datasource:\n    driver-class-name: com.mysql.jdbc.Driver\n    username: 'root'\n    password: 'root'\n  main:\n   "
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/config-init/config/integrated-account.yaml",
    "chars": 120,
    "preview": "spring:\n  datasource:\n    url: jdbc:mysql://integrated-mysql:3306/integrated_account?useSSL=false&characterEncoding=utf8"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/config-init/config/integrated-consumer.yaml",
    "chars": 559,
    "preview": "spring:\n  datasource:\n    url: jdbc:mysql://integrated-mysql:3306/integrated_praise?useSSL=false&characterEncoding=utf8\n"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/config-init/config/integrated-gateway.yaml",
    "chars": 777,
    "preview": "spring:\n  cloud:\n    gateway:\n      routes:\n        - id: placeOrder\n          uri: lb://integrated-order\n          pred"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/config-init/config/integrated-order.yaml",
    "chars": 118,
    "preview": "spring:\n  datasource:\n    url: jdbc:mysql://integrated-mysql:3306/integrated_order?useSSL=false&characterEncoding=utf8"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/config-init/config/integrated-provider.yaml",
    "chars": 307,
    "preview": "spring:\n  cloud:\n    stream:\n      bindings:\n        praise-output:\n          destination: PRAISE-TOPIC-01\n          con"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/config-init/config/integrated-storage.yaml",
    "chars": 120,
    "preview": "spring:\n  datasource:\n    url: jdbc:mysql://integrated-mysql:3306/integrated_storage?useSSL=false&characterEncoding=utf8"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/config-init/rocketmq/broker.conf",
    "chars": 970,
    "preview": "# Licensed to the Apache Software Foundation (ASF) under one or more\n# contributor license agreements.  See the NOTICE f"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/config-init/scripts/nacos-config-quick.sh",
    "chars": 1426,
    "preview": "#!/bin/sh\necho \"Nacos auto config started\"\ndatasourceConfig=$(cat ../config/datasource-config.yaml)\nstorageConfig=$(cat "
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/config-init/sql/init.sql",
    "chars": 3974,
    "preview": "-- Storage库存微服务的数据库业务初始化\nDROP DATABASE IF EXISTS integrated_storage;\nCREATE DATABASE integrated_storage;\nUSE integrated_"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/docker-compose/docker-compose-env.yml",
    "chars": 1722,
    "preview": "version: \"3\"\nservices:\n\n  # nacos\n  nacos:\n    image: nacos/nacos-server:v3.1.0\n    hostname: nacos-server\n    restart: "
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/docker-compose/docker-compose-service.yml",
    "chars": 2212,
    "preview": "version: \"3\"\nservices:\n\n  # integrated example module\n  integrated-frontend:\n    image: integrated-frontend\n    hostname"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/docs/en/docker-compose-deployment.md",
    "chars": 7317,
    "preview": "# Spring Cloud Alibaba Containerized Deployment Best Practices | Docker-Compose Edition\n\n## Preparation\n\nIf you have not"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/docs/en/kubernetes-deployment.md",
    "chars": 6695,
    "preview": "# Spring Cloud Alibaba Containerized Deployment Best Practices | Kubernetes Helm-Chart Edition\n\n## Preparation\n\nThis is "
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/docs/en/local-deployment.md",
    "chars": 9443,
    "preview": "# Spring Cloud Alibaba Containerized Deployment Best Practices | Local Deployment Edition\n\n## Preparation\n\n### Environme"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/docs/en/readme.md",
    "chars": 4295,
    "preview": "# Integrated Example\n\n## Project Description\n\nThis project is a demo of Spring Cloud Alibaba (hereinafter referred to as"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/docs/zh/docker-compose-deploy-zh.md",
    "chars": 3940,
    "preview": "# Spring Cloud Alibaba 容器化部署最佳实践 | Docker-Compose 版本\n\n## 准备工作\n\n> Note: 使用 Docker-Compose 方式体验 Demo 时,请确保本地机器内存资源 >= 24G!"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/docs/zh/kubernetes-deployment-zh.md",
    "chars": 3399,
    "preview": "# Spring Cloud Alibaba容器化部署最佳实践 | Kubernetes Helm-Chart 版本\n\n## 准备工作\n\n此版本为 Spring Cloud Alibaba (后文简称为SCA)最佳实践 Kubernetes"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/docs/zh/local-deployment-zh.md",
    "chars": 4915,
    "preview": "# Spring Cloud Alibaba 容器化部署最佳实践 | 本地部署版本\n\n## 准备工作\n\n### 环境声明\n\n在运行本地示例之前,需要保证本机具备以下的基础环境,如果您的本地没有当前的环境,下面会一步步进行搭建,演示搭建过程。"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/docs/zh/readme-zh.md",
    "chars": 1817,
    "preview": "# Integrated Example\n\n## 项目说明\n\n本项目为 Spring Cloud Alibaba (后文简称为 SCA)容器化部署最佳实践的 Demo 演示项目,是整合了 SCA 相关组件(Nacos, Sentinel, "
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/helm-chart/Chart.yaml",
    "chars": 128,
    "preview": "apiVersion: v1\nappVersion: '1.0'\ndescription: Spring Cloud Alibaba Best Practice Example\nname: integrated-example\nversio"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/helm-chart/templates/integrated-account.yaml",
    "chars": 507,
    "preview": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: integrated-account\nspec:\n  replicas: 1\n  selector:\n    matchLabel"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/helm-chart/templates/integrated-frontend.yaml",
    "chars": 774,
    "preview": "apiVersion: v1\nkind: Service\nmetadata:\n  name: integrated-frontend\n  labels:\n    app: integrated-frontend\nspec:\n  type: "
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/helm-chart/templates/integrated-gateway.yaml",
    "chars": 768,
    "preview": "apiVersion: v1\nkind: Service\nmetadata:\n  name: gateway-service\n  labels:\n    app: integrated-gateway\nspec:\n  type: NodeP"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/helm-chart/templates/integrated-mysql.yaml",
    "chars": 1014,
    "preview": "apiVersion: v1\nkind: Service\nmetadata:\n  name: integrated-mysql-web\nspec:\n  ports:\n    - name: integrated-mysql-port\n   "
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/helm-chart/templates/integrated-nacos-mysql.yaml",
    "chars": 1132,
    "preview": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: nacos-mysql\n  labels:\n    name: nacos-mysql\nspec:\n  replicas: 1\n "
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/helm-chart/templates/integrated-nacos-stand.yaml",
    "chars": 3055,
    "preview": "---\napiVersion: v1\nkind: Service\nmetadata:\n  name: nacos-svc\n  labels:\n    app: nacos-svc\nspec:\n  type: NodePort\n  ports"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/helm-chart/templates/integrated-order.yaml",
    "chars": 495,
    "preview": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: integrated-order\nspec:\n  replicas: 1\n  selector:\n    matchLabels:"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/helm-chart/templates/integrated-praise-consumer.yaml",
    "chars": 555,
    "preview": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: integrated-praise-consumer\nspec:\n  replicas: 1\n  selector:\n    ma"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/helm-chart/templates/integrated-praise-provider.yaml",
    "chars": 555,
    "preview": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: integrated-praise-provider\nspec:\n  replicas: 1\n  selector:\n    ma"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/helm-chart/templates/integrated-rocketmq.yaml",
    "chars": 1478,
    "preview": "apiVersion: v1\nkind: Service\nmetadata:\n  name: rocketmq\nspec:\n  ports:\n    - port: 9876\n      protocol: TCP\n      target"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/helm-chart/templates/integrated-seata.yaml",
    "chars": 867,
    "preview": "apiVersion: v1\nkind: Service\nmetadata:\n  name: seata-server\n  labels:\n    k8s-app: seata-server\nspec:\n  type: ClusterIP\n"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/helm-chart/templates/integrated-storage.yaml",
    "chars": 507,
    "preview": "apiVersion: apps/v1\nkind: Deployment\nmetadata:\n  name: integrated-storage\nspec:\n  replicas: 1\n  selector:\n    matchLabel"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/helm-chart/values.yaml",
    "chars": 69,
    "preview": "image:\n  repository: registry.cn-hangzhou.aliyuncs.com/sca-community/"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-account/Dockerfile",
    "chars": 236,
    "preview": "FROM openjdk:8-jdk-alpine as builder\n\nLABEL author=\"yuluo\" \\\n\temail=\"yuluo829@aliyun.com\"\n\nADD ./integrated-account/targ"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-account/pom.xml",
    "chars": 2003,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\n\t\t xmlns:xsi=\"http://www.w3.or"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-account/src/main/java/com/alibaba/cloud/integration/account/AccountServiceApplication.java",
    "chars": 1002,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-account/src/main/java/com/alibaba/cloud/integration/account/controller/AccountController.java",
    "chars": 1892,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-account/src/main/java/com/alibaba/cloud/integration/account/dto/AccountDTO.java",
    "chars": 1019,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-account/src/main/java/com/alibaba/cloud/integration/account/mapper/AccountMapper.java",
    "chars": 1406,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-account/src/main/java/com/alibaba/cloud/integration/account/service/AccountService.java",
    "chars": 987,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-account/src/main/java/com/alibaba/cloud/integration/account/service/impl/AccountServiceImpl.java",
    "chars": 2391,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-account/src/main/resources/application.yaml",
    "chars": 640,
    "preview": "server:\n  port: 8012\n\nspring:\n  application:\n    name: integrated-account\n  cloud:\n    nacos:\n      discovery:\n        s"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-common/pom.xml",
    "chars": 649,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\n         xmlns:xsi=\"http://www"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-common/src/main/java/com/alibaba/cloud/integration/common/BusinessException.java",
    "chars": 830,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-common/src/main/java/com/alibaba/cloud/integration/common/IResult.java",
    "chars": 863,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-common/src/main/java/com/alibaba/cloud/integration/common/Result.java",
    "chars": 2184,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-common/src/main/java/com/alibaba/cloud/integration/common/ResultEnum.java",
    "chars": 1357,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-frontend/Dockerfile",
    "chars": 241,
    "preview": "FROM openjdk:8-jdk-alpine as builder\n\nLABEL author=\"yuluo\" \\\n\temail=\"yuluo829@aliyun.com\"\n\nADD ./integrated-frontend/tar"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-frontend/pom.xml",
    "chars": 1099,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\n\t\t xmlns:xsi=\"http://www.w3.or"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-frontend/src/main/java/com/alibaba/cloud/integration/frontend/FrontendApplication.java",
    "chars": 1015,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-frontend/src/main/java/com/alibaba/cloud/integration/frontend/controller/IntegrationController.java",
    "chars": 1146,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-frontend/src/main/resources/templates/order.html",
    "chars": 3732,
    "preview": "<!DOCTYPE HTML>\n<html xmlns:th=\"http://www.w3.org/1999/xhtml\">\n<head>\n    <meta http-equiv=\"content-type\" content=\"text/"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-frontend/src/main/resources/templates/rocketmq.html",
    "chars": 2452,
    "preview": "<!DOCTYPE HTML>\n<html xmlns:th=\"http://www.w3.org/1999/xhtml\">\n<head>\n    <meta http-equiv=\"content-type\" content=\"text/"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-frontend/src/main/resources/templates/sentinel.html",
    "chars": 2829,
    "preview": "<!DOCTYPE HTML>\n<html xmlns:th=\"http://www.w3.org/1999/xhtml\">\n<head>\n    <meta http-equiv=\"content-type\" content=\"text/"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-gateway/Dockerfile",
    "chars": 237,
    "preview": "FROM openjdk:8-jdk-alpine as builder\n\nLABEL author=\"yuluo\" \\\n\temail=\"yuluo829@aliyun.com\"\n\nADD ./integrated-gateway/targ"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-gateway/pom.xml",
    "chars": 1702,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\n\t\t xmlns:xsi=\"http://www.w3.or"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-gateway/src/main/java/com/alibaba/cloud/integration/gateway/GatewayApplication.java",
    "chars": 1084,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-gateway/src/main/java/com/alibaba/cloud/integration/gateway/config/GatewayConfig.java",
    "chars": 4354,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-gateway/src/main/resources/application.yaml",
    "chars": 361,
    "preview": "server:\n  port: 30010\nspring:\n  application:\n    name: integrated-gateway\n  cloud:\n    nacos:\n      config:\n        serv"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-order/Dockerfile",
    "chars": 232,
    "preview": "FROM openjdk:8-jdk-alpine as builder\n\nLABEL author=\"yuluo\" \\\n\temail=\"yuluo829@aliyun.com\"\n\nADD ./integrated-order/target"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-order/pom.xml",
    "chars": 2737,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\n         xmlns:xsi=\"http://www"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/OrderServiceApplication.java",
    "chars": 1079,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/controller/OrderController.java",
    "chars": 1719,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/entity/Order.java",
    "chars": 2121,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/feign/AccountServiceFeignClient.java",
    "chars": 1210,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/feign/StorageServiceFeignClient.java",
    "chars": 1204,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/feign/dto/AccountDTO.java",
    "chars": 1023,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/feign/dto/StorageDTO.java",
    "chars": 1072,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/mapper/OrderMapper.java",
    "chars": 1273,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/service/OrderService.java",
    "chars": 966,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/java/com/alibaba/cloud/integration/order/service/impl/OrderServiceImpl.java",
    "chars": 3266,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-order/src/main/resources/application.yaml",
    "chars": 634,
    "preview": "server:\n  port: 8013\n\nspring:\n  application:\n    name: integrated-order\n  cloud:\n    nacos:\n      discovery:\n        ser"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/Dockerfile",
    "chars": 252,
    "preview": "FROM openjdk:8-jdk-alpine as builder\n\nLABEL author=\"yuluo\" \\\n\temail=\"yuluo829@aliyun.com\"\n\nADD ./integrated-praise-consu"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/pom.xml",
    "chars": 1870,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\n\t\t xmlns:xsi=\"http://www.w3.or"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/java/com/alibaba/cloud/integration/consumer/PraiseConsumerApplication.java",
    "chars": 1004,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/java/com/alibaba/cloud/integration/consumer/controller/PraiseController.java",
    "chars": 1277,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/java/com/alibaba/cloud/integration/consumer/listener/ListenerAutoConfiguration.java",
    "chars": 1251,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/java/com/alibaba/cloud/integration/consumer/mapper/PraiseMapper.java",
    "chars": 1323,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/java/com/alibaba/cloud/integration/consumer/message/PraiseMessage.java",
    "chars": 988,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/java/com/alibaba/cloud/integration/consumer/service/PraiseService.java",
    "chars": 817,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/java/com/alibaba/cloud/integration/consumer/service/impl/PraiseServiceImpl.java",
    "chars": 1381,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-consumer/src/main/resources/application.yaml",
    "chars": 418,
    "preview": "spring:\n  application:\n    name: integrated-consumer\n  cloud:\n    nacos:\n      config:\n        file-extension: yaml\n    "
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-provider/Dockerfile",
    "chars": 252,
    "preview": "FROM openjdk:8-jdk-alpine as builder\n\nLABEL author=\"yuluo\" \\\n\temail=\"yuluo829@aliyun.com\"\n\nADD ./integrated-praise-provi"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-provider/pom.xml",
    "chars": 1611,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\n         xmlns:xsi=\"http://www"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-provider/src/main/java/com/alibaba/cloud/integration/provider/PraiseProviderApplication.java",
    "chars": 1003,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-provider/src/main/java/com/alibaba/cloud/integration/provider/controller/PraiseController.java",
    "chars": 1779,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-provider/src/main/java/com/alibaba/cloud/integration/provider/message/PraiseMessage.java",
    "chars": 988,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-praise-provider/src/main/resources/application.yaml",
    "chars": 363,
    "preview": "spring:\n  application:\n    name: integrated-provider\n  cloud:\n    nacos:\n      config:\n        file-extension: yaml\n    "
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-storage/Dockerfile",
    "chars": 236,
    "preview": "FROM openjdk:8-jdk-alpine as builder\n\nLABEL author=\"yuluo\" \\\n\temail=\"yuluo829@aliyun.com\"\n\nADD ./integrated-storage/targ"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-storage/pom.xml",
    "chars": 2399,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\n         xmlns:xsi=\"http://www"
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-storage/src/main/java/com/alibaba/cloud/integration/storage/StorageServiceApplication.java",
    "chars": 1002,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-storage/src/main/java/com/alibaba/cloud/integration/storage/controller/StorageController.java",
    "chars": 1908,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-storage/src/main/java/com/alibaba/cloud/integration/storage/dto/StorageDTO.java",
    "chars": 1068,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-storage/src/main/java/com/alibaba/cloud/integration/storage/mapper/StorageMapper.java",
    "chars": 1436,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-storage/src/main/java/com/alibaba/cloud/integration/storage/service/StorageService.java",
    "chars": 1002,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-storage/src/main/java/com/alibaba/cloud/integration/storage/service/impl/StorageServiceImpl.java",
    "chars": 2426,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/integrated-example/integrated-storage/src/main/resources/application.yaml",
    "chars": 612,
    "preview": "server:\n  port: 8011\n\nspring:\n  application:\n    name: integrated-storage\n  cloud:\n    nacos:\n      discovery:\n        s"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-config-example/pom.xml",
    "chars": 1860,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/java/com/alibaba/cloud/examples/NacosConfigApplication.java",
    "chars": 997,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/java/com/alibaba/cloud/examples/example/BeanAutoRefreshConfigExample.java",
    "chars": 1595,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/java/com/alibaba/cloud/examples/example/ConfigListenerExample.java",
    "chars": 2080,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/java/com/alibaba/cloud/examples/example/DockingInterfaceExample.java",
    "chars": 4066,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/java/com/alibaba/cloud/examples/example/ValueAnnotationExample.java",
    "chars": 1812,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/java/com/alibaba/cloud/examples/model/NacosConfigInfo.java",
    "chars": 1672,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-config-example/src/main/resources/application.yaml",
    "chars": 472,
    "preview": "server:\n  port: 18084\n\nspring:\n  application:\n    name: nacos-config-example\n  cloud:\n    nacos:\n      config:\n        s"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/pom.xml",
    "chars": 2411,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/scripts/error.sh",
    "chars": 111,
    "preview": "#!/usr/bin/env bash\nn=1\nwhile [ $n -le 10 ]\ndo\n    echo `curl -s http://localhost:18083/test`\n    let n++\ndone\n"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/scripts/feign-defaultmethod-error.sh",
    "chars": 124,
    "preview": "#!/usr/bin/env bash\nn=1\nwhile [ $n -le 10 ]\ndo\n    echo `curl -s http://localhost:18083/divide-feign2?a=1`\n    let n++\nd"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/scripts/feign-error.sh",
    "chars": 128,
    "preview": "#!/usr/bin/env bash\nn=1\nwhile [ $n -le 10 ]\ndo\n    echo `curl -s http://localhost:18083/divide-feign?a=1\\&b=0`\n    let n"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/scripts/index.sh",
    "chars": 112,
    "preview": "#!/usr/bin/env bash\nn=1\nwhile [ $n -le 10 ]\ndo\n    echo `curl -s http://localhost:18083/index`\n    let n++\ndone\n"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/scripts/sleep.sh",
    "chars": 112,
    "preview": "#!/usr/bin/env bash\nn=1\nwhile [ $n -le 10 ]\ndo\n    echo `curl -s http://localhost:18083/sleep`\n    let n++\ndone\n"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/ConsumerApplication.java",
    "chars": 1401,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/TestController.java",
    "chars": 2931,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/configuration/FeignConfiguration.java",
    "chars": 1038,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/configuration/RestTemplateConfiguration.java",
    "chars": 1482,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/configuration/UrlCleaner.java",
    "chars": 1211,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/feign/EchoClient.java",
    "chars": 1994,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/java/com/alibaba/cloud/examples/feign/EchoClientFallback.java",
    "chars": 1245,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/resources/application.properties",
    "chars": 919,
    "preview": "spring.application.name=service-consumer\nserver.port=18083\nmanagement.endpoints.web.exposure.include=*\nspring.cloud.naco"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/resources/degraderule.json",
    "chars": 465,
    "preview": "[\n  {\n    \"resource\": \"GET:http://service-provider/test\",\n    \"count\": 0.5,\n    \"grade\": 1,\n    \"timeWindow\": 30\n  },\n  "
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-example/src/main/resources/flowrule.json",
    "chars": 173,
    "preview": "[\n  {\n    \"resource\": \"GET:http://service-provider/echo/{str}\",\n    \"controlBehavior\": 0,\n    \"count\": 1,\n    \"grade\": 1"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/pom.xml",
    "chars": 3023,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/scripts/error.sh",
    "chars": 111,
    "preview": "#!/usr/bin/env bash\nn=1\nwhile [ $n -le 10 ]\ndo\n    echo `curl -s http://localhost:18083/test`\n    let n++\ndone\n"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/scripts/feign-defaultmethod-error.sh",
    "chars": 124,
    "preview": "#!/usr/bin/env bash\nn=1\nwhile [ $n -le 10 ]\ndo\n    echo `curl -s http://localhost:18083/divide-feign2?a=1`\n    let n++\nd"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/scripts/feign-error.sh",
    "chars": 128,
    "preview": "#!/usr/bin/env bash\nn=1\nwhile [ $n -le 10 ]\ndo\n    echo `curl -s http://localhost:18083/divide-feign?a=1\\&b=0`\n    let n"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/scripts/index.sh",
    "chars": 112,
    "preview": "#!/usr/bin/env bash\nn=1\nwhile [ $n -le 10 ]\ndo\n    echo `curl -s http://localhost:18083/index`\n    let n++\ndone\n"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/scripts/resttemplate.sh",
    "chars": 129,
    "preview": "#!/usr/bin/env bash\nn=1\nwhile [ $n -le 10 ]\ndo\n    echo `curl -s http://localhost:18083/echo-rest/resttemplate`\n    let "
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/scripts/sleep.sh",
    "chars": 112,
    "preview": "#!/usr/bin/env bash\nn=1\nwhile [ $n -le 10 ]\ndo\n    echo `curl -s http://localhost:18083/sleep`\n    let n++\ndone\n"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/ConsumerSCLBApplication.java",
    "chars": 1203,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/RandomLoadBalancer.java",
    "chars": 2791,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/TestController.java",
    "chars": 3209,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/config/FeignConfiguration.java",
    "chars": 1032,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/config/MyLoadBalancerConfiguration.java",
    "chars": 1735,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/config/MySCLBConfiguration.java",
    "chars": 1056,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/config/RestTemplateConfiguration.java",
    "chars": 1434,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/config/UrlCleaner.java",
    "chars": 1204,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/feign/EchoClient.java",
    "chars": 2102,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/java/com/alibaba/cloud/examples/feign/EchoClientFallback.java",
    "chars": 1245,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/resources/application.properties",
    "chars": 878,
    "preview": "spring.application.name=service-consumer-sclb\nserver.port=18083\nmanagement.endpoints.web.exposure.include=*\nspring.cloud"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/resources/degraderule.json",
    "chars": 465,
    "preview": "[\n  {\n    \"resource\": \"GET:http://service-provider/test\",\n    \"count\": 0.5,\n    \"grade\": 1,\n    \"timeWindow\": 30\n  },\n  "
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-consumer-sclb-example/src/main/resources/flowrule.json",
    "chars": 173,
    "preview": "[\n  {\n    \"resource\": \"GET:http://service-provider/echo/{str}\",\n    \"controlBehavior\": 0,\n    \"count\": 2,\n    \"grade\": 1"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-provider-example/pom.xml",
    "chars": 1834,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-provider-example/src/main/java/com/alibaba/cloud/examples/EchoController.java",
    "chars": 2267,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-provider-example/src/main/java/com/alibaba/cloud/examples/ProviderApplication.java",
    "chars": 1096,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-provider-example/src/main/resources/application.properties",
    "chars": 511,
    "preview": "server.port=0\nspring.application.name=service-provider\nspring.cloud.nacos.discovery.server-addr=127.0.0.1:8848\nspring.cl"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-client-example/pom.xml",
    "chars": 2026,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-client-example/src/main/java/com/alibaba/cloud/examples/GetConfigController.java",
    "chars": 1090,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-client-example/src/main/java/com/alibaba/cloud/examples/SpringCloudConfigClientApplication.java",
    "chars": 1104,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-client-example/src/main/resources/application.yml",
    "chars": 269,
    "preview": "server:\n  port: 18083\nspring:\n  application:\n    name: client\n  config:\n    import: optional:configserver:http://localho"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-server-example/pom.xml",
    "chars": 2054,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-server-example/src/main/java/com/alibaba/cloud/examples/SpringCloudConfigServerApplication.java",
    "chars": 1229,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-discovery-spring-cloud-config-server-example/src/main/resources/application.yml",
    "chars": 313,
    "preview": "server:\n  port: 7070\n\nspring:\n  application:\n    name: configserver\n  cloud:\n    nacos:\n      username: 'nacos'\n      pa"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-reactivediscovery-consumer-example/pom.xml",
    "chars": 2273,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-reactivediscovery-consumer-example/src/main/java/com/alibaba/cloud/examples/ConsumerReactiveApplication.java",
    "chars": 1256,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-reactivediscovery-consumer-example/src/main/java/com/alibaba/cloud/examples/MyController.java",
    "chars": 1833,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-reactivediscovery-consumer-example/src/main/java/com/alibaba/cloud/examples/WebClientConfiguration.java",
    "chars": 1139,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/nacos-reactivediscovery-consumer-example/src/main/resources/application.properties",
    "chars": 285,
    "preview": "spring.application.name=service-consumer-reactive\nserver.port=18083\nmanagement.endpoints.web.exposure.include=*\nspring.c"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-discovery-example/pom.xml",
    "chars": 1194,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-discovery-example/pom.xml",
    "chars": 2029,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-discovery-example/src/main/java/com/alibaba/cloud/examples/GatewayApplication.java",
    "chars": 1302,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-discovery-example/src/main/resources/application.properties",
    "chars": 623,
    "preview": "server.port=18085\nspring.application.name=service-gateway\nspring.cloud.nacos.discovery.server-addr=127.0.0.1:8848\n\nsprin"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-provider-example/pom.xml",
    "chars": 1846,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2"
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-provider-example/src/main/java/com/alibaba/cloud/examples/EchoController.java",
    "chars": 1317,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-provider-example/src/main/java/com/alibaba/cloud/examples/ProviderApplication.java",
    "chars": 1073,
    "preview": "/*\n * Copyright 2013-present the original author or authors.\n *\n * Licensed under the Apache License, Version 2.0 (the \""
  },
  {
    "path": "spring-cloud-alibaba-examples/nacos-example/nacos-gateway-example/nacos-gateway-provider-example/src/main/resources/application.properties",
    "chars": 237,
    "preview": "server.port=18086\nspring.application.name=service-gateway-provider\nspring.cloud.nacos.discovery.server-addr=127.0.0.1:88"
  }
]

// ... and 548 more files (download for full content)

About this extraction

This page contains the full source code of the alibaba/spring-cloud-alibaba GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 748 files (2.1 MB), approximately 620.3k tokens, and a symbol index with 3005 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!