Showing preview only (4,282K chars total). Download the full file or copy to clipboard to get everything.
Repository: cd826/springcloud-demo
Branch: master
Commit: c20139c961a2
Files: 782
Total size: 3.8 MB
Directory structure:
gitextract_cu4xnx12/
├── README.md
├── chapter02 -- boot/
│ ├── README.md
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── config/
│ │ │ └── Swagger2Config.java
│ │ ├── product/
│ │ │ ├── api/
│ │ │ │ └── ProductEndpoint.java
│ │ │ ├── dto/
│ │ │ │ ├── ProductCommentDto.java
│ │ │ │ └── ProductDto.java
│ │ │ ├── entity/
│ │ │ │ ├── Product.java
│ │ │ │ └── ProductComment.java
│ │ │ ├── repository/
│ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ └── ProductRepository.java
│ │ │ └── service/
│ │ │ ├── ProductService.java
│ │ │ └── impl/
│ │ │ └── ProductServiceImpl.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── dto/
│ │ │ │ └── UserDto.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ └── UserRepository.java
│ │ │ └── service/
│ │ │ ├── UserService.java
│ │ │ └── impl/
│ │ │ └── UserServiceImpl.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ ├── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ └── webapp/
│ └── swagger/
│ ├── css/
│ │ ├── print.css
│ │ ├── reset.css
│ │ ├── screen.css
│ │ ├── style.css
│ │ └── typography.css
│ ├── index.html
│ ├── lang/
│ │ ├── ca.js
│ │ ├── el.js
│ │ ├── en.js
│ │ ├── es.js
│ │ ├── fr.js
│ │ ├── geo.js
│ │ ├── it.js
│ │ ├── ja.js
│ │ ├── ko-kr.js
│ │ ├── pl.js
│ │ ├── pt.js
│ │ ├── ru.js
│ │ ├── tr.js
│ │ ├── translator.js
│ │ └── zh-cn.js
│ ├── lib/
│ │ ├── backbone-min.js
│ │ ├── es5-shim.js
│ │ ├── handlebars-4.0.5.js
│ │ ├── highlight.9.1.0.pack.js
│ │ ├── highlight.9.1.0.pack_extended.js
│ │ ├── marked.js
│ │ ├── object-assign-pollyfill.js
│ │ └── swagger-oauth.js
│ ├── o2c.html
│ └── swagger-ui.js
├── chapter03 -- hello-cloud/
│ ├── README.md
│ ├── hello-consumer/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ └── consumer/
│ │ │ ├── api/
│ │ │ │ └── HelloConsumerEndpoint.java
│ │ │ └── service/
│ │ │ ├── HelloService.java
│ │ │ └── HelloServiceFallback.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ ├── hello-provider/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ └── provider/
│ │ │ └── api/
│ │ │ └── HelloProviderEndpoint.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ └── service-discovery/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ └── Application.java
│ └── resources/
│ ├── application.properties
│ └── banner.txt
├── chapter04 -- eureka/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ └── repository/
│ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ └── ProductRepository.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── chapter04 -- eureka-cluster/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application-sdpeer1.properties
│ │ ├── application-sdpeer2.properties
│ │ ├── application-sdpeer3.properties
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── chapter04 -- eureka-feign/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application-sdpeer1.properties
│ │ ├── application-sdpeer2.properties
│ │ ├── application-sdpeer3.properties
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── chapter04 -- eureka-ribbon/
│ ├── .project
│ ├── .settings/
│ │ ├── org.eclipse.core.resources.prefs
│ │ └── org.eclipse.m2e.core.prefs
│ ├── README.md
│ ├── parent/
│ │ ├── .project
│ │ ├── .settings/
│ │ │ ├── org.eclipse.core.resources.prefs
│ │ │ └── org.eclipse.m2e.core.prefs
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── .classpath
│ │ ├── .project
│ │ ├── .settings/
│ │ │ ├── org.eclipse.core.resources.prefs
│ │ │ ├── org.eclipse.jdt.core.prefs
│ │ │ └── org.eclipse.m2e.core.prefs
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ └── repository/
│ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ └── ProductRepository.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── .classpath
│ │ ├── .project
│ │ ├── .settings/
│ │ │ ├── org.eclipse.core.resources.prefs
│ │ │ ├── org.eclipse.jdt.core.prefs
│ │ │ └── org.eclipse.m2e.core.prefs
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── .classpath
│ ├── .project
│ ├── .settings/
│ │ ├── org.eclipse.core.resources.prefs
│ │ ├── org.eclipse.jdt.core.prefs
│ │ └── org.eclipse.m2e.core.prefs
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── chapter04 -- eureka-ribbonex/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ ├── clouddemo/
│ │ │ │ ├── Application.java
│ │ │ │ ├── product/
│ │ │ │ │ ├── api/
│ │ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ │ └── UserDto.java
│ │ │ │ │ ├── entity/
│ │ │ │ │ │ ├── Product.java
│ │ │ │ │ │ └── ProductComment.java
│ │ │ │ │ └── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── util/
│ │ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ │ └── ribbon/
│ │ │ ├── RibbonConfiguration.java
│ │ │ └── UserRibbonConfiguration.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application-sdpeer1.properties
│ │ ├── application-sdpeer2.properties
│ │ ├── application-sdpeer3.properties
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── chapter04 -- eureka-security/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── chapter05 -- hystrix/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ ├── UserService.java
│ │ │ │ └── UserServiceImpl.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── bootstrap.properties
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ └── logback.xml
│ ├── turbine-server/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── bootstrap.properties
│ │ └── logback.xml
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ └── repository/
│ │ │ └── UserRepository.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── bootstrap.properties
│ ├── data.sql
│ ├── logback.xml
│ └── schema.sql
├── chapter05 -- hystrix-feign/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ ├── UserService.java
│ │ │ │ └── UserServiceFallback.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── bootstrap.properties
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ └── repository/
│ │ │ └── UserRepository.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── bootstrap.properties
│ ├── data.sql
│ └── schema.sql
├── chapter06 -- zuul/
│ ├── README.md
│ ├── hystrix-dashboard/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── hystrix/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ ├── user-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── user/
│ │ │ │ ├── api/
│ │ │ │ │ ├── UserDto.java
│ │ │ │ │ └── UserEndpoint.java
│ │ │ │ ├── entity/
│ │ │ │ │ └── User.java
│ │ │ │ ├── repository/
│ │ │ │ │ └── UserRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ └── zuul-server/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ └── zuul/
│ │ ├── Application.java
│ │ └── fallback/
│ │ └── UserServiceFallbackProvider.java
│ └── resources/
│ ├── application.properties
│ └── banner.txt
├── chapter07 -- config/
│ ├── README.md
│ ├── config-server/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── config/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ └── bootstrap.properties
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ConfigTestEndpoint.java
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── bootstrap.properties
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── bootstrap.properties
│ ├── data.sql
│ └── schema.sql
├── chapter08 -- sleuth/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── bootstrap.properties
│ │ ├── data.sql
│ │ ├── logback-spring.xml
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ ├── user-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── user/
│ │ │ │ ├── api/
│ │ │ │ │ ├── UserDto.java
│ │ │ │ │ └── UserEndpoint.java
│ │ │ │ ├── entity/
│ │ │ │ │ └── User.java
│ │ │ │ └── repository/
│ │ │ │ └── UserRepository.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── bootstrap.properties
│ │ ├── data.sql
│ │ ├── logback-spring.xml
│ │ └── schema.sql
│ ├── zipkin-server/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ └── zuul-server/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ └── filters/
│ │ └── TraceIdFilter.java
│ └── resources/
│ ├── application.properties
│ └── banner.txt
├── chapter09 -- stream/
│ ├── README.md
│ ├── config-server/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ └── bootstrap.properties
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── bus/
│ │ │ │ └── MyBusEvent.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ConfigTestEndpoint.java
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── mq/
│ │ │ │ │ ├── SpringCloudBookChannels.java
│ │ │ │ │ ├── UserMsg.java
│ │ │ │ │ └── UserMsgListener.java
│ │ │ │ ├── redis/
│ │ │ │ │ ├── RedisConfig.java
│ │ │ │ │ └── repository/
│ │ │ │ │ └── UserRedisRepository.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ ├── UserRemoteClient.java
│ │ │ │ ├── UserService.java
│ │ │ │ └── impl/
│ │ │ │ ├── MyBusEventListener.java
│ │ │ │ └── UserServiceImpl.java
│ │ │ └── util/
│ │ │ ├── ApplicationContextHolder.java
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── bootstrap.properties
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── bus/
│ │ │ └── MyBusEvent.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ ├── UserEndpoint.java
│ │ │ │ └── UserEventEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ └── UserRepository.java
│ │ │ └── service/
│ │ │ ├── UserMsg.java
│ │ │ ├── UserMsgSender.java
│ │ │ └── UserService.java
│ │ └── util/
│ │ ├── ApplicationContextHolder.java
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── bootstrap.properties
│ ├── data.sql
│ └── schema.sql
├── chapter10 -- security-boot/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── config/
│ │ │ │ │ └── SecurityConfig.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application-sdpeer1.properties
│ │ ├── application-sdpeer2.properties
│ │ ├── application-sdpeer3.properties
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── chapter10 -- security-jwt/
│ ├── README.md
│ ├── auth-server/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── authserver/
│ │ │ ├── Application.java
│ │ │ ├── config/
│ │ │ │ ├── JWTTokenConfig.java
│ │ │ │ ├── OAuthConfig.java
│ │ │ │ ├── OAuthWebSecurityConfigurer.java
│ │ │ │ └── ServiceConfig.java
│ │ │ └── jwt/
│ │ │ └── JWTTokenEnhancer.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── config/
│ │ │ │ │ └── ResourceServerConfiguration.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ ├── UserService.java
│ │ │ │ └── impl/
│ │ │ │ └── UserServiceImpl.java
│ │ │ └── util/
│ │ │ ├── HibernatePhysicalNamingNamingStrategy.java
│ │ │ ├── JWTOAuthTokenInterceptor.java
│ │ │ ├── UserContext.java
│ │ │ └── UserContextFilter.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application-sdpeer1.properties
│ │ ├── application-sdpeer2.properties
│ │ ├── application-sdpeer3.properties
│ │ ├── application.properties
│ │ └── banner.txt
│ ├── user-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── user/
│ │ │ │ ├── api/
│ │ │ │ │ ├── UserDto.java
│ │ │ │ │ └── UserEndpoint.java
│ │ │ │ ├── config/
│ │ │ │ │ ├── JWTTokenConfig.java
│ │ │ │ │ ├── ResourceServerConfiguration.java
│ │ │ │ │ └── ServiceConfig.java
│ │ │ │ ├── entity/
│ │ │ │ │ └── User.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── UserRepository.java
│ │ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ │ └── UserRepositoryImpl.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ ├── HibernatePhysicalNamingNamingStrategy.java
│ │ │ ├── JWTOAuthTokenInterceptor.java
│ │ │ ├── JWTTokenEnhancer.java
│ │ │ ├── UserContext.java
│ │ │ └── UserContextFilter.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ └── zuul-server/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ └── zuul/
│ │ ├── Application.java
│ │ ├── config/
│ │ │ └── ServiceConfig.java
│ │ └── filters/
│ │ ├── FilterUtils.java
│ │ └── JWTTokenFilter.java
│ └── resources/
│ ├── application.properties
│ └── banner.txt
└── chapter10 -- security-oauth/
├── README.md
├── auth-server/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── authserver/
│ │ │ ├── Application.java
│ │ │ └── config/
│ │ │ ├── OAuthConfig.java
│ │ │ └── OAuthWebSecurityConfigurer.java
│ │ └── security/
│ │ └── InspectHeaderFilter.java
│ └── resources/
│ ├── application.properties
│ └── banner.txt
├── parent/
│ └── pom.xml
├── pom.xml
├── product-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── product/
│ │ │ ├── Application.java
│ │ │ ├── api/
│ │ │ │ ├── ProductCommentDto.java
│ │ │ │ ├── ProductEndpoint.java
│ │ │ │ └── UserDto.java
│ │ │ ├── config/
│ │ │ │ └── ResourceServerConfiguration.java
│ │ │ ├── entity/
│ │ │ │ ├── Product.java
│ │ │ │ └── ProductComment.java
│ │ │ ├── repository/
│ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ └── ProductRepository.java
│ │ │ └── service/
│ │ │ ├── UserService.java
│ │ │ └── impl/
│ │ │ └── UserServiceImpl.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── service-discovery/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ └── Application.java
│ └── resources/
│ ├── application-sdpeer1.properties
│ ├── application-sdpeer2.properties
│ ├── application-sdpeer3.properties
│ ├── application.properties
│ └── banner.txt
├── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── config/
│ │ │ │ └── ResourceServerConfiguration.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
└── zuul-server/
├── pom.xml
└── src/
└── main/
├── java/
│ └── com/
│ └── cd826dong/
│ └── clouddemo/
│ └── zuul/
│ └── zuulserver/
│ └── Application.java
└── resources/
├── application.properties
├── banner.txt
└── logback.xml
================================================
FILE CONTENTS
================================================
================================================
FILE: README.md
================================================
# 《Spring Cloud微服务架构开发实战》配套源码
---
## 勘误表
#### P295
``` java
$ docker pull microserv/openjdk:1.0.0
```
应为:
```java
$ docker build -t microserv/openjdk:1.0.0 .
```
================================================
FILE: chapter02 -- boot/README.md
================================================
# chapter02. 微服务基础-Spring Boot
这是微服务基础Spring Boot示例项目
================================================
FILE: chapter02 -- boot/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 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
</parent>
<groupId>cd826dong.cloud</groupId>
<artifactId>cd826dong-clouds-boot</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>SpringCloud Demo Projects -- Spring Boot</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
<maven.compiler.source>${java.version}</maven.compiler.source>
<maven.compiler.target>${java.version}</maven.compiler.target>
<guava.version>20.0</guava.version>
<swagger.version>2.6.1</swagger.version>
</properties>
<dependencies>
<!-- Spring Boot -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<!-- H2 -->
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
</dependency>
<!-- guava -->
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>${guava.version}</version>
</dependency>
<!-- swagger -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>${swagger.version}</version>
</dependency>
<!-- test -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<developers>
<developer>
<id>CD826</id>
<name>CD826Dong</name>
<email>cd826Dong@gmail.com</email>
<roles>
<role>Project leader</role>
</roles>
<timezone>+8</timezone>
</developer>
<developer>
<id>Hu</id>
<name>hucw</name>
<email>hcw2175@163.com</email>
<roles>
<role>Project leader</role>
</roles>
<timezone>+8</timezone>
</developer>
</developers>
<licenses>
<license>
<name>Apache License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0</url>
</license>
</licenses>
<issueManagement>
<system>Github</system>
<url>https://github.com/cd826/springcloud-book/issues</url>
</issueManagement>
<scm>
<url>https://github.com/cd826/springcloud-book</url>
<connection>scm:git:git://github.com/cd826/springcloud-book.git</connection>
<developerConnection>scm:git:ssh://git@github.com:cd826/springcloud-book.git</developerConnection>
</scm>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/Application.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
/**
* 应用主应用类
*
* @author CD826
* @since 1.0.0
*/
@SpringBootApplication
@ComponentScan("com.cd826dong.**")
public class Application {
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/config/Swagger2Config.java
================================================
/**
* Copyright (c) 2015 - 广州小橙信息科技有限公司
* All rights reserved.
*
* Created on 2016-10-10
*/
package com.cd826dong.clouddemo.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.ApiListingReference;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
import java.util.ArrayList;
import java.util.List;
/**
* Swagger配置信息
*
* @author CD826
* @since 1.0.0
*/
@Configuration
@EnableSwagger2
public class Swagger2Config {
@Bean
public Docket createRestApi() {
List<ApiListingReference> apiListingReferenceList = new ArrayList<>();
apiListingReferenceList.add(new ApiListingReference("", "", 0));
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.cd826dong"))
.paths(PathSelectors.any())
.build();
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("SpringCloud Demo Projects RESTful APIs")
.description("http://api.cd826dong.com/")
.termsOfServiceUrl("https://cd826dong.com/")
.contact("CD826")
.version("1.0.0")
.build();
}
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.product.api;
import com.cd826dong.clouddemo.product.dto.ProductCommentDto;
import com.cd826dong.clouddemo.product.dto.ProductDto;
import com.cd826dong.clouddemo.product.service.ProductService;
import com.cd826dong.clouddemo.user.dto.UserDto;
import com.cd826dong.clouddemo.user.repository.UserRepository;
import com.cd826dong.clouddemo.product.entity.Product;
import com.cd826dong.clouddemo.product.entity.ProductComment;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
/**
* 产品管理的Endpoint
*
* @author CD826
* @since 1.0.0
*/
@RestController
@RequestMapping("/products")
@Api(value = "ProductEndpoint", description = "商品管理相关Api")
public class ProductEndpoint {
@Autowired
private ProductService productService;
@Autowired
private UserRepository userRepository;
/**
* 获取产品信息列表
* @return
*/
@RequestMapping(method = RequestMethod.GET)
@ApiOperation(value = "获取商品分页数据", notes = "获取商品分页数据", httpMethod = "GET", tags = "商品管理相关Api")
@ApiImplicitParams({
@ApiImplicitParam(name = "page", value = "第几页,从0开始,默认为第0页", dataType = "int", paramType = "query"),
@ApiImplicitParam(name = "size", value = "每一页记录数的大小,默认为20", dataType = "int", paramType = "query"),
@ApiImplicitParam(name = "sort", value = "排序,格式为:property,property(,ASC|DESC)的方式组织,如sort=firstname&sort=lastname,desc", dataType = "String", paramType = "query")
})
public List<ProductDto> list(Pageable pageable) {
Page<Product> page = this.productService.getPage(pageable);
if (null != page) {
return page.getContent().stream().map((product) -> {
return new ProductDto(product);
}).collect(Collectors.toList());
}
return Collections.EMPTY_LIST;
}
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
@ApiOperation(value = "获取商品详情数据", notes = "获取商品详情数据", httpMethod = "GET", tags = "商品管理相关Api")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "商品的主键", dataType = "int", paramType = "path")
})
public ProductDto detail(@PathVariable Long id){
Product product = this.productService.load(id);
if (null == product)
return null;
return new ProductDto(product);
}
@RequestMapping(value = "/{id}/comments", method = RequestMethod.GET)
@ApiOperation(value = "获取商品的评论列表", notes = "获取商品的评论列表", httpMethod = "GET", tags = "商品管理相关Api")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "商品的主键", dataType = "int", paramType = "path")
})
public List<ProductCommentDto> comments(@PathVariable Long id){
List<ProductComment> commentList = this.productService.findAllByProduct(id);
if (null == commentList || commentList.isEmpty())
return Collections.emptyList();
ProductDto productDto = new ProductDto(this.productService.load(id));
return commentList.stream().map((comment) -> {
ProductCommentDto dto = new ProductCommentDto(comment);
dto.setProduct(productDto);
dto.setAuthor(new UserDto(this.userRepository.findOne(comment.getAuthorId())));
return dto;
}).collect(Collectors.toList());
}
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/dto/ProductCommentDto.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.product.dto;
import com.cd826dong.clouddemo.product.entity.ProductComment;
import com.cd826dong.clouddemo.user.dto.UserDto;
import com.google.common.base.MoreObjects;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
/**
* 商品评论信息DTO定义
*
* @author CD826(CD826Dong@gmail.com)
* @since 1.0.0
*/
@ApiModel(value = "商品评论信息包")
public class ProductCommentDto implements Serializable {
private static final long serialVersionUID = 1L;
// ========================================================================
// fields =================================================================
@ApiModelProperty(value="评论主键Id")
private Long id;
@ApiModelProperty(value="所属商品")
private ProductDto product;
@ApiModelProperty(value="评论作者")
private UserDto author;
@ApiModelProperty(value="评论内容")
private String content;
@ApiModelProperty(value="创建时间")
private Date created;
public ProductCommentDto() {
}
public ProductCommentDto(ProductComment productComment) {
this.id = productComment.getId();
this.content = productComment.getContent();
this.created = productComment.getCreated();
}
@Override
public String toString() {
return this.toStringHelper().toString();
}
protected MoreObjects.ToStringHelper toStringHelper() {
return MoreObjects.toStringHelper(this)
.add("id", getId())
.add("productId", getProduct());
}
// ========================================================================
// setter/getter ==========================================================
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public ProductDto getProduct() {
return product;
}
public void setProduct(ProductDto product) {
this.product = product;
}
public UserDto getAuthor() {
return author;
}
public void setAuthor(UserDto author) {
this.author = author;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public Date getCreated() {
return created;
}
public void setCreated(Date created) {
this.created = created;
}
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/dto/ProductDto.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.product.dto;
import com.cd826dong.clouddemo.product.entity.Product;
import com.cd826dong.clouddemo.product.entity.ProductComment;
import com.google.common.base.MoreObjects;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
/**
* 商品信息DTO定义
*
* @author CD826(CD826Dong@gmail.com)
* @since 1.0.0
*/
@ApiModel(value = "商品信息包")
public class ProductDto implements Serializable {
private static final long serialVersionUID = 1L;
// ========================================================================
// fields =================================================================
@ApiModelProperty(value="商品主键Id")
private Long id;
@ApiModelProperty(value="商品名称")
private String name;
@ApiModelProperty(value="商品封面图片")
private String coverImage;
@ApiModelProperty(value="商品价格(单位:分)")
private int price;
public ProductDto() {
}
public ProductDto(Product product) {
this.id = product.getId();
this.name = product.getName();
this.coverImage = product.getCoverImage();
this.price = product.getPrice();
}
@Override
public String toString() {
return this.toStringHelper().toString();
}
protected MoreObjects.ToStringHelper toStringHelper() {
return MoreObjects.toStringHelper(this)
.add("id", getId())
.add("name", getName());
}
// ========================================================================
// setter/getter ==========================================================
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCoverImage() {
return coverImage;
}
public void setCoverImage(String coverImage) {
this.coverImage = coverImage;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.product.entity;
import com.google.common.base.MoreObjects;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
/**
* 产品信息定义
*
* @author CD826(CD826Dong@gmail.com)
* @since 1.0.0
*/
@Entity
@Table(name = "tbProduct")
public class Product implements Serializable {
private static final long serialVersionUID = 1L;
// ========================================================================
// fields =================================================================
@Id
@GeneratedValue
/** 商品数据库主键 */
private Long id;
/** 商品名称 */
private String name;
/** 商品封面图片 */
private String coverImage;
/** 商品价格(分) */
private int price;
@Override
public String toString() {
return MoreObjects.toStringHelper(this)
.add("id", getId())
.add("name", getName()).toString();
}
// ========================================================================
// setter/getter ==========================================================
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCoverImage() {
return coverImage;
}
public void setCoverImage(String coverImage) {
this.coverImage = coverImage;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.product.entity;
import com.google.common.base.MoreObjects;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;
/**
* 商品评论信息定义
*
* @author CD826(CD826Dong@gmail.com)
* @since 1.0.0
*/
@Entity
@Table(name = "tbProduct_Comment")
public class ProductComment implements Serializable {
private static final long serialVersionUID = 1L;
// ========================================================================
// fields =================================================================
@Id
@GeneratedValue
/** 商品评论数据库主键 */
private Long id;
/** 所示商品的Id */
private Long productId;
/** 评论作者的Id */
private Long authorId;
/** 评论的具体内容 */
private String content;
/** 评论创建时间 */
private Date created;
@Override
public String toString() {
return MoreObjects.toStringHelper(this)
.add("id", getId())
.add("productId", getProductId())
.add("authorId", getAuthorId())
.add("content", getContent()).toString();
}
// ========================================================================
// setter/getter ==========================================================
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Long getProductId() {
return productId;
}
public void setProductId(Long productId) {
this.productId = productId;
}
public Long getAuthorId() {
return authorId;
}
public void setAuthorId(Long authorId) {
this.authorId = authorId;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public Date getCreated() {
return created;
}
public void setCreated(Date created) {
this.created = created;
}
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.product.repository;
import com.cd826dong.clouddemo.product.entity.ProductComment;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
/**
* 商品评论管理repository
*
* @author CD826
* @since 1.0.0
*/
public interface ProductCommentRepository extends JpaRepository<ProductComment, Long> {
List<ProductComment> findByProductIdOrderByCreated(Long productId);
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.product.repository;
import com.cd826dong.clouddemo.product.entity.Product;
import org.springframework.data.jpa.repository.JpaRepository;
/**
* 产品管理repository
*
* @author CD826
* @since 1.0.0
*/
public interface ProductRepository extends JpaRepository<Product, Long> {
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/service/ProductService.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.product.service;
import com.cd826dong.clouddemo.product.entity.Product;
import com.cd826dong.clouddemo.product.entity.ProductComment;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import java.util.List;
/**
* 产品管理服务
*
* @author CD826
* @since 1.0.0
*/
public interface ProductService {
/**
* 获取商品配置的分页数据
* @param pageable 分页参数
* @return 分页数据
*/
Page<Product> getPage(Pageable pageable);
/**
* 加载指定的商品配置
* @param id 商品配置ID
* @return
*/
Product load(Long id);
/**
* 加载指定商品的评论列表
* @param productId
* @return
*/
List<ProductComment> findAllByProduct(Long productId);
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/service/impl/ProductServiceImpl.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.product.service.impl;
import com.cd826dong.clouddemo.product.entity.Product;
import com.cd826dong.clouddemo.product.entity.ProductComment;
import com.cd826dong.clouddemo.product.repository.ProductCommentRepository;
import com.cd826dong.clouddemo.product.repository.ProductRepository;
import com.cd826dong.clouddemo.product.service.ProductService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 产品管理服务的默认实现
*
* @author CD826
* @since 1.0.0
*/
@Service
public class ProductServiceImpl implements ProductService {
@Autowired
protected ProductRepository productRepository;
@Autowired
protected ProductCommentRepository productCommentRepository;
@Override
public Page<Product> getPage(Pageable pageable) {
return this.productRepository.findAll(pageable);
}
@Override
public Product load(Long id) {
return this.productRepository.findOne(id);
}
@Override
public List<ProductComment> findAllByProduct(Long productId) {
return this.productCommentRepository.findByProductIdOrderByCreated(productId);
}
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.user.api;
import com.cd826dong.clouddemo.user.dto.UserDto;
import com.cd826dong.clouddemo.user.entity.User;
import com.cd826dong.clouddemo.user.service.UserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.web.bind.annotation.*;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
/**
* 用户管理的Endpoint
*
* @author CD826
* @since 1.0.0
*/
@RestController
@RequestMapping("/users")
@Api(value = "UserEndpoint", description = "用户管理相关Api")
public class UserEndpoint {
@Autowired
private UserService userService;
/**
* 获取用户列表
* @return
*/
@RequestMapping(method = RequestMethod.GET)
@ApiOperation(value = "获取用户分页数据", notes = "获取用户分页数据", httpMethod = "GET", tags = "用户管理相关Api")
@ApiImplicitParams({
@ApiImplicitParam(name = "page", value = "第几页,从0开始,默认为第0页", dataType = "int", paramType = "query"),
@ApiImplicitParam(name = "size", value = "每一页记录数的大小,默认为20", dataType = "int", paramType = "query"),
@ApiImplicitParam(name = "sort", value = "排序,格式为:property,property(,ASC|DESC)的方式组织,如sort=firstname&sort=lastname,desc", dataType = "String", paramType = "query")
})
public List<UserDto> findAll(Pageable pageable){
Page<User> page = this.userService.getPage(pageable);
if (null != page) {
return page.getContent().stream().map((user) -> {
return new UserDto(user);
}).collect(Collectors.toList());
}
return Collections.EMPTY_LIST;
}
/**
* 获取用户详情
* @param id
* @return
*/
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
@ApiOperation(value = "获取用户详情数据", notes = "获取用户详情数据", httpMethod = "GET", tags = "用户管理相关Api")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "用户的主键", dataType = "int", paramType = "path")
})
public UserDto detail(@PathVariable Long id){
User user = this.userService.load(id);
return (null != user) ? new UserDto(user) : null;
}
/**
* 更新用户详情
* @param id
* @return
*/
@RequestMapping(value = "/{id}", method = RequestMethod.POST)
@ApiOperation(value = "更新用户详情数据", notes = "更新用户详情数据", httpMethod = "POST", tags = "用户管理相关Api")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "用户的主键", dataType = "int", paramType = "path"),
@ApiImplicitParam(name = "userDto", value = "用户详情数据", dataType = "UserDto", paramType = "body"),
})
public UserDto update(@PathVariable Long id, @RequestBody UserDto userDto){
userDto.setId(id);
User user = this.userService.save(userDto);
return (null != user) ? new UserDto(user) : null;
}
/**
* 删除用户
* @param id
* @return
*/
@RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
@ApiOperation(value = "删除指定用户", notes = "删除指定用户", httpMethod = "DELETE", tags = "用户管理相关Api")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "所要删除用户的主键", dataType = "int", paramType = "path")
})
public boolean delete(@PathVariable Long id){
this.userService.delete(id);
return true;
}
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/dto/UserDto.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.user.dto;
import com.cd826dong.clouddemo.user.entity.User;
import com.google.common.base.MoreObjects;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
/**
* 用户信息定义
*
* @author CD826(CD826Dong@gmail.com)
* @since 1.0.0
*/
@ApiModel(value = "用户信息包")
public class UserDto implements Serializable {
private static final long serialVersionUID = 1L;
// ========================================================================
// fields =================================================================
@ApiModelProperty(value="主键Id")
private Long id;
@ApiModelProperty(value="用户昵称")
private String nickname;
@ApiModelProperty(value="用户头像")
private String avatar;
public UserDto() {
}
public UserDto(User user) {
this.id = user.getId();
this.nickname = user.getNickname();
this.avatar = user.getAvatar();
}
@Override
public String toString() {
return this.toStringHelper().toString();
}
protected MoreObjects.ToStringHelper toStringHelper() {
return MoreObjects.toStringHelper(this)
.add("id", getId())
.add("nickname", getNickname());
}
// ========================================================================
// setter/getter ==========================================================
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public String getAvatar() {
return avatar;
}
public void setAvatar(String avatar) {
this.avatar = avatar;
}
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/entity/User.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.user.entity;
import com.google.common.base.MoreObjects;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
/**
* 用户信息定义
*
* @author CD826(CD826Dong@gmail.com)
* @since 1.0.0
*/
@Entity
@Table(name = "tbUser")
public class User implements Serializable {
private static final long serialVersionUID = 1L;
// ========================================================================
// fields =================================================================
@Id
@GeneratedValue
/** 用户数据库主键 */
private Long id;
/** 用户昵称 */
private String nickname;
/** 用户头像 */
private String avatar;
@Override
public String toString() {
return MoreObjects.toStringHelper(this)
.add("id", getId())
.add("nickname", getNickname()).toString();
}
protected MoreObjects.ToStringHelper toStringHelper() {
return MoreObjects.toStringHelper(this)
.add("id", getId())
.add("nickname", getNickname());
}
// ========================================================================
// setter/getter ==========================================================
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getNickname() {
return nickname;
}
public void setNickname(String nickname) {
this.nickname = nickname;
}
public String getAvatar() {
return avatar;
}
public void setAvatar(String avatar) {
this.avatar = avatar;
}
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.user.repository;
import com.cd826dong.clouddemo.user.entity.User;
import org.springframework.data.jpa.repository.JpaRepository;
/**
* 用户信息repository
*
* @author CD826
* @since 1.0.0
*/
public interface UserRepository extends JpaRepository<User, Long> {
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.user.service;
import com.cd826dong.clouddemo.user.dto.UserDto;
import com.cd826dong.clouddemo.user.entity.User;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
/**
* 用户服务
*
* @author CD826
* @since 1.0.0
*/
public interface UserService {
/**
* 获取商品配置的分页数据
* @param pageable 分页参数
* @return 分页数据
*/
Page<User> getPage(Pageable pageable);
/**
* 加载指定的用户信息
* @param id 用户主键
* @return
*/
User load(Long id);
/**
* 保存/更新用户
* @param userDto
* @return
*/
User save(UserDto userDto);
/**
* 删除指定的用户
* @param id 所要删除的用户主键
*/
void delete(Long id);
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/service/impl/UserServiceImpl.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.user.service.impl;
import com.cd826dong.clouddemo.user.dto.UserDto;
import com.cd826dong.clouddemo.user.entity.User;
import com.cd826dong.clouddemo.user.repository.UserRepository;
import com.cd826dong.clouddemo.user.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/**
* 用户管理服务的默认实现
*
* @author CD826
* @since 1.0.0
*/
@Service
public class UserServiceImpl implements UserService {
@Autowired
protected UserRepository userRepository;
@Override
public Page<User> getPage(Pageable pageable) {
return this.userRepository.findAll(pageable);
}
@Override
public User load(Long id) {
return this.userRepository.findOne(id);
}
@Override
@Transactional
public User save(UserDto userDto) {
User user = this.userRepository.findOne(userDto.getId());
if (null == user) {
user = new User();
}
user.setNickname(userDto.getNickname());
user.setAvatar(userDto.getAvatar());
return this.userRepository.save(user);
}
@Override
@Transactional
public void delete(Long id) {
this.userRepository.delete(id);
}
}
================================================
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
================================================
/*
* 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.
*/
package com.cd826dong.clouddemo.util;
import org.hibernate.boot.model.naming.Identifier;
import org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl;
import org.hibernate.engine.jdbc.env.spi.JdbcEnvironment;
import org.springframework.util.StringUtils;
import javax.persistence.MappedSuperclass;
/**
* Hibernate命名方法:
* 1)保持Entity类中对数据库表命名的不变;
*
* @author CD826(CD826Dong@gmail.com)
* @since 1.0.0
*/
@MappedSuperclass
public class HibernatePhysicalNamingNamingStrategy extends PhysicalNamingStrategyStandardImpl {
@Override
public Identifier toPhysicalTableName(Identifier name, JdbcEnvironment context) {
return new Identifier(name.getText(), name.isQuoted());
}
@Override
public Identifier toPhysicalColumnName(Identifier identifier, JdbcEnvironment jdbcEnv) {
return convert(identifier);
}
private Identifier convert(Identifier identifier) {
if (identifier == null || !StringUtils.hasText(identifier.getText())) {
return identifier;
}
String regex = "([a-z])([A-Z])";
String replacement = "$1_$2";
String newName = identifier.getText().replaceAll(regex, replacement).toLowerCase();
return Identifier.toIdentifier(newName);
}
}
================================================
FILE: chapter02 -- boot/src/main/resources/.h2.server.properties
================================================
#H2 Server Properties
#Mon Mar 06 13:35:06 CST 2017
0=TestDB(Embedded)|org.h2.Driver|jdbc\:h2\:mem\:testdb|sa
webAllowOthers=false
webPort=8090
webSSL=false
================================================
FILE: chapter02 -- boot/src/main/resources/application.properties
================================================
server.port=8080
logging.level.org.springframework=INFO
logging.level.org.springframework.web=ERROR
logging.level.org.springframework.boot.web=ERROR
logging.level.org.springframework.jdbc=ERROR
logging.level.org.hibernate=ERROR
logging.level.org.springframework.boot.actuate=ERROR
logging.level.springfox=ERROR
logging.level.com.cd826dong=DEBUG
# =====================================================================================================================
# == JPA (Hibernate) ==
# =====================================================================================================================
spring.jpa.open-in-view=true
spring.jpa.hibernate.ddl-auto=none
spring.jpa.show-sql=false
spring.jpa.properties.hibernate.physical_naming_strategy=com.cd826dong.clouddemo.util.HibernatePhysicalNamingNamingStrategy
# =============================================================================
# == H2 Datasource Properties ==
# =============================================================================
spring.jpa.database=H2
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.url=jdbc:h2:~/testdb
#spring.datasource.url=jdbc\:h2\:mem\:testdb;DB_CLOSE_DELAY=-1;
spring.datasource.username=sa
spring.datasource.password=
spring.h2.console.enabled=true
spring.h2.console.path=/h2-console
================================================
FILE: chapter02 -- boot/src/main/resources/banner.txt
================================================
=======================================================================================================================
== ==
== ==
== _______ ______ _____ _______ ______ _______ _ _______ ______ ==
== ( ____ \( __ \ / ___ \ / ___ ) / ____ \ ( ____ \( \ ( ___ )|\ /|( __ \ ==
== | ( \/| ( \ )( (___) )\/ ) |( ( \/ | ( \/| ( | ( ) || ) ( || ( \ ) ==
== | | | | ) | \ / / )| (____ _____ | | | | | | | || | | || | ) | ==
== | | | | | | / ___ \ _/ / | ___ \(_____)| | | | | | | || | | || | | | ==
== | | | | ) |( ( ) ) / _/ | ( ) ) | | | | | | | || | | || | ) | ==
== | (____/\| (__/ )( (___) )( (__/\( (___) ) | (____/\| (____/\| (___) || (___) || (__/ ) ==
== (_______/(______/ \_____/ \_______/ \_____/ (_______/(_______/(_______)(_______)(______/ ==
== ==
== ==
=======================================================================================================================
:: SpringBoot Demo (v0.0.1 BUILD-SNAPSHOT) BUILD-BY: CD826(CD826Dong@gamil.com)
================================================
FILE: chapter02 -- boot/src/main/resources/data.sql
================================================
-- 导入测试商品列表
insert into tbProduct (id, name, cover_image, price) values(1, '测试商品-001', '/products/cover/001.png', 100);
insert into tbProduct (id, name, cover_image, price) values(2, '测试商品-002', '/products/cover/002.png', 200);
insert into tbProduct (id, name, cover_image, price) values(3, '测试商品-003', '/products/cover/003.png', 300);
insert into tbProduct (id, name, cover_image, price) values(4, '测试商品-004', '/products/cover/004.png', 400);
insert into tbProduct (id, name, cover_image, price) values(5, '测试商品-005', '/products/cover/005.png', 500);
-- 导入测试用户列表
insert into tbUser (id, nickname, avatar) values(1, 'zhangSan', '/users/avatar/zhangsan.png');
insert into tbUser (id, nickname, avatar) values(2, 'lisi', '/users/avatar/lisi.png');
insert into tbUser (id, nickname, avatar) values(3, 'wangwu', '/users/avatar/wangwu.png');
insert into tbUser (id, nickname, avatar) values(4, 'yanxiaoliu', '/users/avatar/yanxiaoliu.png');
-- 导入商品3的评论列表
insert into tbProduct_Comment (id, product_id, author_id, content, created) values(1, 3, 1, '非常不错的商品', CURRENT_TIMESTAMP());
insert into tbProduct_Comment (id, product_id, author_id, content, created) values(2, 3, 3, '非常不错的商品+1', CURRENT_TIMESTAMP());
insert into tbProduct_Comment (id, product_id, author_id, content, created) values(3, 3, 4, '哈哈,谁用谁知道', CURRENT_TIMESTAMP());
================================================
FILE: chapter02 -- boot/src/main/resources/schema.sql
================================================
drop table if exists tbProduct;
drop table if exists tbProduct_Comment;
drop table if exists tbUser;
-- 商品表
create table tbProduct
(
id int unsigned not null auto_increment comment '主键',
name varchar(100) comment '商品名称',
cover_image varchar(100) comment '商品封面图片',
price int not null default 0 comment '商品价格(分)',
primary key (id)
);
-- 商品评论表
create table tbProduct_Comment
(
id int unsigned not null auto_increment comment '主键',
product_id int unsigned comment '所属商品',
author_id int unsigned comment '作者Id',
content varchar(200) comment '评论内容',
created TIMESTAMP comment '创建时间',
primary key (id)
);
-- 用户表
create table tbUser
(
id int unsigned not null auto_increment comment '主键',
nickname varchar(50) comment '用户昵称',
avatar varchar(255) comment '用户头像',
primary key (id)
);
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/css/print.css
================================================
.swagger-section pre code{display:block;padding:.5em;background:#f0f0f0}.swagger-section pre .clojure .built_in,.swagger-section pre .lisp .title,.swagger-section pre .nginx .title,.swagger-section pre .subst,.swagger-section pre .tag .title,.swagger-section pre code{color:#000}.swagger-section pre .addition,.swagger-section pre .aggregate,.swagger-section pre .apache .cbracket,.swagger-section pre .apache .tag,.swagger-section pre .bash .variable,.swagger-section pre .constant,.swagger-section pre .django .variable,.swagger-section pre .erlang_repl .function_or_atom,.swagger-section pre .flow,.swagger-section pre .markdown .header,.swagger-section pre .parent,.swagger-section pre .preprocessor,.swagger-section pre .ruby .symbol,.swagger-section pre .ruby .symbol .string,.swagger-section pre .rules .value,.swagger-section pre .rules .value .number,.swagger-section pre .smalltalk .class,.swagger-section pre .stream,.swagger-section pre .string,.swagger-section pre .tag .value,.swagger-section pre .template_tag,.swagger-section pre .tex .command,.swagger-section pre .tex .special,.swagger-section pre .title{color:#800}.swagger-section pre .annotation,.swagger-section pre .chunk,.swagger-section pre .comment,.swagger-section pre .diff .header,.swagger-section pre .markdown .blockquote,.swagger-section pre .template_comment{color:#888}.swagger-section pre .change,.swagger-section pre .date,.swagger-section pre .go .constant,.swagger-section pre .literal,.swagger-section pre .markdown .bullet,.swagger-section pre .markdown .link_url,.swagger-section pre .number,.swagger-section pre .regexp,.swagger-section pre .smalltalk .char,.swagger-section pre .smalltalk .symbol{color:#080}.swagger-section pre .apache .sqbracket,.swagger-section pre .array,.swagger-section pre .attr_selector,.swagger-section pre .clojure .attribute,.swagger-section pre .coffeescript .property,.swagger-section pre .decorator,.swagger-section pre .deletion,.swagger-section pre .doctype,.swagger-section pre .envvar,.swagger-section pre .erlang_repl .reserved,.swagger-section pre .filter .argument,.swagger-section pre .important,.swagger-section pre .javadoc,.swagger-section pre .label,.swagger-section pre .localvars,.swagger-section pre .markdown .link_label,.swagger-section pre .nginx .built_in,.swagger-section pre .pi,.swagger-section pre .prompt,.swagger-section pre .pseudo,.swagger-section pre .ruby .string,.swagger-section pre .shebang,.swagger-section pre .tex .formula,.swagger-section pre .vhdl .attribute{color:#88f}.swagger-section pre .aggregate,.swagger-section pre .apache .tag,.swagger-section pre .bash .variable,.swagger-section pre .built_in,.swagger-section pre .css .tag,.swagger-section pre .go .typename,.swagger-section pre .id,.swagger-section pre .javadoctag,.swagger-section pre .keyword,.swagger-section pre .markdown .strong,.swagger-section pre .phpdoc,.swagger-section pre .request,.swagger-section pre .smalltalk .class,.swagger-section pre .status,.swagger-section pre .tex .command,.swagger-section pre .title,.swagger-section pre .winutils,.swagger-section pre .yardoctag{font-weight:700}.swagger-section pre .markdown .emphasis{font-style:italic}.swagger-section pre .nginx .built_in{font-weight:400}.swagger-section pre .coffeescript .javascript,.swagger-section pre .javascript .xml,.swagger-section pre .tex .formula,.swagger-section pre .xml .cdata,.swagger-section pre .xml .css,.swagger-section pre .xml .javascript,.swagger-section pre .xml .vbscript{opacity:.5}.swagger-section .hljs{display:block;overflow-x:auto;padding:.5em;background:#f0f0f0}.swagger-section .hljs,.swagger-section .hljs-subst{color:#444}.swagger-section .hljs-attribute,.swagger-section .hljs-doctag,.swagger-section .hljs-keyword,.swagger-section .hljs-meta-keyword,.swagger-section .hljs-name,.swagger-section .hljs-selector-tag{font-weight:700}.swagger-section .hljs-addition,.swagger-section .hljs-built_in,.swagger-section .hljs-bullet,.swagger-section .hljs-code,.swagger-section .hljs-literal{color:#1f811f}.swagger-section .hljs-link,.swagger-section .hljs-regexp,.swagger-section .hljs-selector-attr,.swagger-section .hljs-selector-pseudo,.swagger-section .hljs-symbol,.swagger-section .hljs-template-variable,.swagger-section .hljs-variable{color:#bc6060}.swagger-section .hljs-deletion,.swagger-section .hljs-number,.swagger-section .hljs-quote,.swagger-section .hljs-selector-class,.swagger-section .hljs-selector-id,.swagger-section .hljs-string,.swagger-section .hljs-template-tag,.swagger-section .hljs-type{color:#800}.swagger-section .hljs-section,.swagger-section .hljs-title{color:#800;font-weight:700}.swagger-section .hljs-comment{color:#888}.swagger-section .hljs-meta{color:#2b6ea1}.swagger-section .hljs-emphasis{font-style:italic}.swagger-section .hljs-strong{font-weight:700}.swagger-section .swagger-ui-wrap{line-height:1;font-family:Droid Sans,sans-serif;min-width:760px;max-width:960px;margin-left:auto;margin-right:auto}.swagger-section .swagger-ui-wrap b,.swagger-section .swagger-ui-wrap strong{font-family:Droid Sans,sans-serif;font-weight:700}.swagger-section .swagger-ui-wrap blockquote,.swagger-section .swagger-ui-wrap q{quotes:none}.swagger-section .swagger-ui-wrap p{line-height:1.4em;padding:0 0 10px;color:#333}.swagger-section .swagger-ui-wrap blockquote:after,.swagger-section .swagger-ui-wrap blockquote:before,.swagger-section .swagger-ui-wrap q:after,.swagger-section .swagger-ui-wrap q:before{content:none}.swagger-section .swagger-ui-wrap .heading_with_menu h1,.swagger-section .swagger-ui-wrap .heading_with_menu h2,.swagger-section .swagger-ui-wrap .heading_with_menu h3,.swagger-section .swagger-ui-wrap .heading_with_menu h4,.swagger-section .swagger-ui-wrap .heading_with_menu h5,.swagger-section .swagger-ui-wrap .heading_with_menu h6{display:block;clear:none;float:left;-ms-box-sizing:border-box;box-sizing:border-box;width:60%}.swagger-section .swagger-ui-wrap table{border-collapse:collapse;border-spacing:0}.swagger-section .swagger-ui-wrap table thead tr th{padding:5px;font-size:.9em;color:#666;border-bottom:1px solid #999}.swagger-section .swagger-ui-wrap table tbody tr:last-child td{border-bottom:none}.swagger-section .swagger-ui-wrap table tbody tr.offset{background-color:#f0f0f0}.swagger-section .swagger-ui-wrap table tbody tr td{padding:6px;font-size:.9em;border-bottom:1px solid #ccc;vertical-align:top;line-height:1.3em}.swagger-section .swagger-ui-wrap ol{margin:0 0 10px;padding:0 0 0 18px;list-style-type:decimal}.swagger-section .swagger-ui-wrap ol li{padding:5px 0;font-size:.9em;color:#333}.swagger-section .swagger-ui-wrap ol,.swagger-section .swagger-ui-wrap ul{list-style:none}.swagger-section .swagger-ui-wrap h1 a,.swagger-section .swagger-ui-wrap h2 a,.swagger-section .swagger-ui-wrap h3 a,.swagger-section .swagger-ui-wrap h4 a,.swagger-section .swagger-ui-wrap h5 a,.swagger-section .swagger-ui-wrap h6 a{text-decoration:none}.swagger-section .swagger-ui-wrap h1 a:hover,.swagger-section .swagger-ui-wrap h2 a:hover,.swagger-section .swagger-ui-wrap h3 a:hover,.swagger-section .swagger-ui-wrap h4 a:hover,.swagger-section .swagger-ui-wrap h5 a:hover,.swagger-section .swagger-ui-wrap h6 a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap h1 span.divider,.swagger-section .swagger-ui-wrap h2 span.divider,.swagger-section .swagger-ui-wrap h3 span.divider,.swagger-section .swagger-ui-wrap h4 span.divider,.swagger-section .swagger-ui-wrap h5 span.divider,.swagger-section .swagger-ui-wrap h6 span.divider{color:#aaa}.swagger-section .swagger-ui-wrap a{color:#547f00}.swagger-section .swagger-ui-wrap a img{border:none}.swagger-section .swagger-ui-wrap article,.swagger-section .swagger-ui-wrap aside,.swagger-section .swagger-ui-wrap details,.swagger-section .swagger-ui-wrap figcaption,.swagger-section .swagger-ui-wrap figure,.swagger-section .swagger-ui-wrap footer,.swagger-section .swagger-ui-wrap header,.swagger-section .swagger-ui-wrap hgroup,.swagger-section .swagger-ui-wrap menu,.swagger-section .swagger-ui-wrap nav,.swagger-section .swagger-ui-wrap section,.swagger-section .swagger-ui-wrap summary{display:block}.swagger-section .swagger-ui-wrap pre{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;background-color:#fcf6db;border:1px solid #e5e0c6;padding:10px}.swagger-section .swagger-ui-wrap pre code{line-height:1.6em;background:none}.swagger-section .swagger-ui-wrap .content>.content-type>div>label{clear:both;display:block;color:#0f6ab4;font-size:1.1em;margin:0;padding:15px 0 5px}.swagger-section .swagger-ui-wrap .content pre{font-size:12px;margin-top:5px;padding:5px}.swagger-section .swagger-ui-wrap .icon-btn{cursor:pointer}.swagger-section .swagger-ui-wrap .info_title{padding-bottom:10px;font-weight:700;font-size:25px}.swagger-section .swagger-ui-wrap .footer{margin-top:20px}.swagger-section .swagger-ui-wrap div.big p,.swagger-section .swagger-ui-wrap p.big{font-size:1em;margin-bottom:10px}.swagger-section .swagger-ui-wrap form.fullwidth ol li.numeric input,.swagger-section .swagger-ui-wrap form.fullwidth ol li.string input,.swagger-section .swagger-ui-wrap form.fullwidth ol li.text textarea,.swagger-section .swagger-ui-wrap form.fullwidth ol li.url input{width:500px!important}.swagger-section .swagger-ui-wrap .info_license,.swagger-section .swagger-ui-wrap .info_tos{padding-bottom:5px}.swagger-section .swagger-ui-wrap .message-fail{color:#c00}.swagger-section .swagger-ui-wrap .info_email,.swagger-section .swagger-ui-wrap .info_name,.swagger-section .swagger-ui-wrap .info_url{padding-bottom:5px}.swagger-section .swagger-ui-wrap .info_description{padding-bottom:10px;font-size:15px}.swagger-section .swagger-ui-wrap .markdown ol li,.swagger-section .swagger-ui-wrap .markdown ul li{padding:3px 0;line-height:1.4em;color:#333}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.numeric input,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.string input,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.url input{display:block;padding:4px;width:auto;clear:both}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.numeric input.title,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.string input.title,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.url input.title{font-size:1.3em}.swagger-section .swagger-ui-wrap table.fullwidth{width:100%}.swagger-section .swagger-ui-wrap .model-signature{font-family:Droid Sans,sans-serif;font-size:1em;line-height:1.5em}.swagger-section .swagger-ui-wrap .model-signature .signature-nav a{text-decoration:none;color:#aaa}.swagger-section .swagger-ui-wrap .model-signature .signature-nav a:hover{text-decoration:underline;color:#000}.swagger-section .swagger-ui-wrap .model-signature .signature-nav .selected{color:#000;text-decoration:none}.swagger-section .swagger-ui-wrap .model-signature .propType{color:#55a}.swagger-section .swagger-ui-wrap .model-signature pre:hover{background-color:#ffd}.swagger-section .swagger-ui-wrap .model-signature pre{font-size:.85em;line-height:1.2em;overflow:auto;height:200px;resize:vertical;cursor:pointer}.swagger-section .swagger-ui-wrap .model-signature ul.signature-nav{display:block;min-width:230px;margin:0;padding:0}.swagger-section .swagger-ui-wrap .model-signature ul.signature-nav li:last-child{padding-right:0;border-right:none}.swagger-section .swagger-ui-wrap .model-signature ul.signature-nav li{float:left;margin:0 5px 5px 0;padding:2px 5px 2px 0;border-right:1px solid #ddd}.swagger-section .swagger-ui-wrap .model-signature .propOpt{color:#555}.swagger-section .swagger-ui-wrap .model-signature .snippet small{font-size:.75em}.swagger-section .swagger-ui-wrap .model-signature .propOptKey{font-style:italic}.swagger-section .swagger-ui-wrap .model-signature .description .strong{font-weight:700;color:#000;font-size:.9em}.swagger-section .swagger-ui-wrap .model-signature .description div{font-size:.9em;line-height:1.5em;margin-left:1em}.swagger-section .swagger-ui-wrap .model-signature .description .stronger{font-weight:700;color:#000}.swagger-section .swagger-ui-wrap .model-signature .description .propWrap .optionsWrapper{border-spacing:0;position:absolute;background-color:#fff;border:1px solid #bbb;display:none;font-size:11px;max-width:400px;line-height:30px;color:#000;padding:5px;margin-left:10px}.swagger-section .swagger-ui-wrap .model-signature .description .propWrap .optionsWrapper th{text-align:center;background-color:#eee;border:1px solid #bbb;font-size:11px;color:#666;font-weight:700;padding:5px;line-height:15px}.swagger-section .swagger-ui-wrap .model-signature .description .propWrap .optionsWrapper .optionName{font-weight:700}.swagger-section .swagger-ui-wrap .model-signature .description .propDesc.markdown>p:first-child,.swagger-section .swagger-ui-wrap .model-signature .description .propDesc.markdown>p:last-child{display:inline}.swagger-section .swagger-ui-wrap .model-signature .description .propDesc.markdown>p:not(:first-child):before{display:block;content:""}.swagger-section .swagger-ui-wrap .model-signature .description span:last-of-type.propDesc.markdown>p:only-child{margin-right:-3px}.swagger-section .swagger-ui-wrap .model-signature .propName{font-weight:700}.swagger-section .swagger-ui-wrap .model-signature .signature-container{clear:both}.swagger-section .swagger-ui-wrap .body-textarea{width:300px;height:100px;border:1px solid #aaa}.swagger-section .swagger-ui-wrap .markdown li code,.swagger-section .swagger-ui-wrap .markdown p code{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;background-color:#f0f0f0;color:#000;padding:1px 3px}.swagger-section .swagger-ui-wrap .required{font-weight:700}.swagger-section .swagger-ui-wrap .editor_holder{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;font-size:.9em}.swagger-section .swagger-ui-wrap .editor_holder label{font-weight:400!important}.swagger-section .swagger-ui-wrap .editor_holder label.required{font-weight:700!important}.swagger-section .swagger-ui-wrap input.parameter{width:300px;border:1px solid #aaa}.swagger-section .swagger-ui-wrap h1{color:#000;font-size:1.5em;line-height:1.3em;padding:10px 0;font-family:Droid Sans,sans-serif;font-weight:700}.swagger-section .swagger-ui-wrap .heading_with_menu{float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap .heading_with_menu ul{display:block;clear:none;float:right;-ms-box-sizing:border-box;box-sizing:border-box;margin-top:10px}.swagger-section .swagger-ui-wrap h2{color:#000;font-size:1.3em;padding:10px 0}.swagger-section .swagger-ui-wrap h2 a{color:#000}.swagger-section .swagger-ui-wrap h2 span.sub{font-size:.7em;color:#999;font-style:italic}.swagger-section .swagger-ui-wrap h2 span.sub a{color:#777}.swagger-section .swagger-ui-wrap span.weak{color:#666}.swagger-section .swagger-ui-wrap .message-success{color:#89bf04}.swagger-section .swagger-ui-wrap caption,.swagger-section .swagger-ui-wrap td,.swagger-section .swagger-ui-wrap th{text-align:left;font-weight:400;vertical-align:middle}.swagger-section .swagger-ui-wrap .code{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.text textarea{font-family:Droid Sans,sans-serif;height:250px;padding:4px;display:block;clear:both}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.select select{display:block;clear:both}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.boolean{float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.boolean label{display:block;float:left;clear:none;margin:0;padding:0}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.boolean input{display:block;float:left;clear:none;margin:0 5px 0 0}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.required label{color:#000}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li label{display:block;clear:both;width:auto;padding:0 0 3px;color:#666}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li label abbr{padding-left:3px;color:#888}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li p.inline-hints{margin-left:0;font-style:italic;font-size:.9em;margin:0}.swagger-section .swagger-ui-wrap form.formtastic fieldset.buttons{margin:0;padding:0}.swagger-section .swagger-ui-wrap span.blank,.swagger-section .swagger-ui-wrap span.empty{color:#888;font-style:italic}.swagger-section .swagger-ui-wrap .markdown h3{color:#547f00}.swagger-section .swagger-ui-wrap .markdown h4{color:#666}.swagger-section .swagger-ui-wrap .markdown pre{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;background-color:#fcf6db;border:1px solid #e5e0c6;padding:10px;margin:0 0 10px}.swagger-section .swagger-ui-wrap .markdown pre code{line-height:1.6em;overflow:auto}.swagger-section .swagger-ui-wrap div.gist{margin:20px 0 25px!important}.swagger-section .swagger-ui-wrap ul#resources{font-family:Droid Sans,sans-serif;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource{border-bottom:1px solid #ddd}.swagger-section .swagger-ui-wrap ul#resources li.resource.active div.heading h2 a,.swagger-section .swagger-ui-wrap ul#resources li.resource:hover div.heading h2 a{color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource.active div.heading ul.options li a,.swagger-section .swagger-ui-wrap ul#resources li.resource:hover div.heading ul.options li a{color:#555}.swagger-section .swagger-ui-wrap ul#resources li.resource:last-child{border-bottom:none}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading{border:1px solid transparent;float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options{overflow:hidden;padding:0;display:block;clear:none;float:right;margin:14px 10px 0 0}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li{float:left;clear:none;margin:0;padding:2px 10px;border-right:1px solid #ddd;color:#666;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a{color:#aaa;text-decoration:none}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a:hover{text-decoration:underline;color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a.active,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a:active,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li.first,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li:first-child{padding-left:0}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li:last-child{padding-right:0;border-right:none}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options.first,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options:first-child{padding-left:0}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2{color:#999;padding-left:0;display:block;clear:none;float:left;font-family:Droid Sans,sans-serif;font-weight:700}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 a{color:#999}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 a:hover{color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation{float:none;clear:both;overflow:hidden;display:block;margin:0 0 10px;padding:0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading{float:none;clear:both;overflow:hidden;display:block;margin:0;padding:0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3{display:block;clear:none;float:left;width:auto;margin:0;padding:0;line-height:1.1em;color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path{padding-left:10px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path a{color:#000;text-decoration:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path a.toggleOperation.deprecated{text-decoration:line-through}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.http_method a{text-transform:uppercase;text-decoration:none;color:#fff;display:inline-block;width:50px;font-size:.7em;text-align:center;padding:7px 0 4px;border-radius:2px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span{margin:0;padding:0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options{overflow:hidden;padding:0;display:block;clear:none;float:right;margin:6px 10px 0 0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li{float:left;clear:none;margin:0;padding:2px 10px;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li a{text-decoration:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li a .markdown p{color:inherit;padding:0;line-height:inherit}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li a .nickname{color:#aaa;padding:0;line-height:inherit}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li.access{color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content{border-top:none;padding:10px;border-bottom-left-radius:6px;border-bottom-right-radius:6px;margin:0 0 20px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content h4{font-size:1.1em;margin:0;padding:15px 0 5px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header{float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header a{padding:4px 0 0 10px;display:inline-block;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header input.submit{display:block;clear:none;float:left;padding:6px 8px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header span.response_throbber{background-image:url(../images/throbber.gif);width:128px;height:16px;display:block;clear:none;float:right}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content form input[type=text].error{outline:2px solid #000;outline-color:#c00}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content form select[name=parameterContentType]{max-width:300px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.response div.block pre{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;padding:10px;font-size:.9em;max-height:400px;overflow-y:auto}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading{background-color:#f9f2e9;border:1px solid #f0e0ca}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading h3 span.http_method a{background-color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#f0e0ca;color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li a{color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content{background-color:#faf5ee;border:1px solid #f0e0ca}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content h4{color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content div.sandbox_header a{color:#dcb67f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading{background-color:#fcffcd;border:1px solid #000;border-color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading h3 span.http_method a{text-transform:uppercase;background-color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#ffd20f;color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li a{color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content{background-color:#fcffcd;border:1px solid #000;border-color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content h4{color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content div.sandbox_header a{color:#6fc992}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading{background-color:#f5e8e8;border:1px solid #e8c6c7}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading h3 span.http_method a{text-transform:uppercase;background-color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#e8c6c7;color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li a{color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content{background-color:#f7eded;border:1px solid #e8c6c7}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content h4{color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content div.sandbox_header a{color:#c8787a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading{background-color:#e7f6ec;border:1px solid #c3e8d1}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading h3 span.http_method a{background-color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#c3e8d1;color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li a{color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content{background-color:#ebf7f0;border:1px solid #c3e8d1}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content h4{color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content div.sandbox_header a{color:#6fc992}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading{background-color:#fce9e3;border:1px solid #f5d5c3}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading h3 span.http_method a{background-color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#f0cecb;color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li a{color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content{background-color:#faf0ef;border:1px solid #f0cecb}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content h4{color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content div.sandbox_header a{color:#dcb67f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading{background-color:#e7f0f7;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading h3 span.http_method a{background-color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#c3d9ec;color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li a{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content{background-color:#ebf3f9;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content h4{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content div.sandbox_header a{color:#6fa5d2}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading{background-color:#e7f0f7;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading h3 span.http_method a{background-color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#c3d9ec;color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading ul.options li a{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.content{background-color:#ebf3f9;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.content h4{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.content div.sandbox_header a{color:#6fa5d2}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content{border-top:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li:last-child{padding-right:0;border-right:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li a.active,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li a:active,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations.first,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations:first-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li.first,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li:first-child{padding-left:0}.swagger-section .swagger-ui-wrap p#colophon{margin:0 15px 40px;padding:10px 0;font-size:.8em;border-top:1px solid #ddd;font-family:Droid Sans,sans-serif;color:#999;font-style:italic}.swagger-section .swagger-ui-wrap p#colophon a{text-decoration:none;color:#547f00}.swagger-section .swagger-ui-wrap h3{color:#000;font-size:1.1em;padding:10px 0}.swagger-section .swagger-ui-wrap .markdown ol,.swagger-section .swagger-ui-wrap .markdown ul{font-family:Droid Sans,sans-serif;margin:5px 0 10px;padding:0 0 0 18px;list-style-type:disc}.swagger-section .swagger-ui-wrap form.form_box{background-color:#ebf3f9;border:1px solid #c3d9ec;padding:10px}.swagger-section .swagger-ui-wrap form.form_box label{color:#0f6ab4!important}.swagger-section .swagger-ui-wrap form.form_box input[type=submit]{display:block;padding:10px}.swagger-section .swagger-ui-wrap form.form_box p.weak{font-size:.8em}.swagger-section .swagger-ui-wrap form.form_box p{font-size:.9em;padding:0 0 15px;color:#7e7b6d}.swagger-section .swagger-ui-wrap form.form_box p a{color:#646257}.swagger-section .swagger-ui-wrap form.form_box p strong{color:#000}.swagger-section .swagger-ui-wrap .operation-status td.markdown>p:last-child{padding-bottom:0}.swagger-section .title{font-style:bold}.swagger-section .secondary_form{display:none}.swagger-section .main_image{display:block;margin-left:auto;margin-right:auto}.swagger-section .oauth_body{margin-left:100px;margin-right:100px}.swagger-section .oauth_submit{text-align:center;display:inline-block}.swagger-section .authorize-wrapper{margin:15px 0 10px}.swagger-section .authorize-wrapper_operation{float:right}.swagger-section .authorize__btn:hover{text-decoration:underline;cursor:pointer}.swagger-section .authorize__btn_operation:hover .authorize-scopes{display:block}.swagger-section .authorize-scopes{position:absolute;margin-top:20px;background:#fff;border:1px solid #ccc;border-radius:5px;display:none;font-size:13px;max-width:300px;line-height:30px;color:#000;padding:5px}.swagger-section .authorize-scopes .authorize__scope{text-decoration:none}.swagger-section .authorize__btn_operation{height:18px;vertical-align:middle;display:inline-block;background:url(../images/explorer_icons.png) no-repeat}.swagger-section .authorize__btn_operation_login{background-position:0 0;width:18px;margin-top:-6px;margin-left:4px}.swagger-section .authorize__btn_operation_logout{background-position:-30px 0;width:18px;margin-top:-6px;margin-left:4px}.swagger-section #auth_container{color:#fff;display:inline-block;border:none;padding:5px;width:87px;height:13px}.swagger-section #auth_container .authorize__btn{color:#fff}.swagger-section .auth_container{padding:0 0 10px;margin-bottom:5px;border-bottom:1px solid #ccc;font-size:.9em}.swagger-section .auth_container .auth__title{color:#547f00;font-size:1.2em}.swagger-section .auth_container .basic_auth__label{display:inline-block;width:60px}.swagger-section .auth_container .auth__description{color:#999;margin-bottom:5px}.swagger-section .auth_container .auth__button{margin-top:10px;height:30px}.swagger-section .auth_container .key_auth__field{margin:5px 0}.swagger-section .auth_container .key_auth__label{display:inline-block;width:60px}.swagger-section .api-popup-dialog{position:absolute;display:none}.swagger-section .api-popup-dialog-wrapper{z-index:2;width:500px;background:#fff;padding:20px;border:1px solid #ccc;border-radius:5px;font-size:13px;color:#777;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.swagger-section .api-popup-dialog-shadow{position:fixed;top:0;left:0;width:100%;height:100%;opacity:.2;background-color:gray;z-index:1}.swagger-section .api-popup-dialog .api-popup-title{font-size:24px;padding:10px 0}.swagger-section .api-popup-dialog .error-msg{padding-left:5px;padding-bottom:5px}.swagger-section .api-popup-dialog .api-popup-content{max-height:500px;overflow-y:auto}.swagger-section .api-popup-dialog .api-popup-authbtn,.swagger-section .api-popup-dialog .api-popup-cancel{height:30px}.swagger-section .api-popup-scopes{padding:10px 20px}.swagger-section .api-popup-scopes li{padding:5px 0;line-height:20px}.swagger-section .api-popup-scopes li input{position:relative;top:2px}.swagger-section .api-popup-scopes .api-scope-desc{padding-left:20px;font-style:italic}.swagger-section .api-popup-actions{padding-top:10px}.swagger-section fieldset{padding-bottom:10px;padding-left:20px}#header{display:none}.swagger-section .swagger-ui-wrap .model-signature pre{max-height:none}.swagger-section .swagger-ui-wrap .body-textarea,.swagger-section .swagger-ui-wrap input.parameter{width:100px}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options{display:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content{display:block!important}
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/css/reset.css
================================================
a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}table{border-collapse:collapse;border-spacing:0}
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/css/screen.css
================================================
.swagger-section pre code{display:block;padding:.5em;background:#f0f0f0}.swagger-section pre .clojure .built_in,.swagger-section pre .lisp .title,.swagger-section pre .nginx .title,.swagger-section pre .subst,.swagger-section pre .tag .title,.swagger-section pre code{color:#000}.swagger-section pre .addition,.swagger-section pre .aggregate,.swagger-section pre .apache .cbracket,.swagger-section pre .apache .tag,.swagger-section pre .bash .variable,.swagger-section pre .constant,.swagger-section pre .django .variable,.swagger-section pre .erlang_repl .function_or_atom,.swagger-section pre .flow,.swagger-section pre .markdown .header,.swagger-section pre .parent,.swagger-section pre .preprocessor,.swagger-section pre .ruby .symbol,.swagger-section pre .ruby .symbol .string,.swagger-section pre .rules .value,.swagger-section pre .rules .value .number,.swagger-section pre .smalltalk .class,.swagger-section pre .stream,.swagger-section pre .string,.swagger-section pre .tag .value,.swagger-section pre .template_tag,.swagger-section pre .tex .command,.swagger-section pre .tex .special,.swagger-section pre .title{color:#800}.swagger-section pre .annotation,.swagger-section pre .chunk,.swagger-section pre .comment,.swagger-section pre .diff .header,.swagger-section pre .markdown .blockquote,.swagger-section pre .template_comment{color:#888}.swagger-section pre .change,.swagger-section pre .date,.swagger-section pre .go .constant,.swagger-section pre .literal,.swagger-section pre .markdown .bullet,.swagger-section pre .markdown .link_url,.swagger-section pre .number,.swagger-section pre .regexp,.swagger-section pre .smalltalk .char,.swagger-section pre .smalltalk .symbol{color:#080}.swagger-section pre .apache .sqbracket,.swagger-section pre .array,.swagger-section pre .attr_selector,.swagger-section pre .clojure .attribute,.swagger-section pre .coffeescript .property,.swagger-section pre .decorator,.swagger-section pre .deletion,.swagger-section pre .doctype,.swagger-section pre .envvar,.swagger-section pre .erlang_repl .reserved,.swagger-section pre .filter .argument,.swagger-section pre .important,.swagger-section pre .javadoc,.swagger-section pre .label,.swagger-section pre .localvars,.swagger-section pre .markdown .link_label,.swagger-section pre .nginx .built_in,.swagger-section pre .pi,.swagger-section pre .prompt,.swagger-section pre .pseudo,.swagger-section pre .ruby .string,.swagger-section pre .shebang,.swagger-section pre .tex .formula,.swagger-section pre .vhdl .attribute{color:#88f}.swagger-section pre .aggregate,.swagger-section pre .apache .tag,.swagger-section pre .bash .variable,.swagger-section pre .built_in,.swagger-section pre .css .tag,.swagger-section pre .go .typename,.swagger-section pre .id,.swagger-section pre .javadoctag,.swagger-section pre .keyword,.swagger-section pre .markdown .strong,.swagger-section pre .phpdoc,.swagger-section pre .request,.swagger-section pre .smalltalk .class,.swagger-section pre .status,.swagger-section pre .tex .command,.swagger-section pre .title,.swagger-section pre .winutils,.swagger-section pre .yardoctag{font-weight:700}.swagger-section pre .markdown .emphasis{font-style:italic}.swagger-section pre .nginx .built_in{font-weight:400}.swagger-section pre .coffeescript .javascript,.swagger-section pre .javascript .xml,.swagger-section pre .tex .formula,.swagger-section pre .xml .cdata,.swagger-section pre .xml .css,.swagger-section pre .xml .javascript,.swagger-section pre .xml .vbscript{opacity:.5}.swagger-section .hljs{display:block;overflow-x:auto;padding:.5em;background:#f0f0f0}.swagger-section .hljs,.swagger-section .hljs-subst{color:#444}.swagger-section .hljs-attribute,.swagger-section .hljs-doctag,.swagger-section .hljs-keyword,.swagger-section .hljs-meta-keyword,.swagger-section .hljs-name,.swagger-section .hljs-selector-tag{font-weight:700}.swagger-section .hljs-addition,.swagger-section .hljs-built_in,.swagger-section .hljs-bullet,.swagger-section .hljs-code,.swagger-section .hljs-literal{color:#1f811f}.swagger-section .hljs-link,.swagger-section .hljs-regexp,.swagger-section .hljs-selector-attr,.swagger-section .hljs-selector-pseudo,.swagger-section .hljs-symbol,.swagger-section .hljs-template-variable,.swagger-section .hljs-variable{color:#bc6060}.swagger-section .hljs-deletion,.swagger-section .hljs-number,.swagger-section .hljs-quote,.swagger-section .hljs-selector-class,.swagger-section .hljs-selector-id,.swagger-section .hljs-string,.swagger-section .hljs-template-tag,.swagger-section .hljs-type{color:#800}.swagger-section .hljs-section,.swagger-section .hljs-title{color:#800;font-weight:700}.swagger-section .hljs-comment{color:#888}.swagger-section .hljs-meta{color:#2b6ea1}.swagger-section .hljs-emphasis{font-style:italic}.swagger-section .hljs-strong{font-weight:700}.swagger-section .swagger-ui-wrap{line-height:1;font-family:Droid Sans,sans-serif;min-width:760px;max-width:960px;margin-left:auto;margin-right:auto}.swagger-section .swagger-ui-wrap b,.swagger-section .swagger-ui-wrap strong{font-family:Droid Sans,sans-serif;font-weight:700}.swagger-section .swagger-ui-wrap blockquote,.swagger-section .swagger-ui-wrap q{quotes:none}.swagger-section .swagger-ui-wrap p{line-height:1.4em;padding:0 0 10px;color:#333}.swagger-section .swagger-ui-wrap blockquote:after,.swagger-section .swagger-ui-wrap blockquote:before,.swagger-section .swagger-ui-wrap q:after,.swagger-section .swagger-ui-wrap q:before{content:none}.swagger-section .swagger-ui-wrap .heading_with_menu h1,.swagger-section .swagger-ui-wrap .heading_with_menu h2,.swagger-section .swagger-ui-wrap .heading_with_menu h3,.swagger-section .swagger-ui-wrap .heading_with_menu h4,.swagger-section .swagger-ui-wrap .heading_with_menu h5,.swagger-section .swagger-ui-wrap .heading_with_menu h6{display:block;clear:none;float:left;-ms-box-sizing:border-box;box-sizing:border-box;width:60%}.swagger-section .swagger-ui-wrap table{border-collapse:collapse;border-spacing:0}.swagger-section .swagger-ui-wrap table thead tr th{padding:5px;font-size:.9em;color:#666;border-bottom:1px solid #999}.swagger-section .swagger-ui-wrap table tbody tr:last-child td{border-bottom:none}.swagger-section .swagger-ui-wrap table tbody tr.offset{background-color:#f0f0f0}.swagger-section .swagger-ui-wrap table tbody tr td{padding:6px;font-size:.9em;border-bottom:1px solid #ccc;vertical-align:top;line-height:1.3em}.swagger-section .swagger-ui-wrap ol{margin:0 0 10px;padding:0 0 0 18px;list-style-type:decimal}.swagger-section .swagger-ui-wrap ol li{padding:5px 0;font-size:.9em;color:#333}.swagger-section .swagger-ui-wrap ol,.swagger-section .swagger-ui-wrap ul{list-style:none}.swagger-section .swagger-ui-wrap h1 a,.swagger-section .swagger-ui-wrap h2 a,.swagger-section .swagger-ui-wrap h3 a,.swagger-section .swagger-ui-wrap h4 a,.swagger-section .swagger-ui-wrap h5 a,.swagger-section .swagger-ui-wrap h6 a{text-decoration:none}.swagger-section .swagger-ui-wrap h1 a:hover,.swagger-section .swagger-ui-wrap h2 a:hover,.swagger-section .swagger-ui-wrap h3 a:hover,.swagger-section .swagger-ui-wrap h4 a:hover,.swagger-section .swagger-ui-wrap h5 a:hover,.swagger-section .swagger-ui-wrap h6 a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap h1 span.divider,.swagger-section .swagger-ui-wrap h2 span.divider,.swagger-section .swagger-ui-wrap h3 span.divider,.swagger-section .swagger-ui-wrap h4 span.divider,.swagger-section .swagger-ui-wrap h5 span.divider,.swagger-section .swagger-ui-wrap h6 span.divider{color:#aaa}.swagger-section .swagger-ui-wrap a{color:#547f00}.swagger-section .swagger-ui-wrap a img{border:none}.swagger-section .swagger-ui-wrap article,.swagger-section .swagger-ui-wrap aside,.swagger-section .swagger-ui-wrap details,.swagger-section .swagger-ui-wrap figcaption,.swagger-section .swagger-ui-wrap figure,.swagger-section .swagger-ui-wrap footer,.swagger-section .swagger-ui-wrap header,.swagger-section .swagger-ui-wrap hgroup,.swagger-section .swagger-ui-wrap menu,.swagger-section .swagger-ui-wrap nav,.swagger-section .swagger-ui-wrap section,.swagger-section .swagger-ui-wrap summary{display:block}.swagger-section .swagger-ui-wrap pre{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;background-color:#fcf6db;border:1px solid #e5e0c6;padding:10px}.swagger-section .swagger-ui-wrap pre code{line-height:1.6em;background:none}.swagger-section .swagger-ui-wrap .content>.content-type>div>label{clear:both;display:block;color:#0f6ab4;font-size:1.1em;margin:0;padding:15px 0 5px}.swagger-section .swagger-ui-wrap .content pre{font-size:12px;margin-top:5px;padding:5px}.swagger-section .swagger-ui-wrap .icon-btn{cursor:pointer}.swagger-section .swagger-ui-wrap .info_title{padding-bottom:10px;font-weight:700;font-size:25px}.swagger-section .swagger-ui-wrap .footer{margin-top:20px}.swagger-section .swagger-ui-wrap div.big p,.swagger-section .swagger-ui-wrap p.big{font-size:1em;margin-bottom:10px}.swagger-section .swagger-ui-wrap form.fullwidth ol li.numeric input,.swagger-section .swagger-ui-wrap form.fullwidth ol li.string input,.swagger-section .swagger-ui-wrap form.fullwidth ol li.text textarea,.swagger-section .swagger-ui-wrap form.fullwidth ol li.url input{width:500px!important}.swagger-section .swagger-ui-wrap .info_license,.swagger-section .swagger-ui-wrap .info_tos{padding-bottom:5px}.swagger-section .swagger-ui-wrap .message-fail{color:#c00}.swagger-section .swagger-ui-wrap .info_email,.swagger-section .swagger-ui-wrap .info_name,.swagger-section .swagger-ui-wrap .info_url{padding-bottom:5px}.swagger-section .swagger-ui-wrap .info_description{padding-bottom:10px;font-size:15px}.swagger-section .swagger-ui-wrap .markdown ol li,.swagger-section .swagger-ui-wrap .markdown ul li{padding:3px 0;line-height:1.4em;color:#333}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.numeric input,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.string input,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.url input{display:block;padding:4px;width:auto;clear:both}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.numeric input.title,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.string input.title,.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.url input.title{font-size:1.3em}.swagger-section .swagger-ui-wrap table.fullwidth{width:100%}.swagger-section .swagger-ui-wrap .model-signature{font-family:Droid Sans,sans-serif;font-size:1em;line-height:1.5em}.swagger-section .swagger-ui-wrap .model-signature .signature-nav a{text-decoration:none;color:#aaa}.swagger-section .swagger-ui-wrap .model-signature .signature-nav a:hover{text-decoration:underline;color:#000}.swagger-section .swagger-ui-wrap .model-signature .signature-nav .selected{color:#000;text-decoration:none}.swagger-section .swagger-ui-wrap .model-signature .propType{color:#55a}.swagger-section .swagger-ui-wrap .model-signature pre:hover{background-color:#ffd}.swagger-section .swagger-ui-wrap .model-signature pre{font-size:.85em;line-height:1.2em;overflow:auto;height:200px;resize:vertical;cursor:pointer}.swagger-section .swagger-ui-wrap .model-signature ul.signature-nav{display:block;min-width:230px;margin:0;padding:0}.swagger-section .swagger-ui-wrap .model-signature ul.signature-nav li:last-child{padding-right:0;border-right:none}.swagger-section .swagger-ui-wrap .model-signature ul.signature-nav li{float:left;margin:0 5px 5px 0;padding:2px 5px 2px 0;border-right:1px solid #ddd}.swagger-section .swagger-ui-wrap .model-signature .propOpt{color:#555}.swagger-section .swagger-ui-wrap .model-signature .snippet small{font-size:.75em}.swagger-section .swagger-ui-wrap .model-signature .propOptKey{font-style:italic}.swagger-section .swagger-ui-wrap .model-signature .description .strong{font-weight:700;color:#000;font-size:.9em}.swagger-section .swagger-ui-wrap .model-signature .description div{font-size:.9em;line-height:1.5em;margin-left:1em}.swagger-section .swagger-ui-wrap .model-signature .description .stronger{font-weight:700;color:#000}.swagger-section .swagger-ui-wrap .model-signature .description .propWrap .optionsWrapper{border-spacing:0;position:absolute;background-color:#fff;border:1px solid #bbb;display:none;font-size:11px;max-width:400px;line-height:30px;color:#000;padding:5px;margin-left:10px}.swagger-section .swagger-ui-wrap .model-signature .description .propWrap .optionsWrapper th{text-align:center;background-color:#eee;border:1px solid #bbb;font-size:11px;color:#666;font-weight:700;padding:5px;line-height:15px}.swagger-section .swagger-ui-wrap .model-signature .description .propWrap .optionsWrapper .optionName{font-weight:700}.swagger-section .swagger-ui-wrap .model-signature .description .propDesc.markdown>p:first-child,.swagger-section .swagger-ui-wrap .model-signature .description .propDesc.markdown>p:last-child{display:inline}.swagger-section .swagger-ui-wrap .model-signature .description .propDesc.markdown>p:not(:first-child):before{display:block;content:""}.swagger-section .swagger-ui-wrap .model-signature .description span:last-of-type.propDesc.markdown>p:only-child{margin-right:-3px}.swagger-section .swagger-ui-wrap .model-signature .propName{font-weight:700}.swagger-section .swagger-ui-wrap .model-signature .signature-container{clear:both}.swagger-section .swagger-ui-wrap .body-textarea{width:300px;height:100px;border:1px solid #aaa}.swagger-section .swagger-ui-wrap .markdown li code,.swagger-section .swagger-ui-wrap .markdown p code{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;background-color:#f0f0f0;color:#000;padding:1px 3px}.swagger-section .swagger-ui-wrap .required{font-weight:700}.swagger-section .swagger-ui-wrap .editor_holder{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;font-size:.9em}.swagger-section .swagger-ui-wrap .editor_holder label{font-weight:400!important}.swagger-section .swagger-ui-wrap .editor_holder label.required{font-weight:700!important}.swagger-section .swagger-ui-wrap input.parameter{width:300px;border:1px solid #aaa}.swagger-section .swagger-ui-wrap h1{color:#000;font-size:1.5em;line-height:1.3em;padding:10px 0;font-family:Droid Sans,sans-serif;font-weight:700}.swagger-section .swagger-ui-wrap .heading_with_menu{float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap .heading_with_menu ul{display:block;clear:none;float:right;-ms-box-sizing:border-box;box-sizing:border-box;margin-top:10px}.swagger-section .swagger-ui-wrap h2{color:#000;font-size:1.3em;padding:10px 0}.swagger-section .swagger-ui-wrap h2 a{color:#000}.swagger-section .swagger-ui-wrap h2 span.sub{font-size:.7em;color:#999;font-style:italic}.swagger-section .swagger-ui-wrap h2 span.sub a{color:#777}.swagger-section .swagger-ui-wrap span.weak{color:#666}.swagger-section .swagger-ui-wrap .message-success{color:#89bf04}.swagger-section .swagger-ui-wrap caption,.swagger-section .swagger-ui-wrap td,.swagger-section .swagger-ui-wrap th{text-align:left;font-weight:400;vertical-align:middle}.swagger-section .swagger-ui-wrap .code{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.text textarea{font-family:Droid Sans,sans-serif;height:250px;padding:4px;display:block;clear:both}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.select select{display:block;clear:both}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.boolean{float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.boolean label{display:block;float:left;clear:none;margin:0;padding:0}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.boolean input{display:block;float:left;clear:none;margin:0 5px 0 0}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li.required label{color:#000}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li label{display:block;clear:both;width:auto;padding:0 0 3px;color:#666}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li label abbr{padding-left:3px;color:#888}.swagger-section .swagger-ui-wrap form.formtastic fieldset.inputs ol li p.inline-hints{margin-left:0;font-style:italic;font-size:.9em;margin:0}.swagger-section .swagger-ui-wrap form.formtastic fieldset.buttons{margin:0;padding:0}.swagger-section .swagger-ui-wrap span.blank,.swagger-section .swagger-ui-wrap span.empty{color:#888;font-style:italic}.swagger-section .swagger-ui-wrap .markdown h3{color:#547f00}.swagger-section .swagger-ui-wrap .markdown h4{color:#666}.swagger-section .swagger-ui-wrap .markdown pre{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;background-color:#fcf6db;border:1px solid #e5e0c6;padding:10px;margin:0 0 10px}.swagger-section .swagger-ui-wrap .markdown pre code{line-height:1.6em;overflow:auto}.swagger-section .swagger-ui-wrap div.gist{margin:20px 0 25px!important}.swagger-section .swagger-ui-wrap ul#resources{font-family:Droid Sans,sans-serif;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource{border-bottom:1px solid #ddd}.swagger-section .swagger-ui-wrap ul#resources li.resource.active div.heading h2 a,.swagger-section .swagger-ui-wrap ul#resources li.resource:hover div.heading h2 a{color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource.active div.heading ul.options li a,.swagger-section .swagger-ui-wrap ul#resources li.resource:hover div.heading ul.options li a{color:#555}.swagger-section .swagger-ui-wrap ul#resources li.resource:last-child{border-bottom:none}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading{border:1px solid transparent;float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options{overflow:hidden;padding:0;display:block;clear:none;float:right;margin:14px 10px 0 0}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li{float:left;clear:none;margin:0;padding:2px 10px;border-right:1px solid #ddd;color:#666;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a{color:#aaa;text-decoration:none}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a:hover{text-decoration:underline;color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a.active,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a:active,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li.first,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li:first-child{padding-left:0}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options li:last-child{padding-right:0;border-right:none}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options.first,.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading ul.options:first-child{padding-left:0}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2{color:#999;padding-left:0;display:block;clear:none;float:left;font-family:Droid Sans,sans-serif;font-weight:700}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 a{color:#999}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 a:hover{color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation{float:none;clear:both;overflow:hidden;display:block;margin:0 0 10px;padding:0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading{float:none;clear:both;overflow:hidden;display:block;margin:0;padding:0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3{display:block;clear:none;float:left;width:auto;margin:0;padding:0;line-height:1.1em;color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path{padding-left:10px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path a{color:#000;text-decoration:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path a.toggleOperation.deprecated{text-decoration:line-through}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.path a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span.http_method a{text-transform:uppercase;text-decoration:none;color:#fff;display:inline-block;width:50px;font-size:.7em;text-align:center;padding:7px 0 4px;border-radius:2px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading h3 span{margin:0;padding:0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options{overflow:hidden;padding:0;display:block;clear:none;float:right;margin:6px 10px 0 0}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li{float:left;clear:none;margin:0;padding:2px 10px;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li a{text-decoration:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li a .markdown p{color:inherit;padding:0;line-height:inherit}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li a .nickname{color:#aaa;padding:0;line-height:inherit}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.heading ul.options li.access{color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content{border-top:none;padding:10px;border-bottom-left-radius:6px;border-bottom-right-radius:6px;margin:0 0 20px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content h4{font-size:1.1em;margin:0;padding:15px 0 5px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header{float:none;clear:both;overflow:hidden;display:block}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header a{padding:4px 0 0 10px;display:inline-block;font-size:.9em}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header input.submit{display:block;clear:none;float:left;padding:6px 8px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.sandbox_header span.response_throbber{background-image:url(../images/throbber.gif);width:128px;height:16px;display:block;clear:none;float:right}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content form input[type=text].error{outline:2px solid #000;outline-color:#c00}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content form select[name=parameterContentType]{max-width:300px}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation div.content div.response div.block pre{font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;padding:10px;font-size:.9em;max-height:400px;overflow-y:auto}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading{background-color:#f9f2e9;border:1px solid #f0e0ca}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading h3 span.http_method a{background-color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#f0e0ca;color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li a{color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content{background-color:#faf5ee;border:1px solid #f0e0ca}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content h4{color:#c5862b}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content div.sandbox_header a{color:#dcb67f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading{background-color:#fcffcd;border:1px solid #000;border-color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading h3 span.http_method a{text-transform:uppercase;background-color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#ffd20f;color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li a{color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content{background-color:#fcffcd;border:1px solid #000;border-color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content h4{color:#ffd20f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content div.sandbox_header a{color:#6fc992}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading{background-color:#f5e8e8;border:1px solid #e8c6c7}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading h3 span.http_method a{text-transform:uppercase;background-color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#e8c6c7;color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li a{color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content{background-color:#f7eded;border:1px solid #e8c6c7}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content h4{color:#a41e22}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content div.sandbox_header a{color:#c8787a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading{background-color:#e7f6ec;border:1px solid #c3e8d1}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading h3 span.http_method a{background-color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#c3e8d1;color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li a{color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content{background-color:#ebf7f0;border:1px solid #c3e8d1}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content h4{color:#10a54a}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content div.sandbox_header a{color:#6fc992}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading{background-color:#fce9e3;border:1px solid #f5d5c3}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading h3 span.http_method a{background-color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#f0cecb;color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li a{color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content{background-color:#faf0ef;border:1px solid #f0cecb}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content h4{color:#d38042}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content div.sandbox_header a{color:#dcb67f}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading{background-color:#e7f0f7;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading h3 span.http_method a{background-color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#c3d9ec;color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li a{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content{background-color:#ebf3f9;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content h4{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content div.sandbox_header a{color:#6fa5d2}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading{background-color:#e7f0f7;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading h3 span.http_method a{background-color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading ul.options li{border-right:1px solid #ddd;border-right-color:#c3d9ec;color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.heading ul.options li a{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.content{background-color:#ebf3f9;border:1px solid #c3d9ec}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.content h4{color:#0f6ab4}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.options div.content div.sandbox_header a{color:#6fa5d2}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.content,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.content{border-top:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.delete div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.get div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.head div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.patch div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.post div.heading ul.options li:last-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li.last,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations li.operation.put div.heading ul.options li:last-child{padding-right:0;border-right:none}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li a.active,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li a:active,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li a:hover{text-decoration:underline}.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations.first,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations:first-child,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li.first,.swagger-section .swagger-ui-wrap ul#resources li.resource ul.endpoints li.endpoint ul.operations ul.options li:first-child{padding-left:0}.swagger-section .swagger-ui-wrap p#colophon{margin:0 15px 40px;padding:10px 0;font-size:.8em;border-top:1px solid #ddd;font-family:Droid Sans,sans-serif;color:#999;font-style:italic}.swagger-section .swagger-ui-wrap p#colophon a{text-decoration:none;color:#547f00}.swagger-section .swagger-ui-wrap h3{color:#000;font-size:1.1em;padding:10px 0}.swagger-section .swagger-ui-wrap .markdown ol,.swagger-section .swagger-ui-wrap .markdown ul{font-family:Droid Sans,sans-serif;margin:5px 0 10px;padding:0 0 0 18px;list-style-type:disc}.swagger-section .swagger-ui-wrap form.form_box{background-color:#ebf3f9;border:1px solid #c3d9ec;padding:10px}.swagger-section .swagger-ui-wrap form.form_box label{color:#0f6ab4!important}.swagger-section .swagger-ui-wrap form.form_box input[type=submit]{display:block;padding:10px}.swagger-section .swagger-ui-wrap form.form_box p.weak{font-size:.8em}.swagger-section .swagger-ui-wrap form.form_box p{font-size:.9em;padding:0 0 15px;color:#7e7b6d}.swagger-section .swagger-ui-wrap form.form_box p a{color:#646257}.swagger-section .swagger-ui-wrap form.form_box p strong{color:#000}.swagger-section .swagger-ui-wrap .operation-status td.markdown>p:last-child{padding-bottom:0}.swagger-section .title{font-style:bold}.swagger-section .secondary_form{display:none}.swagger-section .main_image{display:block;margin-left:auto;margin-right:auto}.swagger-section .oauth_body{margin-left:100px;margin-right:100px}.swagger-section .oauth_submit{text-align:center;display:inline-block}.swagger-section .authorize-wrapper{margin:15px 0 10px}.swagger-section .authorize-wrapper_operation{float:right}.swagger-section .authorize__btn:hover{text-decoration:underline;cursor:pointer}.swagger-section .authorize__btn_operation:hover .authorize-scopes{display:block}.swagger-section .authorize-scopes{position:absolute;margin-top:20px;background:#fff;border:1px solid #ccc;border-radius:5px;display:none;font-size:13px;max-width:300px;line-height:30px;color:#000;padding:5px}.swagger-section .authorize-scopes .authorize__scope{text-decoration:none}.swagger-section .authorize__btn_operation{height:18px;vertical-align:middle;display:inline-block;background:url(../images/explorer_icons.png) no-repeat}.swagger-section .authorize__btn_operation_login{background-position:0 0;width:18px;margin-top:-6px;margin-left:4px}.swagger-section .authorize__btn_operation_logout{background-position:-30px 0;width:18px;margin-top:-6px;margin-left:4px}.swagger-section #auth_container{color:#fff;display:inline-block;border:none;padding:5px;width:87px;height:13px}.swagger-section #auth_container .authorize__btn{color:#fff}.swagger-section .auth_container{padding:0 0 10px;margin-bottom:5px;border-bottom:1px solid #ccc;font-size:.9em}.swagger-section .auth_container .auth__title{color:#547f00;font-size:1.2em}.swagger-section .auth_container .basic_auth__label{display:inline-block;width:60px}.swagger-section .auth_container .auth__description{color:#999;margin-bottom:5px}.swagger-section .auth_container .auth__button{margin-top:10px;height:30px}.swagger-section .auth_container .key_auth__field{margin:5px 0}.swagger-section .auth_container .key_auth__label{display:inline-block;width:60px}.swagger-section .api-popup-dialog{position:absolute;display:none}.swagger-section .api-popup-dialog-wrapper{z-index:2;width:500px;background:#fff;padding:20px;border:1px solid #ccc;border-radius:5px;font-size:13px;color:#777;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.swagger-section .api-popup-dialog-shadow{position:fixed;top:0;left:0;width:100%;height:100%;opacity:.2;background-color:gray;z-index:1}.swagger-section .api-popup-dialog .api-popup-title{font-size:24px;padding:10px 0}.swagger-section .api-popup-dialog .error-msg{padding-left:5px;padding-bottom:5px}.swagger-section .api-popup-dialog .api-popup-content{max-height:500px;overflow-y:auto}.swagger-section .api-popup-dialog .api-popup-authbtn,.swagger-section .api-popup-dialog .api-popup-cancel{height:30px}.swagger-section .api-popup-scopes{padding:10px 20px}.swagger-section .api-popup-scopes li{padding:5px 0;line-height:20px}.swagger-section .api-popup-scopes li input{position:relative;top:2px}.swagger-section .api-popup-scopes .api-scope-desc{padding-left:20px;font-style:italic}.swagger-section .api-popup-actions{padding-top:10px}.swagger-section fieldset{padding-bottom:10px;padding-left:20px}.swagger-section .access,.swagger-section .auth{float:right}.swagger-section .api-ic{height:18px;vertical-align:middle;display:inline-block;background:url(../images/explorer_icons.png) no-repeat}.swagger-section .api-ic .api_information_panel{position:relative;margin-top:20px;margin-left:-5px;background:#fff;border:1px solid #ccc;border-radius:5px;display:none;font-size:13px;max-width:300px;line-height:30px;color:#000;padding:5px}.swagger-section .api-ic .api_information_panel p .api-msg-enabled{color:green}.swagger-section .api-ic .api_information_panel p .api-msg-disabled{color:red}.swagger-section .api-ic:hover .api_information_panel{position:absolute;display:block}.swagger-section .ic-info{background-position:0 0;width:18px;margin-top:-6px;margin-left:4px}.swagger-section .ic-warning{background-position:-60px 0;width:18px;margin-top:-6px;margin-left:4px}.swagger-section .ic-error{background-position:-30px 0;width:18px;margin-top:-6px;margin-left:4px}.swagger-section .ic-off{background-position:-90px 0;width:58px;margin-top:-4px;cursor:pointer}.swagger-section .ic-on{background-position:-160px 0;width:58px;margin-top:-4px;cursor:pointer}.swagger-section #header{background-color:#89bf04;padding:9px 14px 19px;height:23px;min-width:775px}.swagger-section #input_baseUrl{width:400px}.swagger-section #api_selector{display:block;clear:none;float:right}.swagger-section #api_selector .input{display:inline-block;clear:none;margin:0 10px 0 0}.swagger-section #api_selector input{font-size:.9em;padding:3px;margin:0}.swagger-section #input_apiKey{width:200px}.swagger-section #auth_container .authorize__btn,.swagger-section #explore{display:block;text-decoration:none;font-weight:700;padding:6px 8px;font-size:.9em;color:#fff;background-color:#547f00;border-radius:4px}.swagger-section #auth_container .authorize__btn:hover,.swagger-section #explore:hover{background-color:#547f00}.swagger-section #header #logo{font-size:1.5em;font-weight:700;text-decoration:none;color:#fff}.swagger-section #header #logo .logo__img{display:block;float:left;margin-top:2px}.swagger-section #header #logo .logo__title{display:inline-block;padding:5px 0 0 10px}.swagger-section #content_message{margin:10px 15px;font-style:italic;color:#999}.swagger-section #message-bar{min-height:30px;text-align:center;padding-top:10px}.swagger-section .swagger-collapse:before{content:"-"}.swagger-section .swagger-expand:before{content:"+"}.swagger-section .error{outline-color:#c00;background-color:#f2dede}
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/css/style.css
================================================
.swagger-section #header a#logo{font-size:1.5em;font-weight:700;text-decoration:none;padding:20px 0 20px 40px}#text-head{font-size:80px;font-family:Roboto,sans-serif;color:#fff;float:right;margin-right:20%}.navbar-fixed-top .navbar-brand,.navbar-fixed-top .navbar-nav,.navbar-header{height:auto}.navbar-inverse{background-color:#000;border-color:#000}#navbar-brand{margin-left:20%}.navtext{font-size:10px}.h1,h1{font-size:60px}.navbar-default .navbar-header .navbar-brand{color:#a2dfee}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 a{color:#393939;font-family:Arvo,serif;font-size:1.5em}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2 a:hover{color:#000}.swagger-section .swagger-ui-wrap ul#resources li.resource div.heading h2{color:#525252;padding-left:0;display:block;clear:none;float:left;font-family:Arvo,serif;font-weight:700}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#0a0a0a}.container1{width:1500px;margin:auto;margin-top:0;background-repeat:no-repeat;background-position:-40px -20px;margin-bottom:210px}.container-inner{width:1200px;margin:auto;background-color:hsla(192,8%,88%,.75);padding-bottom:40px;padding-top:40px;border-radius:15px}.header-content{padding:0;width:1000px}.title1{font-size:80px;font-family:Vollkorn,serif;color:#404040;text-align:center;padding-top:40px;padding-bottom:100px}#icon{margin-top:-18px}.subtext{font-size:25px;font-style:italic;color:#08b;text-align:right;padding-right:250px}.bg-primary{background-color:#00468b}.navbar-default .nav>li>a,.navbar-default .nav>li>a:focus,.navbar-default .nav>li>a:focus:hover,.navbar-default .nav>li>a:hover{color:#08b}.text-faded{font-size:25px;font-family:Vollkorn,serif}.section-heading{font-family:Vollkorn,serif;font-size:45px;padding-bottom:10px}hr{border-color:#00468b;padding-bottom:10px}.description{margin-top:20px;padding-bottom:200px}.description li{font-family:Vollkorn,serif;font-size:25px;color:#525252;margin-left:28%;padding-top:5px}.gap{margin-top:200px}.troubleshootingtext{color:hsla(0,0%,100%,.7);padding-left:30%}.troubleshootingtext li{list-style-type:circle;font-size:25px;padding-bottom:5px}.overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.block.response_body.json:hover{cursor:pointer}.backdrop{color:blue}#myModal{height:100%}.modal-backdrop{bottom:0;position:fixed}.curl{padding:10px;font-family:Anonymous Pro,Menlo,Consolas,Bitstream Vera Sans Mono,Courier New,monospace;font-size:.9em;max-height:400px;margin-top:5px;overflow-y:auto;background-color:#fcf6db;border:1px solid #e5e0c6;border-radius:4px}.curl_title{font-size:1.1em;margin:0;padding:15px 0 5px;font-family:Open Sans,Helvetica Neue,Arial,sans-serif;font-weight:500;line-height:1.1}.footer{display:none}.swagger-section .swagger-ui-wrap h2{padding:0}h2{margin:0;margin-bottom:5px}.markdown p,.swagger-section .swagger-ui-wrap .code{font-size:15px;font-family:Arvo,serif}.swagger-section .swagger-ui-wrap b{font-family:Arvo,serif}#signin:hover{cursor:pointer}.dropdown-menu{padding:15px}.navbar-right .dropdown-menu{left:0;right:auto}#signinbutton{width:100%;height:32px;font-size:13px;font-weight:700;color:#08b}.navbar-default .nav>li .details{color:#000;text-transform:none;font-size:15px;font-weight:400;font-family:Open Sans,sans-serif;font-style:italic;line-height:20px;top:-2px}.navbar-default .nav>li .details:hover{color:#000}#signout{width:100%;height:32px;font-size:13px;font-weight:700;color:#08b}
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/css/typography.css
================================================
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/index.html
================================================
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta http-equiv="x-ua-compatible" content="IE=edge">
<title>Swagger UI</title>
<link rel="icon" type="image/png" href="images/favicon-32x32.png" sizes="32x32" />
<link rel="icon" type="image/png" href="images/favicon-16x16.png" sizes="16x16" />
<link href='css/typography.css' media='screen' rel='stylesheet' type='text/css'/>
<link href='css/reset.css' media='screen' rel='stylesheet' type='text/css'/>
<link href='css/screen.css' media='screen' rel='stylesheet' type='text/css'/>
<link href='css/reset.css' media='print' rel='stylesheet' type='text/css'/>
<link href='css/print.css' media='print' rel='stylesheet' type='text/css'/>
<script src='lib/object-assign-pollyfill.js' type='text/javascript'></script>
<script src='lib/jquery-1.8.0.min.js' type='text/javascript'></script>
<script src='lib/jquery.slideto.min.js' type='text/javascript'></script>
<script src='lib/jquery.wiggle.min.js' type='text/javascript'></script>
<script src='lib/jquery.ba-bbq.min.js' type='text/javascript'></script>
<script src='lib/handlebars-4.0.5.js' type='text/javascript'></script>
<script src='lib/lodash.min.js' type='text/javascript'></script>
<script src='lib/backbone-min.js' type='text/javascript'></script>
<script src='swagger-ui.js' type='text/javascript'></script>
<script src='lib/highlight.9.1.0.pack.js' type='text/javascript'></script>
<script src='lib/highlight.9.1.0.pack_extended.js' type='text/javascript'></script>
<script src='lib/jsoneditor.min.js' type='text/javascript'></script>
<script src='lib/marked.js' type='text/javascript'></script>
<script src='lib/swagger-oauth.js' type='text/javascript'></script>
<!-- Some basic translations -->
<!-- <script src='lang/translator.js' type='text/javascript'></script> -->
<!-- <script src='lang/ru.js' type='text/javascript'></script> -->
<!-- <script src='lang/en.js' type='text/javascript'></script> -->
<script type="text/javascript">
$(function () {
var url = window.location.search.match(/url=([^&]+)/);
if (url && url.length > 1) {
url = decodeURIComponent(url[1]);
} else {
url = "/v2/api-docs";
}
hljs.configure({
highlightSizeThreshold: 5000
});
// Pre loadDto translate...
if(window.SwaggerTranslator) {
window.SwaggerTranslator.translate();
}
window.swaggerUi = new SwaggerUi({
url: url,
dom_id: "swagger-ui-container",
supportedSubmitMethods: ['get', 'post', 'put', 'delete', 'patch'],
onComplete: function(swaggerApi, swaggerUi){
if(typeof initOAuth == "function") {
initOAuth({
clientId: "your-client-id",
clientSecret: "your-client-secret-if-required",
realm: "your-realms",
appName: "your-app-name",
scopeSeparator: " ",
additionalQueryStringParams: {}
});
}
if(window.SwaggerTranslator) {
window.SwaggerTranslator.translate();
}
},
onFailure: function(data) {
log("Unable to Load SwaggerUI");
},
docExpansion: "none",
jsonEditor: false,
defaultModelRendering: 'schema',
showRequestHeaders: false,
showOperationIds: false,
apisSorter: "alpha",
operationsSorter : "method"
});
window.swaggerUi.load();
function log() {
if ('console' in window) {
console.log.apply(console, arguments);
}
}
});
</script>
</head>
<body class="swagger-section">
<div id='header'>
<div class="swagger-ui-wrap">
<a id="logo" href="http://swagger.io"><img class="logo__img" alt="swagger" height="30" width="30" src="images/logo_small.png" /><span class="logo__title">swagger</span></a>
<form id='api_selector'>
<div class='input'><input placeholder="http://example.com/api" id="input_baseUrl" name="baseUrl" type="text"/></div>
<div id='auth_container'></div>
<div class='input'><a id="explore" class="header__btn" href="#" data-sw-translate>Explore</a></div>
</form>
</div>
</div>
<div id="message-bar" class="swagger-ui-wrap" data-sw-translate> </div>
<div id="swagger-ui-container" class="swagger-ui-wrap"></div>
</body>
</html>
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/ca.js
================================================
'use strict';
/* jshint quotmark: double */
window.SwaggerTranslator.learn({
"Warning: Deprecated":"Advertència: Obsolet",
"Implementation Notes":"Notes d'implementació",
"Response Class":"Classe de la Resposta",
"Status":"Estatus",
"Parameters":"Paràmetres",
"Parameter":"Paràmetre",
"Value":"Valor",
"Description":"Descripció",
"Parameter Type":"Tipus del Paràmetre",
"Data Type":"Tipus de la Dada",
"Response Messages":"Missatges de la Resposta",
"HTTP Status Code":"Codi d'Estatus HTTP",
"Reason":"Raó",
"Response Model":"Model de la Resposta",
"Request URL":"URL de la Sol·licitud",
"Response Body":"Cos de la Resposta",
"Response Code":"Codi de la Resposta",
"Response Headers":"Capçaleres de la Resposta",
"Hide Response":"Amagar Resposta",
"Try it out!":"Prova-ho!",
"Show/Hide":"Mostrar/Amagar",
"List Operations":"Llista Operacions",
"Expand Operations":"Expandir Operacions",
"Raw":"Cru",
"can't parse JSON. Raw result":"no puc analitzar el JSON. Resultat cru",
"Example Value":"Valor d'Exemple",
"Model Schema":"Esquema del Model",
"Model":"Model",
"apply":"aplicar",
"Username":"Nom d'usuari",
"Password":"Contrasenya",
"Terms of service":"Termes del servei",
"Created by":"Creat per",
"See more at":"Veure més en",
"Contact the developer":"Contactar amb el desenvolupador",
"api version":"versió de la api",
"Response Content Type":"Tipus de Contingut de la Resposta",
"fetching resource":"recollint recurs",
"fetching resource list":"recollins llista de recursos",
"Explore":"Explorant",
"Show Swagger Petstore Example Apis":"Mostrar API d'Exemple Swagger Petstore",
"Can't read from server. It may not have the appropriate access-control-origin settings.":"No es pot llegir del servidor. Potser no teniu la configuració de control d'accés apropiada.",
"Please specify the protocol for":"Si us plau, especifiqueu el protocol per a",
"Can't read swagger JSON from":"No es pot llegir el JSON de swagger des de",
"Finished Loading Resource Information. Rendering Swagger UI":"Finalitzada la càrrega del recurs informatiu. Renderitzant Swagger UI",
"Unable to read api":"No es pot llegir l'api",
"from path":"des de la ruta",
"server returned":"el servidor ha retornat"
});
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/el.js
================================================
'use strict';
/* jshint quotmark: double */
window.SwaggerTranslator.learn({
"Warning: Deprecated":"Προειδοποίηση: Έχει αποσυρθεί",
"Implementation Notes":"Σημειώσεις Υλοποίησης",
"Response Class":"Απόκριση",
"Status":"Κατάσταση",
"Parameters":"Παράμετροι",
"Parameter":"Παράμετρος",
"Value":"Τιμή",
"Description":"Περιγραφή",
"Parameter Type":"Τύπος Παραμέτρου",
"Data Type":"Τύπος Δεδομένων",
"Response Messages":"Μηνύματα Απόκρισης",
"HTTP Status Code":"Κωδικός Κατάστασης HTTP",
"Reason":"Αιτιολογία",
"Response Model":"Μοντέλο Απόκρισης",
"Request URL":"URL Αιτήματος",
"Response Body":"Σώμα Απόκρισης",
"Response Code":"Κωδικός Απόκρισης",
"Response Headers":"Επικεφαλίδες Απόκρισης",
"Hide Response":"Απόκρυψη Απόκρισης",
"Headers":"Επικεφαλίδες",
"Try it out!":"Δοκιμάστε το!",
"Show/Hide":"Εμφάνιση/Απόκρυψη",
"List Operations":"Λίστα Λειτουργιών",
"Expand Operations":"Ανάπτυξη Λειτουργιών",
"Raw":"Ακατέργαστο",
"can't parse JSON. Raw result":"αδυναμία ανάλυσης JSON. Ακατέργαστο αποτέλεσμα",
"Example Value":"Παράδειγμα Τιμής",
"Model Schema":"Σχήμα Μοντέλου",
"Model":"Μοντέλο",
"Click to set as parameter value":"Πατήστε για να θέσετε τιμή παραμέτρου",
"apply":"εφαρμογή",
"Username":"Όνομα χρήση",
"Password":"Κωδικός πρόσβασης",
"Terms of service":"Όροι χρήσης",
"Created by":"Δημιουργήθηκε από",
"See more at":"Δείτε περισσότερα στο",
"Contact the developer":"Επικοινωνήστε με τον προγραμματιστή",
"api version":"έκδοση api",
"Response Content Type":"Τύπος Περιεχομένου Απόκρισης",
"Parameter content type:":"Τύπος περιεχομένου παραμέτρου:",
"fetching resource":"παραλαβή πόρου",
"fetching resource list":"παραλαβή λίστας πόρων",
"Explore":"Εξερεύνηση",
"Show Swagger Petstore Example Apis":"Εμφάνιση Api Δειγμάτων Petstore του Swagger",
"Can't read from server. It may not have the appropriate access-control-origin settings.":"Αδυναμία ανάγνωσης από τον εξυπηρετητή. Μπορεί να μην έχει κατάλληλες ρυθμίσεις για access-control-origin.",
"Please specify the protocol for":"Παρακαλώ προσδιορίστε το πρωτόκολλο για",
"Can't read swagger JSON from":"Αδυναμία ανάγνωσης swagger JSON από",
"Finished Loading Resource Information. Rendering Swagger UI":"Ολοκλήρωση Φόρτωσης Πληροφορικών Πόρου. Παρουσίαση Swagger UI",
"Unable to read api":"Αδυναμία ανάγνωσης api",
"from path":"από το μονοπάτι",
"server returned":"ο εξυπηρετηρής επέστρεψε"
});
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/en.js
================================================
'use strict';
/* jshint quotmark: double */
window.SwaggerTranslator.learn({
"Warning: Deprecated":"Warning: Deprecated",
"Implementation Notes":"Implementation Notes",
"Response Class":"Response Class",
"Status":"Status",
"Parameters":"Parameters",
"Parameter":"Parameter",
"Value":"Value",
"Description":"Description",
"Parameter Type":"Parameter Type",
"Data Type":"Data Type",
"Response Messages":"Response Messages",
"HTTP Status Code":"HTTP Status Code",
"Reason":"Reason",
"Response Model":"Response Model",
"Request URL":"Request URL",
"Response Body":"Response Body",
"Response Code":"Response Code",
"Response Headers":"Response Headers",
"Hide Response":"Hide Response",
"Headers":"Headers",
"Try it out!":"Try it out!",
"Show/Hide":"Show/Hide",
"List Operations":"List Operations",
"Expand Operations":"Expand Operations",
"Raw":"Raw",
"can't parse JSON. Raw result":"can't parse JSON. Raw result",
"Example Value":"Example Value",
"Model Schema":"Model Schema",
"Model":"Model",
"Click to set as parameter value":"Click to set as parameter value",
"apply":"apply",
"Username":"Username",
"Password":"Password",
"Terms of service":"Terms of service",
"Created by":"Created by",
"See more at":"See more at",
"Contact the developer":"Contact the developer",
"api version":"api version",
"Response Content Type":"Response Content Type",
"Parameter content type:":"Parameter content type:",
"fetching resource":"fetching resource",
"fetching resource list":"fetching resource list",
"Explore":"Explore",
"Show Swagger Petstore Example Apis":"Show Swagger Petstore Example Apis",
"Can't read from server. It may not have the appropriate access-control-origin settings.":"Can't read from server. It may not have the appropriate access-control-origin settings.",
"Please specify the protocol for":"Please specify the protocol for",
"Can't read swagger JSON from":"Can't read swagger JSON from",
"Finished Loading Resource Information. Rendering Swagger UI":"Finished Loading Resource Information. Rendering Swagger UI",
"Unable to read api":"Unable to read api",
"from path":"from path",
"server returned":"server returned"
});
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/es.js
================================================
'use strict';
/* jshint quotmark: double */
window.SwaggerTranslator.learn({
"Warning: Deprecated":"Advertencia: Obsoleto",
"Implementation Notes":"Notas de implementación",
"Response Class":"Clase de la Respuesta",
"Status":"Status",
"Parameters":"Parámetros",
"Parameter":"Parámetro",
"Value":"Valor",
"Description":"Descripción",
"Parameter Type":"Tipo del Parámetro",
"Data Type":"Tipo del Dato",
"Response Messages":"Mensajes de la Respuesta",
"HTTP Status Code":"Código de Status HTTP",
"Reason":"Razón",
"Response Model":"Modelo de la Respuesta",
"Request URL":"URL de la Solicitud",
"Response Body":"Cuerpo de la Respuesta",
"Response Code":"Código de la Respuesta",
"Response Headers":"Encabezados de la Respuesta",
"Hide Response":"Ocultar Respuesta",
"Try it out!":"Pruébalo!",
"Show/Hide":"Mostrar/Ocultar",
"List Operations":"Listar Operaciones",
"Expand Operations":"Expandir Operaciones",
"Raw":"Crudo",
"can't parse JSON. Raw result":"no puede parsear el JSON. Resultado crudo",
"Example Value":"Valor de Ejemplo",
"Model Schema":"Esquema del Modelo",
"Model":"Modelo",
"apply":"aplicar",
"Username":"Nombre de usuario",
"Password":"Contraseña",
"Terms of service":"Términos de Servicio",
"Created by":"Creado por",
"See more at":"Ver más en",
"Contact the developer":"Contactar al desarrollador",
"api version":"versión de la api",
"Response Content Type":"Tipo de Contenido (Content Type) de la Respuesta",
"fetching resource":"buscando recurso",
"fetching resource list":"buscando lista del recurso",
"Explore":"Explorar",
"Show Swagger Petstore Example Apis":"Mostrar Api Ejemplo de Swagger Petstore",
"Can't read from server. It may not have the appropriate access-control-origin settings.":"No se puede leer del servidor. Tal vez no tiene la configuración de control de acceso de origen (access-control-origin) apropiado.",
"Please specify the protocol for":"Por favor, especificar el protocola para",
"Can't read swagger JSON from":"No se puede leer el JSON de swagger desde",
"Finished Loading Resource Information. Rendering Swagger UI":"Finalizada la carga del recurso de Información. Mostrando Swagger UI",
"Unable to read api":"No se puede leer la api",
"from path":"desde ruta",
"server returned":"el servidor retornó"
});
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/fr.js
================================================
'use strict';
/* jshint quotmark: double */
window.SwaggerTranslator.learn({
"Warning: Deprecated":"Avertissement : Obsolète",
"Implementation Notes":"Notes d'implémentation",
"Response Class":"Classe de la réponse",
"Status":"Statut",
"Parameters":"Paramètres",
"Parameter":"Paramètre",
"Value":"Valeur",
"Description":"Description",
"Parameter Type":"Type du paramètre",
"Data Type":"Type de données",
"Response Messages":"Messages de la réponse",
"HTTP Status Code":"Code de statut HTTP",
"Reason":"Raison",
"Response Model":"Modèle de réponse",
"Request URL":"URL appelée",
"Response Body":"Corps de la réponse",
"Response Code":"Code de la réponse",
"Response Headers":"En-têtes de la réponse",
"Hide Response":"Cacher la réponse",
"Headers":"En-têtes",
"Try it out!":"Testez !",
"Show/Hide":"Afficher/Masquer",
"List Operations":"Liste des opérations",
"Expand Operations":"Développer les opérations",
"Raw":"Brut",
"can't parse JSON. Raw result":"impossible de décoder le JSON. Résultat brut",
"Example Value":"Exemple la valeur",
"Model Schema":"Définition du modèle",
"Model":"Modèle",
"apply":"appliquer",
"Username":"Nom d'utilisateur",
"Password":"Mot de passe",
"Terms of service":"Conditions de service",
"Created by":"Créé par",
"See more at":"Voir plus sur",
"Contact the developer":"Contacter le développeur",
"api version":"version de l'api",
"Response Content Type":"Content Type de la réponse",
"fetching resource":"récupération de la ressource",
"fetching resource list":"récupération de la liste de ressources",
"Explore":"Explorer",
"Show Swagger Petstore Example Apis":"Montrer les Apis de l'exemple Petstore de Swagger",
"Can't read from server. It may not have the appropriate access-control-origin settings.":"Impossible de lire à partir du serveur. Il se peut que les réglages access-control-origin ne soient pas appropriés.",
"Please specify the protocol for":"Veuillez spécifier un protocole pour",
"Can't read swagger JSON from":"Impossible de lire le JSON swagger à partir de",
"Finished Loading Resource Information. Rendering Swagger UI":"Chargement des informations terminé. Affichage de Swagger UI",
"Unable to read api":"Impossible de lire l'api",
"from path":"à partir du chemin",
"server returned":"réponse du serveur"
});
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/geo.js
================================================
'use strict';
/* jshint quotmark: double */
window.SwaggerTranslator.learn({
"Warning: Deprecated":"ყურადღება: აღარ გამოიყენება",
"Implementation Notes":"იმპლემენტაციის აღწერა",
"Response Class":"რესპონს კლასი",
"Status":"სტატუსი",
"Parameters":"პარამეტრები",
"Parameter":"პარამეტრი",
"Value":"მნიშვნელობა",
"Description":"აღწერა",
"Parameter Type":"პარამეტრის ტიპი",
"Data Type":"მონაცემის ტიპი",
"Response Messages":"პასუხი",
"HTTP Status Code":"HTTP სტატუსი",
"Reason":"მიზეზი",
"Response Model":"რესპონს მოდელი",
"Request URL":"მოთხოვნის URL",
"Response Body":"პასუხის სხეული",
"Response Code":"პასუხის კოდი",
"Response Headers":"პასუხის ჰედერები",
"Hide Response":"დამალე პასუხი",
"Headers":"ჰედერები",
"Try it out!":"ცადე !",
"Show/Hide":"გამოჩენა/დამალვა",
"List Operations":"ოპერაციების სია",
"Expand Operations":"ოპერაციები ვრცლად",
"Raw":"ნედლი",
"can't parse JSON. Raw result":"JSON-ის დამუშავება ვერ მოხერხდა. ნედლი პასუხი",
"Example Value":"მაგალითი",
"Model Schema":"მოდელის სტრუქტურა",
"Model":"მოდელი",
"Click to set as parameter value":"პარამეტრისთვის მნიშვნელობის მისანიჭებლად, დააკლიკე",
"apply":"გამოყენება",
"Username":"მოხმარებელი",
"Password":"პაროლი",
"Terms of service":"მომსახურების პირობები",
"Created by":"შექმნა",
"See more at":"ნახე ვრცლად",
"Contact the developer":"დაუკავშირდი დეველოპერს",
"api version":"api ვერსია",
"Response Content Type":"პასუხის კონტენტის ტიპი",
"Parameter content type:":"პარამეტრის კონტენტის ტიპი:",
"fetching resource":"რესურსების მიღება",
"fetching resource list":"რესურსების სიის მიღება",
"Explore":"ნახვა",
"Show Swagger Petstore Example Apis":"ნახე Swagger Petstore სამაგალითო Api",
"Can't read from server. It may not have the appropriate access-control-origin settings.":"სერვერთან დაკავშირება ვერ ხერხდება. შეამოწმეთ access-control-origin.",
"Please specify the protocol for":"მიუთითეთ პროტოკოლი",
"Can't read swagger JSON from":"swagger JSON წაკითხვა ვერ მოხერხდა",
"Finished Loading Resource Information. Rendering Swagger UI":"რესურსების ჩატვირთვა სრულდება. Swagger UI რენდერდება",
"Unable to read api":"api წაკითხვა ვერ მოხერხდა",
"from path":"მისამართიდან",
"server returned":"სერვერმა დააბრუნა"
});
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/it.js
================================================
'use strict';
/* jshint quotmark: double */
window.SwaggerTranslator.learn({
"Warning: Deprecated":"Attenzione: Deprecato",
"Implementation Notes":"Note di implementazione",
"Response Class":"Classe della risposta",
"Status":"Stato",
"Parameters":"Parametri",
"Parameter":"Parametro",
"Value":"Valore",
"Description":"Descrizione",
"Parameter Type":"Tipo di parametro",
"Data Type":"Tipo di dato",
"Response Messages":"Messaggi della risposta",
"HTTP Status Code":"Codice stato HTTP",
"Reason":"Motivo",
"Response Model":"Modello di risposta",
"Request URL":"URL della richiesta",
"Response Body":"Corpo della risposta",
"Response Code":"Oggetto della risposta",
"Response Headers":"Intestazioni della risposta",
"Hide Response":"Nascondi risposta",
"Try it out!":"Provalo!",
"Show/Hide":"Mostra/Nascondi",
"List Operations":"Mostra operazioni",
"Expand Operations":"Espandi operazioni",
"Raw":"Grezzo (raw)",
"can't parse JSON. Raw result":"non è possibile parsare il JSON. Risultato grezzo (raw).",
"Model Schema":"Schema del modello",
"Model":"Modello",
"apply":"applica",
"Username":"Nome utente",
"Password":"Password",
"Terms of service":"Condizioni del servizio",
"Created by":"Creato da",
"See more at":"Informazioni aggiuntive:",
"Contact the developer":"Contatta lo sviluppatore",
"api version":"versione api",
"Response Content Type":"Tipo di contenuto (content type) della risposta",
"fetching resource":"recuperando la risorsa",
"fetching resource list":"recuperando lista risorse",
"Explore":"Esplora",
"Show Swagger Petstore Example Apis":"Mostra le api di esempio di Swagger Petstore",
"Can't read from server. It may not have the appropriate access-control-origin settings.":"Non è possibile leggere dal server. Potrebbe non avere le impostazioni di controllo accesso origine (access-control-origin) appropriate.",
"Please specify the protocol for":"Si prega di specificare il protocollo per",
"Can't read swagger JSON from":"Impossibile leggere JSON swagger da:",
"Finished Loading Resource Information. Rendering Swagger UI":"Lettura informazioni risorse termianta. Swagger UI viene mostrata",
"Unable to read api":"Impossibile leggere la api",
"from path":"da cartella",
"server returned":"il server ha restituito"
});
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/ja.js
================================================
'use strict';
/* jshint quotmark: double */
window.SwaggerTranslator.learn({
"Warning: Deprecated":"警告: 廃止予定",
"Implementation Notes":"実装メモ",
"Response Class":"レスポンスクラス",
"Status":"ステータス",
"Parameters":"パラメータ群",
"Parameter":"パラメータ",
"Value":"値",
"Description":"説明",
"Parameter Type":"パラメータタイプ",
"Data Type":"データタイプ",
"Response Messages":"レスポンスメッセージ",
"HTTP Status Code":"HTTPステータスコード",
"Reason":"理由",
"Response Model":"レスポンスモデル",
"Request URL":"リクエストURL",
"Response Body":"レスポンスボディ",
"Response Code":"レスポンスコード",
"Response Headers":"レスポンスヘッダ",
"Hide Response":"レスポンスを隠す",
"Headers":"ヘッダ",
"Try it out!":"実際に実行!",
"Show/Hide":"表示/非表示",
"List Operations":"操作一覧",
"Expand Operations":"操作の展開",
"Raw":"未加工",
"can't parse JSON. Raw result":"JSONへ解釈できません. 未加工の結果",
"Example Value":"値の例",
"Model Schema":"モデルスキーマ",
"Model":"モデル",
"Click to set as parameter value":"パラメータ値と設定するにはクリック",
"apply":"実行",
"Username":"ユーザ名",
"Password":"パスワード",
"Terms of service":"サービス利用規約",
"Created by":"Created by",
"See more at":"詳細を見る",
"Contact the developer":"開発者に連絡",
"api version":"APIバージョン",
"Response Content Type":"レスポンス コンテンツタイプ",
"Parameter content type:":"パラメータコンテンツタイプ:",
"fetching resource":"リソースの取得",
"fetching resource list":"リソース一覧の取得",
"Explore":"調査",
"Show Swagger Petstore Example Apis":"SwaggerペットストアAPIの表示",
"Can't read from server. It may not have the appropriate access-control-origin settings.":"サーバから読み込めません. 適切なaccess-control-origin設定を持っていない可能性があります.",
"Please specify the protocol for":"プロトコルを指定してください",
"Can't read swagger JSON from":"次からswagger JSONを読み込めません",
"Finished Loading Resource Information. Rendering Swagger UI":"リソース情報の読み込みが完了しました. Swagger UIを描画しています",
"Unable to read api":"APIを読み込めません",
"from path":"次のパスから",
"server returned":"サーバからの返答"
});
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/ko-kr.js
================================================
'use strict';
/* jshint quotmark: double */
window.SwaggerTranslator.learn({
"Warning: Deprecated":"경고:폐기예정됨",
"Implementation Notes":"구현 노트",
"Response Class":"응답 클래스",
"Status":"상태",
"Parameters":"매개변수들",
"Parameter":"매개변수",
"Value":"값",
"Description":"설명",
"Parameter Type":"매개변수 타입",
"Data Type":"데이터 타입",
"Response Messages":"응답 메세지",
"HTTP Status Code":"HTTP 상태 코드",
"Reason":"원인",
"Response Model":"응답 모델",
"Request URL":"요청 URL",
"Response Body":"응답 본문",
"Response Code":"응답 코드",
"Response Headers":"응답 헤더",
"Hide Response":"응답 숨기기",
"Headers":"헤더",
"Try it out!":"써보기!",
"Show/Hide":"보이기/숨기기",
"List Operations":"목록 작업",
"Expand Operations":"전개 작업",
"Raw":"원본",
"can't parse JSON. Raw result":"JSON을 파싱할수 없음. 원본결과:",
"Model Schema":"모델 스키마",
"Model":"모델",
"apply":"적용",
"Username":"사용자 이름",
"Password":"암호",
"Terms of service":"이용약관",
"Created by":"작성자",
"See more at":"추가정보:",
"Contact the developer":"개발자에게 문의",
"api version":"api버전",
"Response Content Type":"응답Content Type",
"fetching resource":"리소스 가져오기",
"fetching resource list":"리소스 목록 가져오기",
"Explore":"탐색",
"Show Swagger Petstore Example Apis":"Swagger Petstore 예제 보기",
"Can't read from server. It may not have the appropriate access-control-origin settings.":"서버로부터 읽어들일수 없습니다. access-control-origin 설정이 올바르지 않을수 있습니다.",
"Please specify the protocol for":"다음을 위한 프로토콜을 정하세요",
"Can't read swagger JSON from":"swagger JSON 을 다음으로 부터 읽을수 없습니다",
"Finished Loading Resource Information. Rendering Swagger UI":"리소스 정보 불러오기 완료. Swagger UI 랜더링",
"Unable to read api":"api를 읽을 수 없습니다.",
"from path":"다음 경로로 부터",
"server returned":"서버 응답함."
});
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/pl.js
================================================
'use strict';
/* jshint quotmark: double */
window.SwaggerTranslator.learn({
"Warning: Deprecated":"Uwaga: Wycofane",
"Implementation Notes":"Uwagi Implementacji",
"Response Class":"Klasa Odpowiedzi",
"Status":"Status",
"Parameters":"Parametry",
"Parameter":"Parametr",
"Value":"Wartość",
"Description":"Opis",
"Parameter Type":"Typ Parametru",
"Data Type":"Typ Danych",
"Response Messages":"Wiadomości Odpowiedzi",
"HTTP Status Code":"Kod Statusu HTTP",
"Reason":"Przyczyna",
"Response Model":"Model Odpowiedzi",
"Request URL":"URL Wywołania",
"Response Body":"Treść Odpowiedzi",
"Response Code":"Kod Odpowiedzi",
"Response Headers":"Nagłówki Odpowiedzi",
"Hide Response":"Ukryj Odpowiedź",
"Headers":"Nagłówki",
"Try it out!":"Wypróbuj!",
"Show/Hide":"Pokaż/Ukryj",
"List Operations":"Lista Operacji",
"Expand Operations":"Rozwiń Operacje",
"Raw":"Nieprzetworzone",
"can't parse JSON. Raw result":"nie można przetworzyć pliku JSON. Nieprzetworzone dane",
"Model Schema":"Schemat Modelu",
"Model":"Model",
"apply":"użyj",
"Username":"Nazwa użytkownika",
"Password":"Hasło",
"Terms of service":"Warunki używania",
"Created by":"Utworzone przez",
"See more at":"Zobacz więcej na",
"Contact the developer":"Kontakt z deweloperem",
"api version":"wersja api",
"Response Content Type":"Typ Zasobu Odpowiedzi",
"fetching resource":"ładowanie zasobu",
"fetching resource list":"ładowanie listy zasobów",
"Explore":"Eksploruj",
"Show Swagger Petstore Example Apis":"Pokaż Przykładowe Api Swagger Petstore",
"Can't read from server. It may not have the appropriate access-control-origin settings.":"Brak połączenia z serwerem. Może on nie mieć odpowiednich ustawień access-control-origin.",
"Please specify the protocol for":"Proszę podać protokół dla",
"Can't read swagger JSON from":"Nie można odczytać swagger JSON z",
"Finished Loading Resource Information. Rendering Swagger UI":"Ukończono Ładowanie Informacji o Zasobie. Renderowanie Swagger UI",
"Unable to read api":"Nie można odczytać api",
"from path":"ze ścieżki",
"server returned":"serwer zwrócił"
});
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/pt.js
================================================
'use strict';
/* jshint quotmark: double */
window.SwaggerTranslator.learn({
"Warning: Deprecated":"Aviso: Depreciado",
"Implementation Notes":"Notas de Implementação",
"Response Class":"Classe de resposta",
"Status":"Status",
"Parameters":"Parâmetros",
"Parameter":"Parâmetro",
"Value":"Valor",
"Description":"Descrição",
"Parameter Type":"Tipo de parâmetro",
"Data Type":"Tipo de dados",
"Response Messages":"Mensagens de resposta",
"HTTP Status Code":"Código de status HTTP",
"Reason":"Razão",
"Response Model":"Modelo resposta",
"Request URL":"URL requisição",
"Response Body":"Corpo da resposta",
"Response Code":"Código da resposta",
"Response Headers":"Cabeçalho da resposta",
"Headers":"Cabeçalhos",
"Hide Response":"Esconder resposta",
"Try it out!":"Tente agora!",
"Show/Hide":"Mostrar/Esconder",
"List Operations":"Listar operações",
"Expand Operations":"Expandir operações",
"Raw":"Cru",
"can't parse JSON. Raw result":"Falha ao analisar JSON. Resulto cru",
"Model Schema":"Modelo esquema",
"Model":"Modelo",
"apply":"Aplicar",
"Username":"Usuário",
"Password":"Senha",
"Terms of service":"Termos do serviço",
"Created by":"Criado por",
"See more at":"Veja mais em",
"Contact the developer":"Contate o desenvolvedor",
"api version":"Versão api",
"Response Content Type":"Tipo de conteúdo da resposta",
"fetching resource":"busca recurso",
"fetching resource list":"buscando lista de recursos",
"Explore":"Explorar",
"Show Swagger Petstore Example Apis":"Show Swagger Petstore Example Apis",
"Can't read from server. It may not have the appropriate access-control-origin settings.":"Não é possível ler do servidor. Pode não ter as apropriadas configurações access-control-origin",
"Please specify the protocol for":"Por favor especifique o protocolo",
"Can't read swagger JSON from":"Não é possível ler o JSON Swagger de",
"Finished Loading Resource Information. Rendering Swagger UI":"Carregar informação de recurso finalizada. Renderizando Swagger UI",
"Unable to read api":"Não foi possível ler api",
"from path":"do caminho",
"server returned":"servidor retornou"
});
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/ru.js
================================================
'use strict';
/* jshint quotmark: double */
window.SwaggerTranslator.learn({
"Warning: Deprecated":"Предупреждение: Устарело",
"Implementation Notes":"Заметки",
"Response Class":"Пример ответа",
"Status":"Статус",
"Parameters":"Параметры",
"Parameter":"Параметр",
"Value":"Значение",
"Description":"Описание",
"Parameter Type":"Тип параметра",
"Data Type":"Тип данных",
"HTTP Status Code":"HTTP код",
"Reason":"Причина",
"Response Model":"Структура ответа",
"Request URL":"URL запроса",
"Response Body":"Тело ответа",
"Response Code":"HTTP код ответа",
"Response Headers":"Заголовки ответа",
"Hide Response":"Спрятать ответ",
"Headers":"Заголовки",
"Response Messages":"Что может прийти в ответ",
"Try it out!":"Попробовать!",
"Show/Hide":"Показать/Скрыть",
"List Operations":"Операции кратко",
"Expand Operations":"Операции подробно",
"Raw":"В сыром виде",
"can't parse JSON. Raw result":"Не удается распарсить ответ:",
"Example Value":"Пример",
"Model Schema":"Структура",
"Model":"Описание",
"Click to set as parameter value":"Нажмите, чтобы испльзовать в качестве значения параметра",
"apply":"применить",
"Username":"Имя пользователя",
"Password":"Пароль",
"Terms of service":"Условия использования",
"Created by":"Разработано",
"See more at":"Еще тут",
"Contact the developer":"Связаться с разработчиком",
"api version":"Версия API",
"Response Content Type":"Content Type ответа",
"Parameter content type:":"Content Type параметра:",
"fetching resource":"Получение ресурса",
"fetching resource list":"Получение ресурсов",
"Explore":"Показать",
"Show Swagger Petstore Example Apis":"Показать примеры АПИ",
"Can't read from server. It may not have the appropriate access-control-origin settings.":"Не удается получить ответ от сервера. Возможно, проблема с настройками доступа",
"Please specify the protocol for":"Пожалуйста, укажите протокол для",
"Can't read swagger JSON from":"Не получается прочитать swagger json из",
"Finished Loading Resource Information. Rendering Swagger UI":"Загрузка информации о ресурсах завершена. Рендерим",
"Unable to read api":"Не удалось прочитать api",
"from path":"по адресу",
"server returned":"сервер сказал"
});
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/tr.js
================================================
'use strict';
/* jshint quotmark: double */
window.SwaggerTranslator.learn({
"Warning: Deprecated":"Uyarı: Deprecated",
"Implementation Notes":"Gerçekleştirim Notları",
"Response Class":"Dönen Sınıf",
"Status":"Statü",
"Parameters":"Parametreler",
"Parameter":"Parametre",
"Value":"Değer",
"Description":"Açıklama",
"Parameter Type":"Parametre Tipi",
"Data Type":"Veri Tipi",
"Response Messages":"Dönüş Mesajı",
"HTTP Status Code":"HTTP Statü Kodu",
"Reason":"Gerekçe",
"Response Model":"Dönüş Modeli",
"Request URL":"İstek URL",
"Response Body":"Dönüş İçeriği",
"Response Code":"Dönüş Kodu",
"Response Headers":"Dönüş Üst Bilgileri",
"Hide Response":"Dönüşü Gizle",
"Headers":"Üst Bilgiler",
"Try it out!":"Dene!",
"Show/Hide":"Göster/Gizle",
"List Operations":"Operasyonları Listele",
"Expand Operations":"Operasyonları Aç",
"Raw":"Ham",
"can't parse JSON. Raw result":"JSON çözümlenemiyor. Ham sonuç",
"Model Schema":"Model Şema",
"Model":"Model",
"apply":"uygula",
"Username":"Kullanıcı Adı",
"Password":"Parola",
"Terms of service":"Servis şartları",
"Created by":"Oluşturan",
"See more at":"Daha fazlası için",
"Contact the developer":"Geliştirici ile İletişime Geçin",
"api version":"api versiyon",
"Response Content Type":"Dönüş İçerik Tipi",
"fetching resource":"kaynak getiriliyor",
"fetching resource list":"kaynak listesi getiriliyor",
"Explore":"Keşfet",
"Show Swagger Petstore Example Apis":"Swagger Petstore Örnek Api'yi Gör",
"Can't read from server. It may not have the appropriate access-control-origin settings.":"Sunucudan okuma yapılamıyor. Sunucu access-control-origin ayarlarınızı kontrol edin.",
"Please specify the protocol for":"Lütfen istenen adres için protokol belirtiniz",
"Can't read swagger JSON from":"Swagger JSON bu kaynaktan okunamıyor",
"Finished Loading Resource Information. Rendering Swagger UI":"Kaynak baglantısı tamamlandı. Swagger UI gösterime hazırlanıyor",
"Unable to read api":"api okunamadı",
"from path":"yoldan",
"server returned":"sunucuya dönüldü"
});
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/translator.js
================================================
'use strict';
/**
* Translator for documentation pages.
*
* To enable translation you should include one of language-files in your index.html
* after <script src='lang/translator.js' type='text/javascript'></script>.
* For example - <script src='lang/ru.js' type='text/javascript'></script>
*
* If you wish to translate some new texts you should do two things:
* 1. Add a new phrase pair ("New Phrase": "New Translation") into your language file (for example lang/ru.js). It will be great if you add it in other language files too.
* 2. Mark that text it templates this way <anyHtmlTag data-sw-translate>New Phrase</anyHtmlTag> or <anyHtmlTag data-sw-translate value='New Phrase'/>.
* The main thing here is attribute data-sw-translate. Only inner html, title-attribute and value-attribute are going to translate.
*
*/
window.SwaggerTranslator = {
_words:[],
translate: function(sel) {
var $this = this;
sel = sel || '[data-sw-translate]';
$(sel).each(function() {
$(this).html($this._tryTranslate($(this).html()));
$(this).val($this._tryTranslate($(this).val()));
$(this).attr('title', $this._tryTranslate($(this).attr('title')));
});
},
_tryTranslate: function(word) {
return this._words[$.trim(word)] !== undefined ? this._words[$.trim(word)] : word;
},
learn: function(wordsMap) {
this._words = wordsMap;
}
};
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lang/zh-cn.js
================================================
'use strict';
/* jshint quotmark: double */
window.SwaggerTranslator.learn({
"Warning: Deprecated":"警告:已过时",
"Implementation Notes":"实现备注",
"Response Class":"响应类",
"Status":"状态",
"Parameters":"参数",
"Parameter":"参数",
"Value":"值",
"Description":"描述",
"Parameter Type":"参数类型",
"Data Type":"数据类型",
"Response Messages":"响应消息",
"HTTP Status Code":"HTTP状态码",
"Reason":"原因",
"Response Model":"响应模型",
"Request URL":"请求URL",
"Response Body":"响应体",
"Response Code":"响应码",
"Response Headers":"响应头",
"Hide Response":"隐藏响应",
"Headers":"头",
"Try it out!":"试一下!",
"Show/Hide":"显示/隐藏",
"List Operations":"显示操作",
"Expand Operations":"展开操作",
"Raw":"原始",
"can't parse JSON. Raw result":"无法解析JSON. 原始结果",
"Example Value":"示例",
"Click to set as parameter value":"点击设置参数",
"Model Schema":"模型架构",
"Model":"模型",
"apply":"应用",
"Username":"用户名",
"Password":"密码",
"Terms of service":"服务条款",
"Created by":"创建者",
"See more at":"查看更多:",
"Contact the developer":"联系开发者",
"api version":"api版本",
"Response Content Type":"响应Content Type",
"Parameter content type:":"参数类型:",
"fetching resource":"正在获取资源",
"fetching resource list":"正在获取资源列表",
"Explore":"浏览",
"Show Swagger Petstore Example Apis":"显示 Swagger Petstore 示例 Apis",
"Can't read from server. It may not have the appropriate access-control-origin settings.":"无法从服务器读取。可能没有正确设置access-control-origin。",
"Please specify the protocol for":"请指定协议:",
"Can't read swagger JSON from":"无法读取swagger JSON于",
"Finished Loading Resource Information. Rendering Swagger UI":"已加载资源信息。正在渲染Swagger UI",
"Unable to read api":"无法读取api",
"from path":"从路径",
"server returned":"服务器返回"
});
================================================
FILE: chapter02 -- boot/src/main/webapp/swagger/lib/backbone-min.js
================================================
!function(t,e){if("function"==typeof define&&define.amd)define(["underscore","jquery","exports"],function(i,n,s){t.Backbone=e(t,s,i,n)});else if("undefined"!=typeof exports){var i=require("underscore");e(t,exports,i)}else t.Backbone=e(t,{},t._,t.jQuery||t.Zepto||t.ender||t.$)}(this,function(t,e,i,n){var s=t.Backbone,r=[],a=(r.push,r.slice);r.splice;e.VERSION="1.1.2",e.$=n,e.noConflict=function(){return t.Backbone=s,this},e.emulateHTTP=!1,e.emulateJSON=!1;var o=e.Events={on:function(t,e,i){if(!c(this,"on",t,[e,i])||!e)return this;this._events||(this._events={});var n=this._events[t]||(this._events[t]=[]);return n.push({callback:e,context:i,ctx:i||this}),this},once:function(t,e,n){if(!c(this,"once",t,[e,n])||!e)return this;var s=this,r=i.once(function(){s.off(t,r),e.apply(this,arguments)});return r._callback=e,this.on(t,r,n)},off:function(t,e,n){var s,r,a,o,h,u,l,d;if(!this._events||!c(this,"off",t,[e,n]))return this;if(!t&&!e&&!n)return this._events=void 0,this;for(o=t?[t]:i.keys(this._events),h=0,u=o.length;h<u;h++)if(t=o[h],a=this._events[t]){if(this._events[t]=s=[],e||n)for(l=0,d=a.length;l<d;l++)r=a[l],(e&&e!==r.callback&&e!==r.callback._callback||n&&n!==r.context)&&s.push(r);s.length||delete this._events[t]}return this},trigger:function(t){if(!this._events)return this;var e=a.call(arguments,1);if(!c(this,"trigger",t,e))return this;var i=this._events[t],n=this._events.all;return i&&u(i,e),n&&u(n,arguments),this},stopListening:function(t,e,n){var s=this._listeningTo;if(!s)return this;var r=!e&&!n;n||"object"!=typeof e||(n=this),t&&((s={})[t._listenId]=t);for(var a in s)t=s[a],t.off(e,n,this),(r||i.isEmpty(t._events))&&delete this._listeningTo[a];return this}},h=/\s+/,c=function(t,e,i,n){if(!i)return!0;if("object"==typeof i){for(var s in i)t[e].apply(t,[s,i[s]].concat(n));return!1}if(h.test(i)){for(var r=i.split(h),a=0,o=r.length;a<o;a++)t[e].apply(t,[r[a]].concat(n));return!1}return!0},u=function(t,e){var i,n=-1,s=t.length,r=e[0],a=e[1],o=e[2];switch(e.length){case 0:for(;++n<s;)(i=t[n]).callback.call(i.ctx);return;case 1:for(;++n<s;)(i=t[n]).callback.call(i.ctx,r);return;case 2:for(;++n<s;)(i=t[n]).callback.call(i.ctx,r,a);return;case 3:for(;++n<s;)(i=t[n]).callback.call(i.ctx,r,a,o);return;default:for(;++n<s;)(i=t[n]).callback.apply(i.ctx,e);return}},l={listenTo:"on",listenToOnce:"once"};i.each(l,function(t,e){o[e]=function(e,n,s){var r=this._listeningTo||(this._listeningTo={}),a=e._listenId||(e._listenId=i.uniqueId("l"));return r[a]=e,s||"object"!=typeof n||(s=this),e[t](n,s,this),this}}),o.bind=o.on,o.unbind=o.off,i.extend(e,o);var d=e.Model=function(t,e){var n=t||{};e||(e={}),this.cid=i.uniqueId("c"),this.attributes={},e.collection&&(this.collection=e.collection),e.parse&&(n=this.parse(n,e)||{}),n=i.defaults({},n,i.result(this,"defaults")),this.set(n,e),this.changed={},this.initialize.apply(this,arguments)};i.extend(d.prototype,o,{changed:null,validationError:null,idAttribute:"id",initialize:function(){},toJSON:function(t){return i.clone(this.attributes)},sync:function(){return e.sync.apply(this,arguments)},get:function(t){return this.attributes[t]},escape:function(t){return i.escape(this.get(t))},has:function(t){return null!=this.get(t)},set:function(t,e,n){var s,r,a,o,h,c,u,l;if(null==t)return this;if("object"==typeof t?(r=t,n=e):(r={})[t]=e,n||(n={}),!this._validate(r,n))return!1;a=n.unset,h=n.silent,o=[],c=this._changing,this._changing=!0,c||(this._previousAttributes=i.clone(this.attributes),this.changed={}),l=this.attributes,u=this._previousAttributes,this.idAttribute in r&&(this.id=r[this.idAttribute]);for(s in r)e=r[s],i.isEqual(l[s],e)||o.push(s),i.isEqual(u[s],e)?delete this.changed[s]:this.changed[s]=e,a?delete l[s]:l[s]=e;if(!h){o.length&&(this._pending=n);for(var d=0,f=o.length;d<f;d++)this.trigger("change:"+o[d],this,l[o[d]],n)}if(c)return this;if(!h)for(;this._pending;)n=this._pending,this._pending=!1,this.trigger("change",this,n);return this._pending=!1,this._changing=!1,this},unset:function(t,e){return this.set(t,void 0,i.extend({},e,{unset:!0}))},clear:function(t){var e={};for(var n in this.attributes)e[n]=void 0;return this.set(e,i.extend({},t,{unset:!0}))},hasChanged:function(t){return null==t?!i.isEmpty(this.changed):i.has(this.changed,t)},changedAttributes:function(t){if(!t)return!!this.hasChanged()&&i.clone(this.changed);var e,n=!1,s=this._changing?this._previousAttributes:this.attributes;for(var r in t)i.isEqual(s[r],e=t[r])||((n||(n={}))[r]=e);return n},previous:function(t){return null!=t&&this._previousAttributes?this._previousAttributes[t]:null},previousAttributes:function(){return i.clone(this._previousAttributes)},fetch:function(t){t=t?i.clone(t):{},void 0===t.parse&&(t.parse=!0);var e=this,n=t.success;return t.success=function(i){return!!e.set(e.parse(i,t),t)&&(n&&n(e,i,t),void e.trigger("sync",e,i,t))},U(this,t),this.sync("read",this,t)},save:function(t,e,n){var s,r,a,o=this.attributes;if(null==t||"object"==typeof t?(s=t,n=e):(s={})[t]=e,n=i.extend({validate:!0},n),s&&!n.wait){if(!this.set(s,n))return!1}else if(!this._validate(s,n))return!1;s&&n.wait&&(this.attributes=i.extend({},o,s)),void 0===n.parse&&(n.parse=!0);var h=this,c=n.success;return n.success=function(t){h.attributes=o;var e=h.parse(t,n);return n.wait&&(e=i.extend(s||{},e)),!(i.isObject(e)&&!h.set(e,n))&&(c&&c(h,t,n),void h.trigger("sync",h,t,n))},U(this,n),r=this.isNew()?"create":n.patch?"patch":"update","patch"===r&&(n.attrs=s),a=this.sync(r,this,n),s&&n.wait&&(this.attributes=o),a},destroy:function(t){t=t?i.clone(t):{};var e=this,n=t.success,s=function(){e.trigger("destroy",e,e.collection,t)};if(t.success=function(i){(t.wait||e.isNew())&&s(),n&&n(e,i,t),e.isNew()||e.trigger("sync",e,i,t)},this.isNew())return t.success(),!1;U(this,t);var r=this.sync("delete",this,t);return t.wait||s(),r},url:function(){var t=i.result(this,"urlRoot")||i.result(this.collection,"url")||j();return this.isNew()?t:t.replace(/([^\/])$/,"$1/")+encodeURIComponent(this.id)},parse:function(t,e){return t},clone:function(){return new this.constructor(this.attributes)},isNew:function(){return!this.has(this.idAttribute)},isValid:function(t){return this._validate({},i.extend(t||{},{validate:!0}))},_validate:function(t,e){if(!e.validate||!this.validate)return!0;t=i.extend({},this.attributes,t);var n=this.validationError=this.validate(t,e)||null;return!n||(this.trigger("invalid",this,n,i.extend(e,{validationError:n})),!1)}});var f=["keys","values","pairs","invert","pick","omit"];i.each(f,function(t){d.prototype[t]=function(){var e=a.call(arguments);return e.unshift(this.attributes),i[t].apply(i,e)}});var p=e.Collection=function(t,e){e||(e={}),e.model&&(this.model=e.model),void 0!==e.comparator&&(this.comparator=e.comparator),this._reset(),this.initialize.apply(this,arguments),t&&this.reset(t,i.extend({silent:!0},e))},g={add:!0,remove:!0,merge:!0},v={add:!0,remove:!1};i.extend(p.prototype,o,{model:d,initialize:function(){},toJSON:function(t){return this.map(function(e){return e.toJSON(t)})},sync:function(){return e.sync.apply(this,arguments)},add:function(t,e){return this.set(t,i.extend({merge:!1},e,v))},remove:function(t,e){var n=!i.isArray(t);t=n?[t]:i.clone(t),e||(e={});var s,r,a,o;for(s=0,r=t.length;s<r;s++)o=t[s]=this.get(t[s]),o&&(delete this._byId[o.id],delete this._byId[o.cid],a=this.indexOf(o),this.models.splice(a,1),this.length--,e.silent||(e.index=a,o.trigger("remove",o,this,e)),this._removeReference(o,e));return n?t[0]:t},set:function(t,e){e=i.defaults({},e,g),e.parse&&(t=this.parse(t,e));var n=!i.isArray(t);t=n?t?[t]:[]:i.clone(t);var s,r,a,o,h,c,u,l=e.at,f=this.model,p=this.comparator&&null==l&&e.sort!==!1,v=i.isString(this.comparator)?this.comparator:null,m=[],y=[],_={},b=e.add,w=e.merge,x=e.remove,E=!(p||!b||!x)&&[];for(s=0,r=t.length;s<r;s++){if(h=t[s]||{},a=h instanceof d?o=h:h[f.prototype.idAttribute||"id"],c=this.get(a))x&&(_[c.cid]=!0),w&&(h=h===o?o.attributes:h,e.parse&&(h=c.parse(h,e)),c.set(h,e),p&&!u&&c.hasChanged(v)&&(u=!0)),t[s]=c;else if(b){if(o=t[s]=this._prepareModel(h,e),!o)continue;m.push(o),this._addReference(o,e)}o=c||o,!E||!o.isNew()&&_[o.id]||E.push(o),_[o.id]=!0}if(x){for(s=0,r=this.length;s<r;++s)_[(o=this.models[s]).cid]||y.push(o);y.length&&this.remove(y,e)}if(m.length||E&&E.length)if(p&&(u=!0),this.length+=m.length,null!=l)for(s=0,r=m.length;s<r;s++)this.models.splice(l+s,0,m[s]);else{E&&(this.models.length=0);var k=E||m;for(s=0,r=k.length;s<r;s++)this.models.push(k[s])}if(u&&this.sort({silent:!0}),!e.silent){for(s=0,r=m.length;s<r;s++)(o=m[s]).trigger("add",o,this,e);(u||E&&E.length)&&this.trigger("sort",this,e)}return n?t[0]:t},reset:function(t,e){e||(e={});for(var n=0,s=this.models.length;n<s;n++)this._removeReference(this.models[n],e);return e.previousModels=this.models,this._reset(),t=this.add(t,i.extend({silent:!0},e)),e.silent||this.trigger("reset",this,e),t},push:function(t,e){return this.add(t,i.extend({at:this.length},e))},pop:function(t){var e=this.at(this.length-1);return this.remove(e,t),e},unshift:function(t,e){return this.add(t,i.extend({at:0},e))},shift:function(t){var e=this.at(0);return this.remove(e,t),e},slice:function(){return a.apply(this.models,arguments)},get:function(t){if(null!=t)return this._byId[t]||this._byId[t.id]||this._byId[t.cid]},at:function(t){return this.models[t]},where:function(t,e){return i.isEmpty(t)?e?void 0:[]:this[e?"find":"filter"](function(e){for(var i in t)if(t[i]!==e.get(i))return!1;return!0})},findWhere:function(t){return this.where(t,!0)},sort:function(t){if(!this.comparator)throw new Error("Cannot sort a set without a comparator");return t||(t={}),i.isString(this.comparator)||1===this.comparator.length?this.models=this.sortBy(this.comparator,this):this.models.sort(i.bind(this.comparator,this)),t.silent||this.trigger("sort",this,t),this},pluck:function(t){return i.invoke(this.models,"get",t)},fetch:function(t){t=t?i.clone(t):{},void 0===t.parse&&(t.parse=!0);var e=t.success,n=this;return t.success=function(i){var s=t.reset?"reset":"set";n[s](i,t),e&&e(n,i,t),n.trigger("sync",n,i,t)},U(this,t),this.sync("read",this,t)},create:function(t,e){if(e=e?i.clone(e):{},!(t=this._prepareModel(t,e)))return!1;e.wait||this.add(t,e);var n=this,s=e.success;return e.success=function(t,i){e.wait&&n.add(t,e),s&&s(t,i,e)},t.save(null,e),t},parse:function(t,e){return t},clone:function(){return new this.constructor(this.models)},_reset:function(){this.length=0,this.models=[],this._byId={}},_prepareModel:function(t,e){if(t instanceof d)return t;e=e?i.clone(e):{},e.collection=this;var n=new this.model(t,e);return n.validationError?(this.trigger("invalid",this,n.validationError,e),!1):n},_addReference:function(t,e){this._byId[t.cid]=t,null!=t.id&&(this._byId[t.id]=t),t.collection||(t.collection=this),t.on("all",this._onModelEvent,this)},_removeReference:function(t,e){this===t.collection&&delete t.collection,t.off("all",this._onModelEvent,this)},_onModelEvent:function(t,e,i,n){("add"!==t&&"remove"!==t||i===this)&&("destroy"===t&&this.remove(e,n),e&&t==="change:"+e.idAttribute&&(delete this._byId[e.previous(e.idAttribute)],null!=e.id&&(this._byId[e.id]=e)),this.trigger.apply(this,arguments))}});var m=["forEach","each","map","collect","reduce","foldl","inject","reduceRight","foldr","find","detect","filter","select","reject","every","all","some","any","include","contains","invoke","max","min","toArray","size","first","head","take","initial","rest","tail","drop","last","without","difference","indexOf","shuffle","lastIndexOf","isEmpty","chain","sample"];i.each(m,function(t){p.prototype[t]=function(){var e=a.call(arguments);return e.unshift(this.models),i[t].apply(i,e)}});var y=["groupBy","countBy","sortBy","indexBy"];i.each(y,function(t){p.prototype[t]=function(e,n){var s=i.isFunction(e)?e:function(t){return t.get(e)};return i[t](this.models,s,n)}});var _=e.View=function(t){this.cid=i.uniqueId("view"),t||(t={}),i.extend(this,i.pick(t,w)),this._ensureElement(),this.initialize.apply(this,arguments),this.delegateEvents()},b=/^(\S+)\s*(.*)$/,w=["model","collection","el","id","attributes","className","tagName","events"];i.extend(_.prototype,o,{tagName:"div",$:function(t){return this.$el.find(t)},initialize:function(){},render:function(){return this},remove:function(){return this.$el.remove(),this.stopListening(),this},setElement:function(t,i){return this.$el&&this.undelegateEvents(),this.$el=t instanceof e.$?t:e.$(t),this.el=this.$el[0],i!==!1&&this.delegateEvents(),this},delegateEvents:function(t){if(!t&&!(t=i.result(this,"events")))return this;this.undelegateEvents();for(var e in t){var n=t[e];if(i.isFunction(n)||(n=this[t[e]]),n){var s=e.match(b),r=s[1],a=s[2];n=i.bind(n,this),r+=".delegateEvents"+this.cid,""===a?this.$el.on(r,n):this.$el.on(r,a,n)}}return this},undelegateEvents:function(){return this.$el.off(".delegateEvents"+this.cid),this},_ensureElement:function(){if(this.el)this.setElement(i.result(this,"el"),!1);else{var t=i.extend({},i.result(this,"attributes"));this.id&&(t.id=i.result(this,"id")),this.className&&(t["class"]=i.result(this,"className"));var n=e.$("<"+i.result(this,"tagName")+">").attr(t);this.setElement(n,!1)}}}),e.sync=function(t,n,s){var r=E[t];i.defaults(s||(s={}),{emulateHTTP:e.emulateHTTP,emulateJSON:e.emulateJSON});var a={type:r,dataType:"json"};if(s.url||(a.url=i.result(n,"url")||j()),null!=s.data||!n||"create"!==t&&"update"!==t&&"patch"!==t||(a.contentType="application/json",a.data=JSON.stringify(s.attrs||n.toJSON(s))),s.emulateJSON&&(a.contentType="application/x-www-form-urlencoded",a.data=a.data?{model:a.data}:{}),s.emulateHTTP&&("PUT"===r||"DELETE"===r||"PATCH"===r)){a.type="POST",s.emulateJSON&&(a.data._method=r);var o=s.beforeSend;s.beforeSend=function(t){if(t.setRequestHeader("X-HTTP-Method-Override",r),o)return o.apply(this,arguments)}}"GET"===a.type||s.emulateJSON||(a.processData=!1),"PATCH"===a.type&&x&&(a.xhr=function(){return new ActiveXObject("Microsoft.XMLHTTP")});var h=s.xhr=e.ajax(i.extend(a,s));return n.trigger("request",n,h,s),h};var x=!("undefined"==typeof window||!window.ActiveXObject||window.XMLHttpRequest&&(new XMLHttpRequest).dispatchEvent),E={create:"POST",update:"PUT",patch:"PATCH","delete":"DELETE",read:"GET"};e.ajax=function(){return e.$.ajax.apply(e.$,arguments)};var k=e.Router=function(t){t||(t={}),t.routes&&(this.routes=t.routes),this._bindRoutes(),this.initialize.apply(this,arguments)},T=/\((.*?)\)/g,$=/(\(\?)?:\w+/g,S=/\*\w+/g,H=/[\-{}\[\]+?.,\\\^$|#\s]/g;i.extend(k.prototype,o,{initialize:function(){},route:function(t,n,s){i.isRegExp(t)||(t=this._routeToRegExp(t)),i.isFunction(n)&&(s=n,n=""),s||(s=this[n]);var r=this;return e.history.route(t,function(i){var a=r._extractParameters(t,i);r.execute(s,a),r.trigger.apply(r,["route:"+n].concat(a)),r.trigger("route",n,a),e.history.trigger("route",r,n,a)}),this},execute:function(t,e){t&&t.apply(this,e)},navigate:function(t,i){return e.history.navigate(t,i),this},_bindRoutes:function(){if(this.routes){this.routes=i.result(this,"routes");for(var t,e=i.keys(this.routes);null!=(t=e.pop());)this.route(t,this.routes[t])}},_routeToRegExp:function(t){return t=t.replace(H,"\\$&").replace(T,"(?:$1)?").replace($,function(t,e){return e?t:"([^/?]+)"}).replace(S,"([^?]*?)"),new RegExp("^"+t+"(?:\\?([\\s\\S]*))?$")},_extractParameters:function(t,e){var n=t.exec(e).slice(1);return i.map(n,function(t,e){return e===n.length-1?t||null:t?decodeURIComponent(t):null})}});var A=e.History=function(){this.handlers=[],i.bindAll(this,"checkUrl"),"undefined"!=typeof window&&(this.location=window.location,this.history=window.history)},I=/^[#\/]|\s+$/g,N=/^\/+|\/+$/g,R=/msie [\w.]+/,O=/\/$/,P=/#.*$/;A.started=!1,i.extend(A.prototype,o,{interval:50,atRoot:function(){return this.location.pathname.replace(/[^\/]$/,"$&/")===this.root},getHash:function(t){var e=(t||this).location.href.match(/#(.*)$/);return e?e[1]:""},getFragment:function(t,e){if(null==t)if(this._hasPushState||!this._wantsHashChange||e){t=decodeURI(this.location.pathname+this.location.search);var i=this.root.replace(O,"");t.indexOf(i)||(t=t.slice(i.length))}else t=this.getHash();return t.replace(I,"")},start:function(t){if(A.started)throw new Error("Backbone.history has already been started");A.started=!0,this.options=i.extend({root:"/"},this.options,t),this.root=this.options.root,this._wantsHashChange=this.options.hashChange!==!1,this._wantsPushState=!!this.options.pushState,this._hasPushState=!!(this.options.pushState&&this.history&&this.history.pushState);var n=this.getFragment(),s=
gitextract_cu4xnx12/
├── README.md
├── chapter02 -- boot/
│ ├── README.md
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── config/
│ │ │ └── Swagger2Config.java
│ │ ├── product/
│ │ │ ├── api/
│ │ │ │ └── ProductEndpoint.java
│ │ │ ├── dto/
│ │ │ │ ├── ProductCommentDto.java
│ │ │ │ └── ProductDto.java
│ │ │ ├── entity/
│ │ │ │ ├── Product.java
│ │ │ │ └── ProductComment.java
│ │ │ ├── repository/
│ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ └── ProductRepository.java
│ │ │ └── service/
│ │ │ ├── ProductService.java
│ │ │ └── impl/
│ │ │ └── ProductServiceImpl.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── dto/
│ │ │ │ └── UserDto.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ └── UserRepository.java
│ │ │ └── service/
│ │ │ ├── UserService.java
│ │ │ └── impl/
│ │ │ └── UserServiceImpl.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ ├── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ └── webapp/
│ └── swagger/
│ ├── css/
│ │ ├── print.css
│ │ ├── reset.css
│ │ ├── screen.css
│ │ ├── style.css
│ │ └── typography.css
│ ├── index.html
│ ├── lang/
│ │ ├── ca.js
│ │ ├── el.js
│ │ ├── en.js
│ │ ├── es.js
│ │ ├── fr.js
│ │ ├── geo.js
│ │ ├── it.js
│ │ ├── ja.js
│ │ ├── ko-kr.js
│ │ ├── pl.js
│ │ ├── pt.js
│ │ ├── ru.js
│ │ ├── tr.js
│ │ ├── translator.js
│ │ └── zh-cn.js
│ ├── lib/
│ │ ├── backbone-min.js
│ │ ├── es5-shim.js
│ │ ├── handlebars-4.0.5.js
│ │ ├── highlight.9.1.0.pack.js
│ │ ├── highlight.9.1.0.pack_extended.js
│ │ ├── marked.js
│ │ ├── object-assign-pollyfill.js
│ │ └── swagger-oauth.js
│ ├── o2c.html
│ └── swagger-ui.js
├── chapter03 -- hello-cloud/
│ ├── README.md
│ ├── hello-consumer/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ └── consumer/
│ │ │ ├── api/
│ │ │ │ └── HelloConsumerEndpoint.java
│ │ │ └── service/
│ │ │ ├── HelloService.java
│ │ │ └── HelloServiceFallback.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ ├── hello-provider/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ └── provider/
│ │ │ └── api/
│ │ │ └── HelloProviderEndpoint.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ └── service-discovery/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ └── Application.java
│ └── resources/
│ ├── application.properties
│ └── banner.txt
├── chapter04 -- eureka/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ └── repository/
│ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ └── ProductRepository.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── chapter04 -- eureka-cluster/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application-sdpeer1.properties
│ │ ├── application-sdpeer2.properties
│ │ ├── application-sdpeer3.properties
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── chapter04 -- eureka-feign/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application-sdpeer1.properties
│ │ ├── application-sdpeer2.properties
│ │ ├── application-sdpeer3.properties
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── chapter04 -- eureka-ribbon/
│ ├── .project
│ ├── .settings/
│ │ ├── org.eclipse.core.resources.prefs
│ │ └── org.eclipse.m2e.core.prefs
│ ├── README.md
│ ├── parent/
│ │ ├── .project
│ │ ├── .settings/
│ │ │ ├── org.eclipse.core.resources.prefs
│ │ │ └── org.eclipse.m2e.core.prefs
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── .classpath
│ │ ├── .project
│ │ ├── .settings/
│ │ │ ├── org.eclipse.core.resources.prefs
│ │ │ ├── org.eclipse.jdt.core.prefs
│ │ │ └── org.eclipse.m2e.core.prefs
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ └── repository/
│ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ └── ProductRepository.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── .classpath
│ │ ├── .project
│ │ ├── .settings/
│ │ │ ├── org.eclipse.core.resources.prefs
│ │ │ ├── org.eclipse.jdt.core.prefs
│ │ │ └── org.eclipse.m2e.core.prefs
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── .classpath
│ ├── .project
│ ├── .settings/
│ │ ├── org.eclipse.core.resources.prefs
│ │ ├── org.eclipse.jdt.core.prefs
│ │ └── org.eclipse.m2e.core.prefs
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── chapter04 -- eureka-ribbonex/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ ├── clouddemo/
│ │ │ │ ├── Application.java
│ │ │ │ ├── product/
│ │ │ │ │ ├── api/
│ │ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ │ └── UserDto.java
│ │ │ │ │ ├── entity/
│ │ │ │ │ │ ├── Product.java
│ │ │ │ │ │ └── ProductComment.java
│ │ │ │ │ └── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── util/
│ │ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ │ └── ribbon/
│ │ │ ├── RibbonConfiguration.java
│ │ │ └── UserRibbonConfiguration.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application-sdpeer1.properties
│ │ ├── application-sdpeer2.properties
│ │ ├── application-sdpeer3.properties
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── chapter04 -- eureka-security/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── chapter05 -- hystrix/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ ├── UserService.java
│ │ │ │ └── UserServiceImpl.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── bootstrap.properties
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ └── logback.xml
│ ├── turbine-server/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── bootstrap.properties
│ │ └── logback.xml
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ └── repository/
│ │ │ └── UserRepository.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── bootstrap.properties
│ ├── data.sql
│ ├── logback.xml
│ └── schema.sql
├── chapter05 -- hystrix-feign/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ ├── UserService.java
│ │ │ │ └── UserServiceFallback.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── bootstrap.properties
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ └── repository/
│ │ │ └── UserRepository.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── bootstrap.properties
│ ├── data.sql
│ └── schema.sql
├── chapter06 -- zuul/
│ ├── README.md
│ ├── hystrix-dashboard/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── hystrix/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ ├── user-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── user/
│ │ │ │ ├── api/
│ │ │ │ │ ├── UserDto.java
│ │ │ │ │ └── UserEndpoint.java
│ │ │ │ ├── entity/
│ │ │ │ │ └── User.java
│ │ │ │ ├── repository/
│ │ │ │ │ └── UserRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ └── zuul-server/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ └── zuul/
│ │ ├── Application.java
│ │ └── fallback/
│ │ └── UserServiceFallbackProvider.java
│ └── resources/
│ ├── application.properties
│ └── banner.txt
├── chapter07 -- config/
│ ├── README.md
│ ├── config-server/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── config/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ └── bootstrap.properties
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ConfigTestEndpoint.java
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── bootstrap.properties
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── bootstrap.properties
│ ├── data.sql
│ └── schema.sql
├── chapter08 -- sleuth/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── bootstrap.properties
│ │ ├── data.sql
│ │ ├── logback-spring.xml
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ ├── user-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── user/
│ │ │ │ ├── api/
│ │ │ │ │ ├── UserDto.java
│ │ │ │ │ └── UserEndpoint.java
│ │ │ │ ├── entity/
│ │ │ │ │ └── User.java
│ │ │ │ └── repository/
│ │ │ │ └── UserRepository.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── bootstrap.properties
│ │ ├── data.sql
│ │ ├── logback-spring.xml
│ │ └── schema.sql
│ ├── zipkin-server/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ └── zuul-server/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ └── filters/
│ │ └── TraceIdFilter.java
│ └── resources/
│ ├── application.properties
│ └── banner.txt
├── chapter09 -- stream/
│ ├── README.md
│ ├── config-server/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ └── bootstrap.properties
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── bus/
│ │ │ │ └── MyBusEvent.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ConfigTestEndpoint.java
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── mq/
│ │ │ │ │ ├── SpringCloudBookChannels.java
│ │ │ │ │ ├── UserMsg.java
│ │ │ │ │ └── UserMsgListener.java
│ │ │ │ ├── redis/
│ │ │ │ │ ├── RedisConfig.java
│ │ │ │ │ └── repository/
│ │ │ │ │ └── UserRedisRepository.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ ├── UserRemoteClient.java
│ │ │ │ ├── UserService.java
│ │ │ │ └── impl/
│ │ │ │ ├── MyBusEventListener.java
│ │ │ │ └── UserServiceImpl.java
│ │ │ └── util/
│ │ │ ├── ApplicationContextHolder.java
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── bootstrap.properties
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── bus/
│ │ │ └── MyBusEvent.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ ├── UserEndpoint.java
│ │ │ │ └── UserEventEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ └── UserRepository.java
│ │ │ └── service/
│ │ │ ├── UserMsg.java
│ │ │ ├── UserMsgSender.java
│ │ │ └── UserService.java
│ │ └── util/
│ │ ├── ApplicationContextHolder.java
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── bootstrap.properties
│ ├── data.sql
│ └── schema.sql
├── chapter10 -- security-boot/
│ ├── README.md
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── config/
│ │ │ │ │ └── SecurityConfig.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ └── HibernatePhysicalNamingNamingStrategy.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application-sdpeer1.properties
│ │ ├── application-sdpeer2.properties
│ │ ├── application-sdpeer3.properties
│ │ ├── application.properties
│ │ └── banner.txt
│ └── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── chapter10 -- security-jwt/
│ ├── README.md
│ ├── auth-server/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── authserver/
│ │ │ ├── Application.java
│ │ │ ├── config/
│ │ │ │ ├── JWTTokenConfig.java
│ │ │ │ ├── OAuthConfig.java
│ │ │ │ ├── OAuthWebSecurityConfigurer.java
│ │ │ │ └── ServiceConfig.java
│ │ │ └── jwt/
│ │ │ └── JWTTokenEnhancer.java
│ │ └── resources/
│ │ ├── application.properties
│ │ └── banner.txt
│ ├── parent/
│ │ └── pom.xml
│ ├── pom.xml
│ ├── product-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── product/
│ │ │ │ ├── api/
│ │ │ │ │ ├── ProductCommentDto.java
│ │ │ │ │ ├── ProductEndpoint.java
│ │ │ │ │ └── UserDto.java
│ │ │ │ ├── config/
│ │ │ │ │ └── ResourceServerConfiguration.java
│ │ │ │ ├── entity/
│ │ │ │ │ ├── Product.java
│ │ │ │ │ └── ProductComment.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ │ └── ProductRepository.java
│ │ │ │ └── service/
│ │ │ │ ├── UserService.java
│ │ │ │ └── impl/
│ │ │ │ └── UserServiceImpl.java
│ │ │ └── util/
│ │ │ ├── HibernatePhysicalNamingNamingStrategy.java
│ │ │ ├── JWTOAuthTokenInterceptor.java
│ │ │ ├── UserContext.java
│ │ │ └── UserContextFilter.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ ├── service-discovery/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ └── Application.java
│ │ └── resources/
│ │ ├── application-sdpeer1.properties
│ │ ├── application-sdpeer2.properties
│ │ ├── application-sdpeer3.properties
│ │ ├── application.properties
│ │ └── banner.txt
│ ├── user-service/
│ │ ├── pom.xml
│ │ └── src/
│ │ └── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── cd826dong/
│ │ │ └── clouddemo/
│ │ │ ├── Application.java
│ │ │ ├── user/
│ │ │ │ ├── api/
│ │ │ │ │ ├── UserDto.java
│ │ │ │ │ └── UserEndpoint.java
│ │ │ │ ├── config/
│ │ │ │ │ ├── JWTTokenConfig.java
│ │ │ │ │ ├── ResourceServerConfiguration.java
│ │ │ │ │ └── ServiceConfig.java
│ │ │ │ ├── entity/
│ │ │ │ │ └── User.java
│ │ │ │ ├── repository/
│ │ │ │ │ ├── UserRepository.java
│ │ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ │ └── UserRepositoryImpl.java
│ │ │ │ └── service/
│ │ │ │ └── UserService.java
│ │ │ └── util/
│ │ │ ├── HibernatePhysicalNamingNamingStrategy.java
│ │ │ ├── JWTOAuthTokenInterceptor.java
│ │ │ ├── JWTTokenEnhancer.java
│ │ │ ├── UserContext.java
│ │ │ └── UserContextFilter.java
│ │ └── resources/
│ │ ├── .h2.server.properties
│ │ ├── application.properties
│ │ ├── banner.txt
│ │ ├── data.sql
│ │ └── schema.sql
│ └── zuul-server/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ └── zuul/
│ │ ├── Application.java
│ │ ├── config/
│ │ │ └── ServiceConfig.java
│ │ └── filters/
│ │ ├── FilterUtils.java
│ │ └── JWTTokenFilter.java
│ └── resources/
│ ├── application.properties
│ └── banner.txt
└── chapter10 -- security-oauth/
├── README.md
├── auth-server/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── authserver/
│ │ │ ├── Application.java
│ │ │ └── config/
│ │ │ ├── OAuthConfig.java
│ │ │ └── OAuthWebSecurityConfigurer.java
│ │ └── security/
│ │ └── InspectHeaderFilter.java
│ └── resources/
│ ├── application.properties
│ └── banner.txt
├── parent/
│ └── pom.xml
├── pom.xml
├── product-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── product/
│ │ │ ├── Application.java
│ │ │ ├── api/
│ │ │ │ ├── ProductCommentDto.java
│ │ │ │ ├── ProductEndpoint.java
│ │ │ │ └── UserDto.java
│ │ │ ├── config/
│ │ │ │ └── ResourceServerConfiguration.java
│ │ │ ├── entity/
│ │ │ │ ├── Product.java
│ │ │ │ └── ProductComment.java
│ │ │ ├── repository/
│ │ │ │ ├── ProductCommentRepository.java
│ │ │ │ └── ProductRepository.java
│ │ │ └── service/
│ │ │ ├── UserService.java
│ │ │ └── impl/
│ │ │ └── UserServiceImpl.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
├── service-discovery/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ └── Application.java
│ └── resources/
│ ├── application-sdpeer1.properties
│ ├── application-sdpeer2.properties
│ ├── application-sdpeer3.properties
│ ├── application.properties
│ └── banner.txt
├── user-service/
│ ├── pom.xml
│ └── src/
│ └── main/
│ ├── java/
│ │ └── com/
│ │ └── cd826dong/
│ │ └── clouddemo/
│ │ ├── Application.java
│ │ ├── user/
│ │ │ ├── api/
│ │ │ │ ├── UserDto.java
│ │ │ │ └── UserEndpoint.java
│ │ │ ├── config/
│ │ │ │ └── ResourceServerConfiguration.java
│ │ │ ├── entity/
│ │ │ │ └── User.java
│ │ │ ├── repository/
│ │ │ │ ├── UserRepository.java
│ │ │ │ ├── UserRepositoryEx.java
│ │ │ │ └── UserRepositoryImpl.java
│ │ │ └── service/
│ │ │ └── UserService.java
│ │ └── util/
│ │ └── HibernatePhysicalNamingNamingStrategy.java
│ └── resources/
│ ├── .h2.server.properties
│ ├── application.properties
│ ├── banner.txt
│ ├── data.sql
│ └── schema.sql
└── zuul-server/
├── pom.xml
└── src/
└── main/
├── java/
│ └── com/
│ └── cd826dong/
│ └── clouddemo/
│ └── zuul/
│ └── zuulserver/
│ └── Application.java
└── resources/
├── application.properties
├── banner.txt
└── logback.xml
Showing preview only (243K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (2708 symbols across 406 files)
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 28) | @SpringBootApplication
method main (line 32) | public static void main(String[] args) throws Exception {
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/config/Swagger2Config.java
class Swagger2Config (line 30) | @Configuration
method createRestApi (line 33) | @Bean
method apiInfo (line 45) | private ApiInfo apiInfo() {
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java
class ProductEndpoint (line 45) | @RestController
method list (line 58) | @RequestMapping(method = RequestMethod.GET)
method detail (line 75) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method comments (line 87) | @RequestMapping(value = "/{id}/comments", method = RequestMethod.GET)
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/dto/ProductCommentDto.java
class ProductCommentDto (line 33) | @ApiModel(value = "商品评论信息包")
method ProductCommentDto (line 50) | public ProductCommentDto() {
method ProductCommentDto (line 54) | public ProductCommentDto(ProductComment productComment) {
method toString (line 60) | @Override
method toStringHelper (line 65) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 73) | public Long getId() {
method setId (line 76) | public void setId(Long id) {
method getProduct (line 80) | public ProductDto getProduct() {
method setProduct (line 83) | public void setProduct(ProductDto product) {
method getAuthor (line 87) | public UserDto getAuthor() {
method setAuthor (line 90) | public void setAuthor(UserDto author) {
method getContent (line 94) | public String getContent() {
method setContent (line 97) | public void setContent(String content) {
method getCreated (line 101) | public Date getCreated() {
method setCreated (line 104) | public void setCreated(Date created) {
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/dto/ProductDto.java
class ProductDto (line 35) | @ApiModel(value = "商品信息包")
method ProductDto (line 50) | public ProductDto() {
method ProductDto (line 54) | public ProductDto(Product product) {
method toString (line 61) | @Override
method toStringHelper (line 66) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 74) | public Long getId() {
method setId (line 77) | public void setId(Long id) {
method getName (line 81) | public String getName() {
method setName (line 84) | public void setName(String name) {
method getCoverImage (line 88) | public String getCoverImage() {
method setCoverImage (line 91) | public void setCoverImage(String coverImage) {
method getPrice (line 95) | public int getPrice() {
method setPrice (line 98) | public void setPrice(int price) {
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java
class Product (line 31) | @Entity
method toString (line 49) | @Override
method getId (line 58) | public Long getId() {
method setId (line 61) | public void setId(Long id) {
method getName (line 65) | public String getName() {
method setName (line 68) | public void setName(String name) {
method getCoverImage (line 72) | public String getCoverImage() {
method setCoverImage (line 75) | public void setCoverImage(String coverImage) {
method getPrice (line 79) | public int getPrice() {
method setPrice (line 82) | public void setPrice(int price) {
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java
class ProductComment (line 32) | @Entity
method toString (line 52) | @Override
method getId (line 63) | public Long getId() {
method setId (line 66) | public void setId(Long id) {
method getProductId (line 70) | public Long getProductId() {
method setProductId (line 73) | public void setProductId(Long productId) {
method getAuthorId (line 77) | public Long getAuthorId() {
method setAuthorId (line 80) | public void setAuthorId(Long authorId) {
method getContent (line 84) | public String getContent() {
method setContent (line 87) | public void setContent(String content) {
method getCreated (line 91) | public Date getCreated() {
method setCreated (line 94) | public void setCreated(Date created) {
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java
type ProductCommentRepository (line 28) | public interface ProductCommentRepository extends JpaRepository<ProductC...
method findByProductIdOrderByCreated (line 29) | List<ProductComment> findByProductIdOrderByCreated(Long productId);
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java
type ProductRepository (line 26) | public interface ProductRepository extends JpaRepository<Product, Long> {
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/service/ProductService.java
type ProductService (line 31) | public interface ProductService {
method getPage (line 37) | Page<Product> getPage(Pageable pageable);
method load (line 44) | Product load(Long id);
method findAllByProduct (line 51) | List<ProductComment> findAllByProduct(Long productId);
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/service/impl/ProductServiceImpl.java
class ProductServiceImpl (line 36) | @Service
method getPage (line 43) | @Override
method load (line 48) | @Override
method findAllByProduct (line 53) | @Override
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java
class UserEndpoint (line 38) | @RestController
method findAll (line 49) | @RequestMapping(method = RequestMethod.GET)
method detail (line 71) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method update (line 86) | @RequestMapping(value = "/{id}", method = RequestMethod.POST)
method delete (line 103) | @RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/dto/UserDto.java
class UserDto (line 30) | @ApiModel(value = "用户信息包")
method UserDto (line 43) | public UserDto() {
method UserDto (line 47) | public UserDto(User user) {
method toString (line 53) | @Override
method toStringHelper (line 58) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 66) | public Long getId() {
method setId (line 69) | public void setId(Long id) {
method getNickname (line 73) | public String getNickname() {
method setNickname (line 76) | public void setNickname(String nickname) {
method getAvatar (line 80) | public String getAvatar() {
method setAvatar (line 83) | public void setAvatar(String avatar) {
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/entity/User.java
class User (line 31) | @Entity
method toString (line 47) | @Override
method toStringHelper (line 54) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 62) | public Long getId() {
method setId (line 65) | public void setId(Long id) {
method getNickname (line 69) | public String getNickname() {
method setNickname (line 72) | public void setNickname(String nickname) {
method getAvatar (line 76) | public String getAvatar() {
method setAvatar (line 79) | public void setAvatar(String avatar) {
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java
type UserRepository (line 26) | public interface UserRepository extends JpaRepository<User, Long> {
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java
type UserService (line 29) | public interface UserService {
method getPage (line 35) | Page<User> getPage(Pageable pageable);
method load (line 42) | User load(Long id);
method save (line 49) | User save(UserDto userDto);
method delete (line 55) | void delete(Long id);
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/service/impl/UserServiceImpl.java
class UserServiceImpl (line 34) | @Service
method getPage (line 39) | @Override
method load (line 44) | @Override
method save (line 49) | @Override
method delete (line 61) | @Override
FILE: chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter02 -- boot/src/main/resources/schema.sql
type tbProduct (line 6) | create table tbProduct
type tbProduct_Comment (line 15) | create table tbProduct_Comment
type tbUser (line 25) | create table tbUser
FILE: chapter02 -- boot/src/main/webapp/swagger/lib/handlebars-4.0.5.js
function e (line 1) | function e(s){if(r[s])return r[s].exports;var i=r[s]={exports:{},id:s,lo...
function s (line 1) | function s(){var t=v();return t.compile=function(e,r){return l.compile(e...
function s (line 1) | function s(){var t=new o.HandlebarsEnvironment;return f.extend(t,o),t.Sa...
function s (line 1) | function s(t,e,r){this.helpers=t||{},this.partials=e||{},this.decorators...
function r (line 1) | function r(t){return l[t]}
function s (line 1) | function s(t){for(var e=1;e<arguments.length;e++)for(var r in arguments[...
function i (line 1) | function i(t,e){for(var r=0,s=t.length;r<s;r++)if(t[r]===e)return r;retu...
function a (line 1) | function a(t){if("string"!=typeof t){if(t&&t.toHTML)return t.toHTML();if...
function n (line 1) | function n(t){return!t&&0!==t||!(!m(t)||0!==t.length)}
function o (line 1) | function o(t){var e=s({},t);return e._parent=t,e}
function c (line 1) | function c(t,e){return t.path=e,t}
function h (line 1) | function h(t,e){return(t?t+".":"")+e}
function r (line 1) | function r(t,e){var i=e&&e.loc,a=void 0,n=void 0;i&&(a=i.start.line,n=i....
function s (line 1) | function s(t){n["default"](t),c["default"](t),l["default"](t),u["default...
function r (line 1) | function r(e,r,a){h&&(h.key=e,h.index=r,h.first=0===r,h.last=!!a,l&&(h.c...
function s (line 1) | function s(t){n["default"](t)}
function r (line 1) | function r(t){this.string=t}
function s (line 1) | function s(t){var e=t&&t[0]||1,r=v.COMPILER_REVISION;if(e!==r){if(e<r){v...
function i (line 1) | function i(t,e){function r(r,s,i){i.hash&&(s=d.extend({},s,i.hash),i.ids...
function a (line 1) | function a(t,e,r,s,i,a,n){function o(e){var i=arguments.length<=1||void ...
function n (line 1) | function n(t,e,r){return t?t.call||r.name||(r.name=t,t=r.partials[t]):t=...
function o (line 1) | function o(t,e,r){r.partial=!0,r.ids&&(r.data.contextPath=r.ids[0]||r.da...
function c (line 1) | function c(){return""}
function h (line 1) | function h(t,e){return e&&"root"in e||(e=e?v.createFrame(e):{},e.root=t),e}
function l (line 1) | function l(t,e,r,s,i,a){if(t.decorator){var n={};e=t.decorator(e,n,r,s&&...
function s (line 1) | function s(t,e){if("Program"===t.type)return t;o["default"].yy=f,f.locIn...
function t (line 1) | function t(){this.yy={}}
function e (line 2) | function e(){var t;return t=r.lexer.lex()||1,"number"!=typeof t&&(t=r.sy...
function i (line 2) | function i(t,r){return e.yytext=e.yytext.substr(t,e.yyleng-r)}
function s (line 2) | function s(){var t=arguments.length<=0||void 0===arguments[0]?{}:argumen...
function i (line 2) | function i(t,e,r){void 0===e&&(e=t.length);var s=t[e-1],i=t[e-2];return ...
function a (line 2) | function a(t,e,r){void 0===e&&(e=-1);var s=t[e+1],i=t[e+2];return s?"Con...
function n (line 2) | function n(t,e,r){var s=t[null==e?0:e+1];if(s&&"ContentStatement"===s.ty...
function o (line 2) | function o(t,e,r){var s=t[null==e?t.length-1:e-1];if(s&&"ContentStatemen...
function s (line 2) | function s(){this.parents=[]}
function i (line 2) | function i(t){this.acceptRequired(t,"path"),this.acceptArray(t.params),t...
function a (line 2) | function a(t){i.call(this,t),this.acceptKey(t,"program"),this.acceptKey(...
function n (line 2) | function n(t){this.acceptRequired(t,"name"),this.acceptArray(t.params),t...
function s (line 2) | function s(t,e){if(e=e.path?e.path.original:e,t.path.original!==e){var r...
function i (line 2) | function i(t,e){this.source=t,this.start={line:e.first_line,column:e.fir...
function a (line 2) | function a(t){return/^\[.*\]$/.test(t)?t.substr(1,t.length-2):t}
function n (line 2) | function n(t,e){return{open:"~"===t.charAt(2),close:"~"===e.charAt(e.len...
function o (line 2) | function o(t){return t.replace(/^\{\{~?\!-?-?/,"").replace(/-?-?~?\}\}$/...
function c (line 2) | function c(t,e,r){r=this.locInfo(r);for(var s=t?"@":"",i=[],a=0,n="",o=0...
function h (line 2) | function h(t,e,r,s,i,a){var n=s.charAt(3)||s.charAt(2),o="{"!==n&&"&"!==...
function l (line 2) | function l(t,e,r,i){s(t,r),i=this.locInfo(i);var a={type:"Program",body:...
function p (line 2) | function p(t,e,r,i,a,n){i&&i.path&&s(t,i);var o=/\*/.test(t.open);e.bloc...
function u (line 2) | function u(t,e){if(!e&&t.length){var r=t[0].loc,s=t[t.length-1].loc;r&&s...
function f (line 2) | function f(t,e,r,i){return s(t,r),{type:"PartialBlockStatement",name:t.p...
function s (line 2) | function s(){}
function i (line 2) | function i(t,e,r){if(null==t||"string"!=typeof t&&"Program"!==t.type)thr...
function a (line 2) | function a(t,e,r){function s(){var s=r.parse(t,e),i=(new r.Compiler).com...
function n (line 2) | function n(t,e){if(t===e)return!0;if(p.isArray(t)&&p.isArray(e)&&t.lengt...
function o (line 2) | function o(t){if(!t.path.parts){var e=t.path;t.path={type:"PathExpressio...
function s (line 2) | function s(t){this.value=t}
function i (line 2) | function i(){}
function a (line 2) | function a(t,e,r,s){var i=e.popStack(),a=0,n=r.length;for(t&&n--;a<n;a++...
function s (line 3) | function s(t,e,r){if(a.isArray(t)){for(var s=[],i=0,n=t.length;i<n;i++)s...
function i (line 3) | function i(t){this.srcFile=t,this.source=[]}
FILE: chapter02 -- boot/src/main/webapp/swagger/lib/highlight.9.1.0.pack.js
function r (line 1) | function r(e){return e.replace(/&/gm,"&").replace(/</gm,"<").repl...
function t (line 1) | function t(e){return e.nodeName.toLowerCase()}
function n (line 1) | function n(e,r){var t=e&&e.exec(r);return t&&0==t.index}
function a (line 1) | function a(e){return/^(no-?highlight|plain|text)$/i.test(e)}
function c (line 1) | function c(e){var r,t,n,c=e.className+" ";if(c+=e.parentNode?e.parentNod...
function i (line 1) | function i(e,r){var t,n={};for(t in e)n[t]=e[t];if(r)for(t in r)n[t]=r[t...
function o (line 1) | function o(e){var r=[];return function n(e,a){for(var c=e.firstChild;c;c...
function s (line 1) | function s(e,n,a){function c(){return e.length&&n.length?e[0].offset!=n[...
function u (line 1) | function u(e){function r(e){return e&&e.source||e}function t(t,n){return...
function l (line 1) | function l(e,t,a,c){function i(e,r){for(var t=0;t<r.c.length;t++)if(n(r....
function f (line 1) | function f(e,t){t=t||w.languages||Object.keys(y);var n={r:0,value:r(e)},...
function b (line 1) | function b(e){return w.tabReplace&&(e=e.replace(/^((<[^>]+>|\t)+)/gm,fun...
function g (line 1) | function g(e,r,t){var n=r?C[r]:t,a=[e.trim()];return e.match(/\bhljs\b/)...
function p (line 1) | function p(e){var r=c(e);if(!a(r)){var t;w.useBR?(t=document.createEleme...
function h (line 1) | function h(e){w=i(w,e)}
function d (line 1) | function d(){if(!d.called){d.called=!0;var e=document.querySelectorAll("...
function m (line 1) | function m(){addEventListener("DOMContentLoaded",d,!1),addEventListener(...
function v (line 1) | function v(r,t){var n=y[r]=t(e);n.aliases&&n.aliases.forEach(function(e)...
function N (line 1) | function N(){return Object.keys(y)}
function E (line 1) | function E(e){return e=(e||"").toLowerCase(),y[e]||y[C[e]]}
FILE: chapter02 -- boot/src/main/webapp/swagger/lib/marked.js
function e (line 1) | function e(e){this.tokens=[],this.tokens.links={},this.options=e||a.defa...
function t (line 1) | function t(e,t){if(this.options=t||a.defaults,this.links=e,this.rules=u....
function n (line 1) | function n(e){this.options=e||{}}
function r (line 1) | function r(e){this.tokens=[],this.token=null,this.options=e||a.defaults,...
function s (line 1) | function s(e,t){return e.replace(t?/&/g:/&(?!#?\w+;)/g,"&").replace(...
function i (line 1) | function i(e){return e.replace(/&([#\w]+);/g,function(e,t){return t=t.to...
function l (line 1) | function l(e,t){return e=e.source,t=t||"",function n(r,s){return r?(s=s....
function o (line 1) | function o(){}
function h (line 1) | function h(e){for(var t,n,r=1;r<arguments.length;r++){t=arguments[r];for...
function a (line 1) | function a(t,n,i){if(i||"function"==typeof n){i||(i=n,n=null),n=h({},a.d...
FILE: chapter02 -- boot/src/main/webapp/swagger/lib/swagger-oauth.js
function handleLogin (line 1) | function handleLogin(){var e=[],o=window.swaggerUiAuth.authSchemes||wind...
function handleLogout (line 1) | function handleLogout(){for(key in window.swaggerUi.api.clientAuthorizat...
function initOAuth (line 1) | function initOAuth(e){var o=e||{},i=[];return appName=o.appName||i.push(...
function clientCredentialsFlow (line 1) | function clientCredentialsFlow(e,o,i){var n={client_id:clientId,client_s...
FILE: chapter02 -- boot/src/main/webapp/swagger/swagger-ui.js
function clippyCopiedCallback (line 858) | function clippyCopiedCallback() {
function log (line 869) | function log(){
function s (line 3169) | function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&re...
function each (line 3169) | function each(obj,cb){if(obj)Object.keys(obj).forEach(function(key){cb(o...
function has (line 3169) | function has(obj,key){return{}.hasOwnProperty.call(obj,key)}
function sanitizeHtml (line 3169) | function sanitizeHtml(html,options,_recursing){var result="";function Fr...
function init (line 3169) | function init(){var code="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrst...
function toByteArray (line 3169) | function toByteArray(b64){var i,j,l,tmp,placeHolders,arr;var len=b64.len...
function tripletToBase64 (line 3169) | function tripletToBase64(num){return lookup[num>>18&63]+lookup[num>>12&6...
function encodeChunk (line 3169) | function encodeChunk(uint8,start,end){var tmp;var output=[];for(var i=st...
function fromByteArray (line 3169) | function fromByteArray(uint8){var tmp;var len=uint8.length;var extraByte...
function typedArraySupport (line 3169) | function typedArraySupport(){try{var arr=new Uint8Array(1);arr.__proto__...
function kMaxLength (line 3169) | function kMaxLength(){return Buffer.TYPED_ARRAY_SUPPORT?2147483647:10737...
function createBuffer (line 3169) | function createBuffer(that,length){if(kMaxLength()<length){throw new Ran...
function Buffer (line 3169) | function Buffer(arg,encodingOrOffset,length){if(!Buffer.TYPED_ARRAY_SUPP...
function from (line 3169) | function from(that,value,encodingOrOffset,length){if(typeof value==="num...
function assertSize (line 3169) | function assertSize(size){if(typeof size!=="number"){throw new TypeError...
function alloc (line 3169) | function alloc(that,size,fill,encoding){assertSize(size);if(size<=0){ret...
function allocUnsafe (line 3169) | function allocUnsafe(that,size){assertSize(size);that=createBuffer(that,...
function fromString (line 3169) | function fromString(that,string,encoding){if(typeof encoding!=="string"|...
function fromArrayLike (line 3169) | function fromArrayLike(that,array){var length=array.length<0?0:checked(a...
function fromArrayBuffer (line 3169) | function fromArrayBuffer(that,array,byteOffset,length){array.byteLength;...
function fromObject (line 3169) | function fromObject(that,obj){if(Buffer.isBuffer(obj)){var len=checked(o...
function checked (line 3169) | function checked(length){if(length>=kMaxLength()){throw new RangeError("...
function SlowBuffer (line 3169) | function SlowBuffer(length){if(+length!=length){length=0}return Buffer.a...
function byteLength (line 3169) | function byteLength(string,encoding){if(Buffer.isBuffer(string)){return ...
function slowToString (line 3169) | function slowToString(encoding,start,end){var loweredCase=false;if(start...
function swap (line 3169) | function swap(b,n,m){var i=b[n];b[n]=b[m];b[m]=i}
function bidirectionalIndexOf (line 3169) | function bidirectionalIndexOf(buffer,val,byteOffset,encoding,dir){if(buf...
function arrayIndexOf (line 3169) | function arrayIndexOf(arr,val,byteOffset,encoding,dir){var indexSize=1;v...
function hexWrite (line 3169) | function hexWrite(buf,string,offset,length){offset=Number(offset)||0;var...
function utf8Write (line 3169) | function utf8Write(buf,string,offset,length){return blitBuffer(utf8ToByt...
function asciiWrite (line 3169) | function asciiWrite(buf,string,offset,length){return blitBuffer(asciiToB...
function latin1Write (line 3169) | function latin1Write(buf,string,offset,length){return asciiWrite(buf,str...
function base64Write (line 3169) | function base64Write(buf,string,offset,length){return blitBuffer(base64T...
function ucs2Write (line 3169) | function ucs2Write(buf,string,offset,length){return blitBuffer(utf16leTo...
function base64Slice (line 3169) | function base64Slice(buf,start,end){if(start===0&&end===buf.length){retu...
function utf8Slice (line 3169) | function utf8Slice(buf,start,end){end=Math.min(buf.length,end);var res=[...
function decodeCodePointsArray (line 3169) | function decodeCodePointsArray(codePoints){var len=codePoints.length;if(...
function asciiSlice (line 3169) | function asciiSlice(buf,start,end){var ret="";end=Math.min(buf.length,en...
function latin1Slice (line 3169) | function latin1Slice(buf,start,end){var ret="";end=Math.min(buf.length,e...
function hexSlice (line 3169) | function hexSlice(buf,start,end){var len=buf.length;if(!start||start<0)s...
function utf16leSlice (line 3169) | function utf16leSlice(buf,start,end){var bytes=buf.slice(start,end);var ...
function checkOffset (line 3169) | function checkOffset(offset,ext,length){if(offset%1!==0||offset<0)throw ...
function checkInt (line 3170) | function checkInt(buf,value,offset,ext,max,min){if(!Buffer.isBuffer(buf)...
function objectWriteUInt16 (line 3170) | function objectWriteUInt16(buf,value,offset,littleEndian){if(value<0)val...
function objectWriteUInt32 (line 3170) | function objectWriteUInt32(buf,value,offset,littleEndian){if(value<0)val...
function checkIEEE754 (line 3170) | function checkIEEE754(buf,value,offset,ext,max,min){if(offset+ext>buf.le...
function writeFloat (line 3170) | function writeFloat(buf,value,offset,littleEndian,noAssert){if(!noAssert...
function writeDouble (line 3170) | function writeDouble(buf,value,offset,littleEndian,noAssert){if(!noAsser...
function base64clean (line 3170) | function base64clean(str){str=stringtrim(str).replace(INVALID_BASE64_RE,...
function stringtrim (line 3170) | function stringtrim(str){if(str.trim)return str.trim();return str.replac...
function toHex (line 3170) | function toHex(n){if(n<16)return"0"+n.toString(16);return n.toString(16)}
function utf8ToBytes (line 3170) | function utf8ToBytes(string,units){units=units||Infinity;var codePoint;v...
function asciiToBytes (line 3170) | function asciiToBytes(str){var byteArray=[];for(var i=0;i<str.length;++i...
function utf16leToBytes (line 3170) | function utf16leToBytes(str,units){var c,hi,lo;var byteArray=[];for(var ...
function base64ToBytes (line 3170) | function base64ToBytes(str){return base64.toByteArray(base64clean(str))}
function blitBuffer (line 3170) | function blitBuffer(src,dst,offset,length){for(var i=0;i<length;++i){if(...
function isnan (line 3170) | function isnan(val){return val!==val}
function isArray (line 3170) | function isArray(arg){if(Array.isArray){return Array.isArray(arg)}return...
function isBoolean (line 3170) | function isBoolean(arg){return typeof arg==="boolean"}
function isNull (line 3170) | function isNull(arg){return arg===null}
function isNullOrUndefined (line 3170) | function isNullOrUndefined(arg){return arg==null}
function isNumber (line 3170) | function isNumber(arg){return typeof arg==="number"}
function isString (line 3170) | function isString(arg){return typeof arg==="string"}
function isSymbol (line 3170) | function isSymbol(arg){return typeof arg==="symbol"}
function isUndefined (line 3170) | function isUndefined(arg){return arg===void 0}
function isRegExp (line 3170) | function isRegExp(re){return objectToString(re)==="[object RegExp]"}
function isObject (line 3170) | function isObject(arg){return typeof arg==="object"&&arg!==null}
function isDate (line 3170) | function isDate(d){return objectToString(d)==="[object Date]"}
function isError (line 3170) | function isError(e){return objectToString(e)==="[object Error]"||e insta...
function isFunction (line 3170) | function isFunction(arg){return typeof arg==="function"}
function isPrimitive (line 3170) | function isPrimitive(arg){return arg===null||typeof arg==="boolean"||typ...
function objectToString (line 3170) | function objectToString(o){return Object.prototype.toString.call(o)}
function formatAttrs (line 3170) | function formatAttrs(attributes,opts){if(!attributes)return;var output="...
function renderTag (line 3170) | function renderTag(elem,opts){if(elem.name==="svg")opts={decodeEntities:...
function renderDirective (line 3170) | function renderDirective(elem){return"<"+elem.data+">"}
function renderText (line 3170) | function renderText(elem,opts){var data=elem.data||"";if(opts.decodeEnti...
function renderCdata (line 3170) | function renderCdata(elem){return"<![CDATA["+elem.children[0].data+"]]>"}
function renderComment (line 3170) | function renderComment(elem){return"<!--"+elem.data+"-->"}
function DomHandler (line 3170) | function DomHandler(callback,options,elementCB){if(typeof callback==="ob...
method firstChild (line 3170) | get firstChild(){var children=this.children;return children&&children[0]...
method lastChild (line 3170) | get lastChild(){var children=this.children;return children&&children[chi...
method nodeType (line 3170) | get nodeType(){return nodeTypes[this.type]||nodeTypes.element}
function getAttribCheck (line 3170) | function getAttribCheck(attrib,value){if(typeof value==="function"){retu...
function combineFuncs (line 3170) | function combineFuncs(a,b){return function(elem){return a(elem)||b(elem)}}
function filter (line 3170) | function filter(test,element,recurse,limit){if(!Array.isArray(element))e...
function find (line 3170) | function find(test,elems,recurse,limit){var result=[],childs;for(var i=0...
function findOneChild (line 3170) | function findOneChild(test,elems){for(var i=0,l=elems.length;i<l;i++){if...
function findOne (line 3170) | function findOne(test,elems){var elem=null;for(var i=0,l=elems.length;i<...
function existsOne (line 3170) | function existsOne(test,elems){for(var i=0,l=elems.length;i<l;i++){if(is...
function findAll (line 3170) | function findAll(test,elems){var result=[];for(var i=0,j=elems.length;i<...
function getInnerHTML (line 3170) | function getInnerHTML(elem,opts){return elem.children?elem.children.map(...
function getText (line 3170) | function getText(elem){if(Array.isArray(elem))return elem.map(getText).j...
function getStrictDecoder (line 3170) | function getStrictDecoder(map){var keys=Object.keys(map).join("|"),repla...
function replacer (line 3170) | function replacer(str){if(str.substr(-1)!==";")str+=";";return replace(s...
function sorter (line 3170) | function sorter(a,b){return a<b?1:-1}
function getReplacer (line 3170) | function getReplacer(map){return function replace(str){if(str.charAt(1)=...
function decodeCodePoint (line 3171) | function decodeCodePoint(codePoint){if(codePoint>=55296&&codePoint<=5734...
function getInverseObj (line 3171) | function getInverseObj(obj){return Object.keys(obj).sort().reduce(functi...
function getInverseReplacer (line 3171) | function getInverseReplacer(inverse){var single=[],multiple=[];Object.ke...
function singleCharReplacer (line 3171) | function singleCharReplacer(c){return"&#x"+c.charCodeAt(0).toString(16)....
function astralReplacer (line 3171) | function astralReplacer(c){var high=c.charCodeAt(0);var low=c.charCodeAt...
function getInverse (line 3171) | function getInverse(inverse,re){function func(name){return inverse[name]...
function escapeXML (line 3171) | function escapeXML(data){return data.replace(re_xmlChars,singleCharRepla...
function EventEmitter (line 3171) | function EventEmitter(){this._events=this._events||{};this._maxListeners...
function g (line 3171) | function g(){this.removeListener(type,g);if(!fired){fired=true;listener....
function isFunction (line 3172) | function isFunction(arg){return typeof arg==="function"}
function isNumber (line 3172) | function isNumber(arg){return typeof arg==="number"}
function isObject (line 3172) | function isObject(arg){return typeof arg==="object"&&arg!==null}
function isUndefined (line 3172) | function isUndefined(arg){return arg===void 0}
function CollectingHandler (line 3172) | function CollectingHandler(cbs){this._cbs=cbs||{};this.events=[]}
function FeedHandler (line 3172) | function FeedHandler(callback,options){this.init(callback,options)}
function getElements (line 3172) | function getElements(what,where){return DomUtils.getElementsByTagName(wh...
function getOneElement (line 3172) | function getOneElement(what,where){return DomUtils.getElementsByTagName(...
function fetch (line 3172) | function fetch(what,where,recurse){return DomUtils.getText(DomUtils.getE...
function addConditionally (line 3172) | function addConditionally(obj,prop,what,where,recurse){var tmp=fetch(wha...
function Parser (line 3172) | function Parser(cbs,options){this._options=options||{};this._cbs=cbs||{}...
function ProxyHandler (line 3172) | function ProxyHandler(cbs){this._cbs=cbs||{}}
function Stream (line 3172) | function Stream(options){Parser.call(this,new Cbs(this),options)}
function Cbs (line 3172) | function Cbs(scope){this.scope=scope}
function whitespace (line 3172) | function whitespace(c){return c===" "||c==="\n"||c==="\t"||c==="\f"||c==...
function characterState (line 3172) | function characterState(char,SUCCESS){return function(c){if(c===char)thi...
function ifElseState (line 3172) | function ifElseState(upper,SUCCESS,FAILURE){var lower=upper.toLowerCase(...
function consumeSpecialNameChar (line 3172) | function consumeSpecialNameChar(upper,NEXT_STATE){var lower=upper.toLowe...
function Tokenizer (line 3172) | function Tokenizer(options,cbs){this._state=TEXT;this._buffer="";this._s...
function Stream (line 3173) | function Stream(cbs,options){var parser=this._parser=new Parser(cbs,opti...
function defineProp (line 3173) | function defineProp(name,value){delete module.exports[name];module.expor...
method FeedHandler (line 3173) | get FeedHandler(){return defineProp("FeedHandler",require("./FeedHandler...
method Stream (line 3173) | get Stream(){return defineProp("Stream",require("./Stream.js"))}
method WritableStream (line 3173) | get WritableStream(){return defineProp("WritableStream",require("./Writa...
method ProxyHandler (line 3173) | get ProxyHandler(){return defineProp("ProxyHandler",require("./ProxyHand...
method DomUtils (line 3173) | get DomUtils(){return defineProp("DomUtils",require("domutils"))}
method CollectingHandler (line 3173) | get CollectingHandler(){return defineProp("CollectingHandler",require("....
method RssHandler (line 3173) | get RssHandler(){return defineProp("RssHandler",this.FeedHandler)}
function isBuffer (line 3173) | function isBuffer(obj){return!!obj.constructor&&typeof obj.constructor.i...
function isSlowBuffer (line 3173) | function isSlowBuffer(obj){return typeof obj.readFloatLE==="function"&&t...
function nextTick (line 3173) | function nextTick(fn,arg1,arg2,arg3){if(typeof fn!=="function"){throw ne...
function defaultSetTimout (line 3173) | function defaultSetTimout(){throw new Error("setTimeout has not been def...
function defaultClearTimeout (line 3173) | function defaultClearTimeout(){throw new Error("clearTimeout has not bee...
function runTimeout (line 3173) | function runTimeout(fun){if(cachedSetTimeout===setTimeout){return setTim...
function runClearTimeout (line 3173) | function runClearTimeout(marker){if(cachedClearTimeout===clearTimeout){r...
function cleanUpNextTick (line 3173) | function cleanUpNextTick(){if(!draining||!currentQueue){return}draining=...
function drainQueue (line 3173) | function drainQueue(){if(draining){return}var timeout=runTimeout(cleanUp...
function Item (line 3173) | function Item(fun,array){this.fun=fun;this.array=array}
function noop (line 3173) | function noop(){}
function Duplex (line 3173) | function Duplex(options){if(!(this instanceof Duplex))return new Duplex(...
function onend (line 3173) | function onend(){if(this.allowHalfOpen||this._writableState.ended)return...
function onEndNT (line 3173) | function onEndNT(self){self.end()}
function forEach (line 3173) | function forEach(xs,f){for(var i=0,l=xs.length;i<l;i++){f(xs[i],i)}}
function PassThrough (line 3173) | function PassThrough(options){if(!(this instanceof PassThrough))return n...
function prependListener (line 3173) | function prependListener(emitter,event,fn){if(typeof emitter.prependList...
function ReadableState (line 3173) | function ReadableState(options,stream){Duplex=Duplex||require("./_stream...
function Readable (line 3173) | function Readable(options){Duplex=Duplex||require("./_stream_duplex");if...
function readableAddChunk (line 3173) | function readableAddChunk(stream,state,chunk,encoding,addToFront){var er...
function needMoreData (line 3173) | function needMoreData(state){return!state.ended&&(state.needReadable||st...
function computeNewHighWaterMark (line 3173) | function computeNewHighWaterMark(n){if(n>=MAX_HWM){n=MAX_HWM}else{n--;n|...
function howMuchToRead (line 3173) | function howMuchToRead(n,state){if(n<=0||state.length===0&&state.ended)r...
function chunkInvalid (line 3173) | function chunkInvalid(state,chunk){var er=null;if(!Buffer.isBuffer(chunk...
function onEofChunk (line 3173) | function onEofChunk(stream,state){if(state.ended)return;if(state.decoder...
function emitReadable (line 3173) | function emitReadable(stream){var state=stream._readableState;state.need...
function emitReadable_ (line 3173) | function emitReadable_(stream){debug("emit readable");stream.emit("reada...
function maybeReadMore (line 3173) | function maybeReadMore(stream,state){if(!state.readingMore){state.readin...
function maybeReadMore_ (line 3173) | function maybeReadMore_(stream,state){var len=state.length;while(!state....
function onunpipe (line 3173) | function onunpipe(readable){debug("onunpipe");if(readable===src){cleanup...
function onend (line 3173) | function onend(){debug("onend");dest.end()}
function cleanup (line 3173) | function cleanup(){debug("cleanup");dest.removeListener("close",onclose)...
function ondata (line 3173) | function ondata(chunk){debug("ondata");increasedAwaitDrain=false;var ret...
function onerror (line 3173) | function onerror(er){debug("onerror",er);unpipe();dest.removeListener("e...
function onclose (line 3173) | function onclose(){dest.removeListener("finish",onfinish);unpipe()}
function onfinish (line 3173) | function onfinish(){debug("onfinish");dest.removeListener("close",onclos...
function unpipe (line 3173) | function unpipe(){debug("unpipe");src.unpipe(dest)}
function pipeOnDrain (line 3173) | function pipeOnDrain(src){return function(){var state=src._readableState...
function nReadingNextTick (line 3173) | function nReadingNextTick(self){debug("readable nexttick read 0");self.r...
function resume (line 3173) | function resume(stream,state){if(!state.resumeScheduled){state.resumeSch...
function resume_ (line 3173) | function resume_(stream,state){if(!state.reading){debug("resume read 0")...
function flow (line 3173) | function flow(stream){var state=stream._readableState;debug("flow",state...
function fromList (line 3173) | function fromList(n,state){if(state.length===0)return null;var ret;if(st...
function fromListPartial (line 3173) | function fromListPartial(n,list,hasStrings){var ret;if(n<list.head.data....
function copyFromBufferString (line 3173) | function copyFromBufferString(n,list){var p=list.head;var c=1;var ret=p....
function copyFromBuffer (line 3173) | function copyFromBuffer(n,list){var ret=bufferShim.allocUnsafe(n);var p=...
function endReadable (line 3173) | function endReadable(stream){var state=stream._readableState;if(state.le...
function endReadableNT (line 3173) | function endReadableNT(state,stream){if(!state.endEmitted&&state.length=...
function forEach (line 3173) | function forEach(xs,f){for(var i=0,l=xs.length;i<l;i++){f(xs[i],i)}}
function indexOf (line 3173) | function indexOf(xs,x){for(var i=0,l=xs.length;i<l;i++){if(xs[i]===x)ret...
function TransformState (line 3173) | function TransformState(stream){this.afterTransform=function(er,data){re...
function afterTransform (line 3173) | function afterTransform(stream,er,data){var ts=stream._transformState;ts...
function Transform (line 3173) | function Transform(options){if(!(this instanceof Transform))return new T...
function done (line 3173) | function done(stream,er){if(er)return stream.emit("error",er);var ws=str...
function nop (line 3173) | function nop(){}
function WriteReq (line 3173) | function WriteReq(chunk,encoding,cb){this.chunk=chunk;this.encoding=enco...
function WritableState (line 3173) | function WritableState(options,stream){Duplex=Duplex||require("./_stream...
function Writable (line 3173) | function Writable(options){Duplex=Duplex||require("./_stream_duplex");if...
function writeAfterEnd (line 3173) | function writeAfterEnd(stream,cb){var er=new Error("write after end");st...
function validChunk (line 3173) | function validChunk(stream,state,chunk,cb){var valid=true;var er=false;i...
function decodeChunk (line 3174) | function decodeChunk(state,chunk,encoding){if(!state.objectMode&&state.d...
function writeOrBuffer (line 3174) | function writeOrBuffer(stream,state,chunk,encoding,cb){chunk=decodeChunk...
function doWrite (line 3174) | function doWrite(stream,state,writev,len,chunk,encoding,cb){state.writel...
function onwriteError (line 3174) | function onwriteError(stream,state,sync,er,cb){--state.pendingcb;if(sync...
function onwriteStateUpdate (line 3174) | function onwriteStateUpdate(state){state.writing=false;state.writecb=nul...
function onwrite (line 3174) | function onwrite(stream,er){var state=stream._writableState;var sync=sta...
function afterWrite (line 3174) | function afterWrite(stream,state,finished,cb){if(!finished)onwriteDrain(...
function onwriteDrain (line 3174) | function onwriteDrain(stream,state){if(state.length===0&&state.needDrain...
function clearBuffer (line 3174) | function clearBuffer(stream,state){state.bufferProcessing=true;var entry...
function needFinish (line 3174) | function needFinish(state){return state.ending&&state.length===0&&state....
function prefinish (line 3174) | function prefinish(stream,state){if(!state.prefinished){state.prefinishe...
function finishMaybe (line 3174) | function finishMaybe(stream,state){var need=needFinish(state);if(need){i...
function endWritable (line 3174) | function endWritable(stream,state,cb){state.ending=true;finishMaybe(stre...
function CorkedRequest (line 3174) | function CorkedRequest(state){var _this=this;this.next=null;this.entry=n...
function BufferList (line 3174) | function BufferList(){this.head=null;this.tail=null;this.length=0}
function Stream (line 3174) | function Stream(){EE.call(this)}
function ondata (line 3174) | function ondata(chunk){if(dest.writable){if(false===dest.write(chunk)&&s...
function ondrain (line 3174) | function ondrain(){if(source.readable&&source.resume){source.resume()}}
function onend (line 3174) | function onend(){if(didOnEnd)return;didOnEnd=true;dest.end()}
function onclose (line 3174) | function onclose(){if(didOnEnd)return;didOnEnd=true;if(typeof dest.destr...
function onerror (line 3174) | function onerror(er){cleanup();if(EE.listenerCount(this,"error")===0){th...
function cleanup (line 3174) | function cleanup(){source.removeListener("data",ondata);dest.removeListe...
function assertEncoding (line 3174) | function assertEncoding(encoding){if(encoding&&!isBufferEncoding(encodin...
function passThroughWrite (line 3174) | function passThroughWrite(buffer){return buffer.toString(this.encoding)}
function utf16DetectIncompleteChar (line 3174) | function utf16DetectIncompleteChar(buffer){this.charReceived=buffer.leng...
function base64DetectIncompleteChar (line 3174) | function base64DetectIncompleteChar(buffer){this.charReceived=buffer.len...
function deprecate (line 3174) | function deprecate(fn,msg){if(config("noDeprecation")){return fn}var war...
function config (line 3174) | function config(name){try{if(!global.localStorage)return false}catch(_){...
function extend (line 3174) | function extend(){var target={};for(var i=0;i<arguments.length;i++){var ...
function s (line 3182) | function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&re...
function splitUrl (line 5128) | function splitUrl(url) {
function unsplitUrl (line 5149) | function unsplitUrl(url) {
function joinUrl (line 5169) | function joinUrl(base, rel) {
function addReference (line 5725) | function addReference(schema, name, skipRef) {
function primitiveToHTML (line 5744) | function primitiveToHTML(schema) {
function primitiveToOptionsHTML (line 5786) | function primitiveToOptionsHTML(schema, html) {
function processModel (line 5881) | function processModel(schema, name) {
function itemByPriority (line 7631) | function itemByPriority(col, itemPriority) {
function drainQueue (line 7987) | function drainQueue() {
function noop (line 8019) | function noop() {}
function btoa (line 8045) | function btoa(str) {
function Bar (line 8110) | function Bar () {}
function kMaxLength (line 8124) | function kMaxLength () {
function Buffer (line 8142) | function Buffer (arg) {
function fromNumber (line 8166) | function fromNumber (that, length) {
function fromString (line 8176) | function fromString (that, string, encoding) {
function fromObject (line 8187) | function fromObject (that, object) {
function fromBuffer (line 8210) | function fromBuffer (that, buffer) {
function fromArray (line 8217) | function fromArray (that, array) {
function fromTypedArray (line 8227) | function fromTypedArray (that, array) {
function fromArrayBuffer (line 8239) | function fromArrayBuffer (that, array) {
function fromArrayLike (line 8251) | function fromArrayLike (that, array) {
function fromJsonObject (line 8262) | function fromJsonObject (that, object) {
function allocate (line 8278) | function allocate (that, length) {
function checked (line 8294) | function checked (length) {
function SlowBuffer (line 8304) | function SlowBuffer (subject, encoding) {
function byteLength (line 8388) | function byteLength (string, encoding) {
function slowToString (line 8429) | function slowToString (encoding, start, end) {
function arrayIndexOf (line 8526) | function arrayIndexOf (arr, val, byteOffset) {
function hexWrite (line 8554) | function hexWrite (buf, string, offset, length) {
function utf8Write (line 8581) | function utf8Write (buf, string, offset, length) {
function asciiWrite (line 8585) | function asciiWrite (buf, string, offset, length) {
function binaryWrite (line 8589) | function binaryWrite (buf, string, offset, length) {
function base64Write (line 8593) | function base64Write (buf, string, offset, length) {
function ucs2Write (line 8597) | function ucs2Write (buf, string, offset, length) {
function base64Slice (line 8680) | function base64Slice (buf, start, end) {
function utf8Slice (line 8688) | function utf8Slice (buf, start, end) {
function decodeCodePointsArray (line 8766) | function decodeCodePointsArray (codePoints) {
function asciiSlice (line 8784) | function asciiSlice (buf, start, end) {
function binarySlice (line 8794) | function binarySlice (buf, start, end) {
function hexSlice (line 8804) | function hexSlice (buf, start, end) {
function utf16leSlice (line 8817) | function utf16leSlice (buf, start, end) {
function checkOffset (line 8866) | function checkOffset (offset, ext, length) {
function checkInt (line 9027) | function checkInt (buf, value, offset, ext, max, min) {
function objectWriteUInt16 (line 9074) | function objectWriteUInt16 (buf, value, offset, littleEndian) {
function objectWriteUInt32 (line 9108) | function objectWriteUInt32 (buf, value, offset, littleEndian) {
function checkIEEE754 (line 9252) | function checkIEEE754 (buf, value, offset, ext, max, min) {
function writeFloat (line 9258) | function writeFloat (buf, value, offset, littleEndian, noAssert) {
function writeDouble (line 9274) | function writeDouble (buf, value, offset, littleEndian, noAssert) {
function base64clean (line 9459) | function base64clean (str) {
function stringtrim (line 9471) | function stringtrim (str) {
function toHex (line 9476) | function toHex (n) {
function utf8ToBytes (line 9481) | function utf8ToBytes (string, units) {
function asciiToBytes (line 9561) | function asciiToBytes (str) {
function utf16leToBytes (line 9570) | function utf16leToBytes (str, units) {
function base64ToBytes (line 9586) | function base64ToBytes (str) {
function blitBuffer (line 9590) | function blitBuffer (src, dst, offset, length) {
function decode (line 9616) | function decode (elt) {
function b64ToByteArray (line 9634) | function b64ToByteArray (b64) {
function uint8ToBase64 (line 9680) | function uint8ToBase64 (uint8) {
function CookieAccessInfo (line 9850) | function CookieAccessInfo(domain, path, secure, script) {
function Cookie (line 9862) | function Cookie(cookiestr, request_domain, request_path) {
function CookieJar (line 10002) | function CookieJar() {
function deprecated (line 10125) | function deprecated(name) {
function isNothing (line 10162) | function isNothing(subject) {
function isObject (line 10167) | function isObject(subject) {
function toArray (line 10172) | function toArray(sequence) {
function extend (line 10180) | function extend(target, source) {
function repeat (line 10196) | function repeat(string, count) {
function isNegativeZero (line 10207) | function isNegativeZero(number) {
function compileStyleMap (line 10278) | function compileStyleMap(schema, map) {
function encodeHex (line 10306) | function encodeHex(character) {
function State (line 10327) | function State(options) {
function indentString (line 10349) | function indentString(string, spaces) {
function generateNextLine (line 10375) | function generateNextLine(state, level) {
function testImplicitResolving (line 10379) | function testImplicitResolving(state, str) {
function isWhitespace (line 10394) | function isWhitespace(c) {
function isPrintable (line 10402) | function isPrintable(c) {
function isPlainSafe (line 10410) | function isPlainSafe(c) {
function isPlainSafeFirst (line 10426) | function isPlainSafeFirst(c) {
function chooseScalarStyle (line 10469) | function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineW...
function writeScalar (line 10537) | function writeScalar(state, string, level, iskey) {
function blockHeader (line 10586) | function blockHeader(string, indentPerLevel) {
function dropEndingNewline (line 10598) | function dropEndingNewline(string) {
function foldString (line 10604) | function foldString(string, width) {
function foldLine (line 10641) | function foldLine(line, width) {
function escapeString (line 10681) | function escapeString(string) {
function writeFlowSequence (line 10697) | function writeFlowSequence(state, level, object) {
function writeBlockSequence (line 10715) | function writeBlockSequence(state, level, object, compact) {
function writeFlowMapping (line 10735) | function writeFlowMapping(state, level, object) {
function writeBlockMapping (line 10775) | function writeBlockMapping(state, level, object, compact) {
function detectType (line 10849) | function detectType(state, object, explicit) {
function writeNode (line 10887) | function writeNode(state, level, object, block, compact, iskey) {
function getDuplicateReferences (line 10961) | function getDuplicateReferences(object, state) {
function inspectNode (line 10975) | function inspectNode(object, objects, duplicatesIndexes) {
function dump (line 11004) | function dump(input, options) {
function safeDump (line 11016) | function safeDump(input, options) {
function YAMLException (line 11028) | function YAMLException(reason, mark) {
function is_EOL (line 11101) | function is_EOL(c) {
function is_WHITE_SPACE (line 11105) | function is_WHITE_SPACE(c) {
function is_WS_OR_EOL (line 11109) | function is_WS_OR_EOL(c) {
function is_FLOW_INDICATOR (line 11116) | function is_FLOW_INDICATOR(c) {
function fromHexCode (line 11124) | function fromHexCode(c) {
function escapedHexLen (line 11141) | function escapedHexLen(c) {
function fromDecimalCode (line 11148) | function fromDecimalCode(c) {
function simpleEscapeSequence (line 11156) | function simpleEscapeSequence(c) {
function charFromCodepoint (line 11177) | function charFromCodepoint(c) {
function State (line 11195) | function State(input, options) {
function generateError (line 11229) | function generateError(state, message) {
function throwError (line 11235) | function throwError(state, message) {
function throwWarning (line 11239) | function throwWarning(state, message) {
function captureSegment (line 11309) | function captureSegment(state, start, end, checkJson) {
function mergeMappings (line 11333) | function mergeMappings(state, destination, source, overridableKeys) {
function storeMappingPair (line 11352) | function storeMappingPair(state, _result, overridableKeys, keyTag, keyNo...
function readLineBreak (line 11382) | function readLineBreak(state) {
function skipSeparationSpace (line 11402) | function skipSeparationSpace(state, allowComments, checkIndent) {
function testDocumentSeparator (line 11440) | function testDocumentSeparator(state) {
function writeFoldedLines (line 11464) | function writeFoldedLines(state, count) {
function readPlainScalar (line 11473) | function readPlainScalar(state, nodeIndent, withinFlowCollection) {
function readSingleQuotedScalar (line 11582) | function readSingleQuotedScalar(state, nodeIndent) {
function readDoubleQuotedScalar (line 11626) | function readDoubleQuotedScalar(state, nodeIndent) {
function readFlowCollection (line 11705) | function readFlowCollection(state, nodeIndent) {
function readBlockScalar (line 11810) | function readBlockScalar(state, nodeIndent) {
function readBlockSequence (line 11953) | function readBlockSequence(state, nodeIndent) {
function readBlockMapping (line 12015) | function readBlockMapping(state, nodeIndent, flowIndent) {
function readTagProperty (line 12168) | function readTagProperty(state) {
function readAnchorProperty (line 12262) | function readAnchorProperty(state) {
function readAlias (line 12289) | function readAlias(state) {
function composeNode (line 12319) | function composeNode(state, parentIndent, nodeContext, allowToSeek, allo...
function readDocument (line 12475) | function readDocument(state) {
function loadDocuments (line 12583) | function loadDocuments(input, options) {
function loadAll (line 12619) | function loadAll(input, iterator, options) {
function load (line 12628) | function load(input, options) {
function safeLoadAll (line 12641) | function safeLoadAll(input, output, options) {
function safeLoad (line 12646) | function safeLoad(input, options) {
function Mark (line 12663) | function Mark(name, buffer, position, line, column) {
function compileList (line 12744) | function compileList(schema, name, result) {
function compileMap (line 12767) | function compileMap(/* lists... */) {
function Schema (line 12782) | function Schema(definition) {
function compileStyleAliases (line 12985) | function compileStyleAliases(map) {
function Type (line 12999) | function Type(tag, options) {
function resolveYamlBinary (line 13046) | function resolveYamlBinary(data) {
function constructYamlBinary (line 13068) | function constructYamlBinary(data) {
function representYamlBinary (line 13109) | function representYamlBinary(object /*, style*/) {
function isBinary (line 13151) | function isBinary(object) {
function resolveYamlBoolean (line 13168) | function resolveYamlBoolean(data) {
function constructYamlBoolean (line 13177) | function constructYamlBoolean(data) {
function isBoolean (line 13183) | function isBoolean(object) {
function resolveYamlFloat (line 13213) | function resolveYamlFloat(data) {
function constructYamlFloat (line 13221) | function constructYamlFloat(data) {
function representYamlFloat (line 13260) | function representYamlFloat(object, style) {
function isFloat (line 13293) | function isFloat(object) {
function isHexCode (line 13313) | function isHexCode(c) {
function isOctCode (line 13319) | function isOctCode(c) {
function isDecCode (line 13323) | function isDecCode(c) {
function resolveYamlInteger (line 13327) | function resolveYamlInteger(data) {
function constructYamlInteger (line 13409) | function constructYamlInteger(data) {
function isInteger (line 13452) | function isInteger(object) {
function resolveJavascriptFunction (line 13500) | function resolveJavascriptFunction(data) {
function constructJavascriptFunction (line 13520) | function constructJavascriptFunction(data) {
function representJavascriptFunction (line 13547) | function representJavascriptFunction(object /*, style*/) {
function isFunction (line 13551) | function isFunction(object) {
function resolveJavascriptRegExp (line 13568) | function resolveJavascriptRegExp(data) {
function constructJavascriptRegExp (line 13589) | function constructJavascriptRegExp(data) {
function representJavascriptRegExp (line 13603) | function representJavascriptRegExp(object /*, style*/) {
function isRegExp (line 13613) | function isRegExp(object) {
function resolveJavascriptUndefined (line 13630) | function resolveJavascriptUndefined() {
function constructJavascriptUndefined (line 13634) | function constructJavascriptUndefined() {
function representJavascriptUndefined (line 13639) | function representJavascriptUndefined() {
function isUndefined (line 13643) | function isUndefined(object) {
function resolveYamlMerge (line 13670) | function resolveYamlMerge(data) {
function resolveYamlNull (line 13684) | function resolveYamlNull(data) {
function constructYamlNull (line 13693) | function constructYamlNull() {
function isNull (line 13697) | function isNull(object) {
function resolveYamlOmap (line 13723) | function resolveYamlOmap(data) {
function constructYamlOmap (line 13751) | function constructYamlOmap(data) {
function resolveYamlPairs (line 13768) | function resolveYamlPairs(data) {
function constructYamlPairs (line 13791) | function constructYamlPairs(data) {
function resolveYamlSet (line 13833) | function resolveYamlSet(data) {
function constructYamlSet (line 13847) | function constructYamlSet(data) {
function resolveYamlTimestamp (line 13889) | function resolveYamlTimestamp(data) {
function constructYamlTimestamp (line 13896) | function constructYamlTimestamp(data) {
function representYamlTimestamp (line 13945) | function representYamlTimestamp(object /*, style*/) {
function indexOf (line 13992) | function indexOf(array, value, fromIndex) {
function last (line 14026) | function last(array) {
function lodash (line 14143) | function lodash(value) {
function includes (line 14301) | function includes(collection, target, fromIndex, guard) {
function map (line 14381) | function map(collection, iteratee, thisArg) {
function restParam (line 14502) | function restParam(func, start) {
function LazyWrapper (line 14546) | function LazyWrapper(value) {
function LodashWrapper (line 14573) | function LodashWrapper(value, chainAll, actions) {
function arrayCopy (line 14593) | function arrayCopy(source, array) {
function arrayEach (line 14616) | function arrayEach(array, iteratee) {
function arrayMap (line 14640) | function arrayMap(array, iteratee) {
function arraySome (line 14664) | function arraySome(array, predicate) {
function baseAssign (line 14691) | function baseAssign(object, source) {
function baseCallback (line 14716) | function baseCallback(func, thisArg, argCount) {
function baseClone (line 14812) | function baseClone(value, isDeep, customizer, key, object, stackA, stack...
function baseCopy (line 14880) | function baseCopy(source, props, object) {
function object (line 14907) | function object() {}
function baseFind (line 14951) | function baseFind(collection, predicate, eachFunc, retKey) {
function baseFindIndex (line 14975) | function baseFindIndex(array, predicate, fromRight) {
function baseForIn (line 15021) | function baseForIn(object, iteratee) {
function baseForOwn (line 15040) | function baseForOwn(object, iteratee) {
function baseGet (line 15059) | function baseGet(object, path, pathKey) {
function baseIndexOf (line 15090) | function baseIndexOf(array, value, fromIndex) {
function baseIsEqual (line 15125) | function baseIsEqual(value, other, customizer, isLoose, stackA, stackB) {
function baseIsEqualDeep (line 15177) | function baseIsEqualDeep(object, other, equalFunc, customizer, isLoose, ...
function baseIsMatch (line 15256) | function baseIsMatch(object, matchData, customizer) {
function baseLodash (line 15302) | function baseLodash() {
function baseMap (line 15321) | function baseMap(collection, iteratee) {
function baseMatches (line 15345) | function baseMatches(source) {
function baseMatchesProperty (line 15385) | function baseMatchesProperty(path, srcValue) {
function baseProperty (line 15423) | function baseProperty(key) {
function basePropertyDeep (line 15442) | function basePropertyDeep(path) {
function baseSlice (line 15481) | function baseSlice(array, start, end) {
function baseToString (line 15514) | function baseToString(value) {
function baseValues (line 15531) | function baseValues(object, props) {
function binaryIndex (line 15563) | function binaryIndex(array, value, retHighest) {
function binaryIndexBy (line 15607) | function binaryIndexBy(array, value, iteratee, retHighest) {
function bindCallback (line 15657) | function bindCallback(func, thisArg, argCount) {
function bufferClone (line 15698) | function bufferClone(buffer) {
function composeArgs (line 15724) | function composeArgs(args, partials, holders) {
function composeArgsRight (line 15760) | function composeArgsRight(args, partials, holders) {
function createBaseEach (line 15797) | function createBaseEach(eachFunc, fromRight) {
function createBaseFor (line 15827) | function createBaseFor(fromRight) {
function createBindWrapper (line 15859) | function createBindWrapper(func, thisArg) {
function createCtorWrapper (line 15885) | function createCtorWrapper(Ctor) {
function createFind (line 15926) | function createFind(eachFunc, fromRight) {
function createForEach (line 15951) | function createForEach(arrayFunc, eachFunc) {
function createHybridWrapper (line 16002) | function createHybridWrapper(func, bitmask, thisArg, partials, holders, ...
function createPartialWrapper (line 16096) | function createPartialWrapper(func, bitmask, thisArg, partials) {
function createWrapper (line 16171) | function createWrapper(func, bitmask, thisArg, partials, holders, argPos...
function equalArrays (line 16230) | function equalArrays(array, other, equalFunc, customizer, isLoose, stack...
function equalByTag (line 16288) | function equalByTag(object, other, tag) {
function equalObjects (line 16339) | function equalObjects(object, other, equalFunc, customizer, isLoose, sta...
function getFuncName (line 16412) | function getFuncName(func) {
function getMatchData (line 16457) | function getMatchData(object) {
function getNative (line 16480) | function getNative(object, key) {
function indexOfNaN (line 16497) | function indexOfNaN(array, fromIndex, fromRight) {
function initCloneArray (line 16526) | function initCloneArray(array) {
function initCloneByTag (line 16592) | function initCloneByTag(object, tag, isDeep) {
function initCloneObject (line 16635) | function initCloneObject(object) {
function isArrayLike (line 16656) | function isArrayLike(value) {
function isIndex (line 16703) | function isIndex(value, length) {
function isIterateeCall (line 16725) | function isIterateeCall(value, index, object) {
function isKey (line 16757) | function isKey(value, object) {
function isLaziable (line 16784) | function isLaziable(func) {
function isLength (line 16816) | function isLength(value) {
function isObjectLike (line 16830) | function isObjectLike(value) {
function isStrictComparable (line 16847) | function isStrictComparable(value) {
function mergeData (line 16887) | function mergeData(data, source) {
function reorder (line 16981) | function reorder(array, indexes) {
function replaceHolders (line 17008) | function replaceHolders(array, placeholder) {
function shimKeys (line 17090) | function shimKeys(object) {
function toObject (line 17124) | function toObject(value) {
function toPath (line 17157) | function toPath(value) {
function wrapperClone (line 17182) | function wrapperClone(wrapper) {
function cloneDeep (line 17239) | function cloneDeep(value, customizer, thisArg) {
function isArguments (line 17276) | function isArguments(value) {
function isEmpty (line 17361) | function isEmpty(value) {
function isFunction (line 17405) | function isFunction(value) {
function isNative (line 17453) | function isNative(value) {
function isObject (line 17486) | function isObject(value) {
function isPlainObject (line 17547) | function isPlainObject(value) {
function isString (line 17608) | function isString(value) {
function isTypedArray (line 17684) | function isTypedArray(value) {
function isUndefined (line 17707) | function isUndefined(value) {
function keysIn (line 17841) | function keysIn(object) {
function pairs (line 17917) | function pairs(object) {
function values (line 17963) | function values(object) {
function identity (line 18083) | function identity(value) {
function noop (line 18104) | function noop() {
function property (line 18137) | function property(path) {
function flush (line 18255) | function flush() {
function runSingle (line 18279) | function runSingle(task, domain) {
function uncurryThis (line 18405) | function uncurryThis(f) {
function Type (line 18469) | function Type() { }
function isObject (line 18488) | function isObject(value) {
function isStopIteration (line 18495) | function isStopIteration(exception) {
function makeStackTraceLong (line 18517) | function makeStackTraceLong(error, promise) {
function filterStackString (line 18540) | function filterStackString(stackString) {
function isNodeFrame (line 18553) | function isNodeFrame(stackLine) {
function getFileNameAndLineNumber (line 18558) | function getFileNameAndLineNumber(stackLine) {
function isInternalFrame (line 18579) | function isInternalFrame(stackLine) {
function captureLine (line 18596) | function captureLine() {
function deprecate (line 18616) | function deprecate(callback, name, alternative) {
function Q (line 18635) | function Q(value) {
function defer (line 18679) | function defer() {
function promise (line 18820) | function promise(resolver) {
function race (line 18883) | function race(answerPs) {
function Promise (line 18912) | function Promise(descriptor, fallback, inspect) {
function _fulfilled (line 18976) | function _fulfilled(value) {
function _rejected (line 18984) | function _rejected(exception) {
function _progressed (line 18996) | function _progressed(value) {
function when (line 19082) | function when(value, fulfilled, rejected, progressed) {
function nearer (line 19114) | function nearer(value) {
function isPromise (line 19129) | function isPromise(object) {
function isPromiseAlike (line 19134) | function isPromiseAlike(object) {
function isPending (line 19143) | function isPending(object) {
function isFulfilled (line 19156) | function isFulfilled(object) {
function isRejected (line 19168) | function isRejected(object) {
function resetUnhandledRejections (line 19187) | function resetUnhandledRejections() {
function trackRejection (line 19196) | function trackRejection(promise, reason) {
function untrackRejection (line 19217) | function untrackRejection(promise) {
function reject (line 19259) | function reject(reason) {
function fulfill (line 19285) | function fulfill(value) {
function coerce (line 19324) | function coerce(promise) {
function master (line 19346) | function master(object) {
function spread (line 19367) | function spread(value, fulfilled, rejected) {
function async (line 19404) | function async(makeGenerator) {
function spawn (line 19461) | function spawn(makeGenerator) {
function _return (line 19491) | function _return(value) {
function promised (line 19511) | function promised(callback) {
function dispatch (line 19527) | function dispatch(object, op, args) {
function all (line 19705) | function all(promises) {
function any (line 19753) | function any(promises) {
function allResolved (line 19803) | function allResolved(promises) {
function allSettled (line 19822) | function allSettled(promises) {
function regardless (line 19837) | function regardless() {
function progress (line 19873) | function progress(object, progressed) {
function bound (line 20085) | function bound() {
function nodeify (line 20163) | function nodeify(object, nodeback) {
function noop (line 20219) | function noop(){}
function serialize (line 20265) | function serialize(obj) {
function pushEncodedKeyValuePair (line 20283) | function pushEncodedKeyValuePair(pairs, key, val) {
function parseString (line 20316) | function parseString(str) {
function parseHeader (line 20395) | function parseHeader(str) {
function isJSON (line 20424) | function isJSON(mime) {
function type (line 20436) | function type(str){
function params (line 20448) | function params(str){
function Response (line 20505) | function Response(req, options) {
function Request (line 20668) | function Request(method, url) {
function del (line 21111) | function del(url, fn){
function isObject (line 21183) | function isObject(obj) {
function request (line 21556) | function request(RequestConstructor, method, url) {
function Emitter (line 21588) | function Emitter(obj) {
function mixin (line 21600) | function mixin(obj) {
function on (line 21635) | function on() {
function warn (line 22020) | function warn(message) {
function getTokenName (line 22531) | function getTokenName(dets) {
function addReference (line 24347) | function addReference(schema, name, skipRef) {
function primitiveToHTML (line 24366) | function primitiveToHTML(schema) {
function primitiveToOptionsHTML (line 24408) | function primitiveToOptionsHTML(schema, html) {
function processModel (line 24511) | function processModel(schema, name) {
function createObjectXML (line 24987) | function createObjectXML (descriptor) {
function getInfiniteLoopMessage (line 25033) | function getInfiniteLoopMessage (name, loopTo) {
function getErrorMessage (line 25037) | function getErrorMessage (details) {
function createSchemaXML (line 25042) | function createSchemaXML (name, definition, models, config) {
function Descriptor (line 25076) | function Descriptor (name, type, definition, models, config) {
function getDescriptorByRef (line 25089) | function getDescriptorByRef($ref, name, models, config) {
function getDescriptor (line 25115) | function getDescriptor (name, definition, models, config){
function createXMLSample (line 25128) | function createXMLSample (name, definition, models, isParam) {
FILE: chapter03 -- hello-cloud/hello-consumer/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 28) | @EnableDiscoveryClient
method main (line 33) | public static void main(String[] args) {
FILE: chapter03 -- hello-cloud/hello-consumer/src/main/java/com/cd826dong/clouddemo/consumer/api/HelloConsumerEndpoint.java
class HelloConsumerEndpoint (line 30) | @RestController
method hello (line 40) | @RequestMapping(value = "/{name}", method = RequestMethod.GET)
FILE: chapter03 -- hello-cloud/hello-consumer/src/main/java/com/cd826dong/clouddemo/consumer/service/HelloService.java
type HelloService (line 28) | @FeignClient(value = "HP-SERVICE", fallback = HelloServiceFallback.class)
method hello (line 30) | @RequestMapping(value = "/hello/{name}", method = RequestMethod.GET)
FILE: chapter03 -- hello-cloud/hello-consumer/src/main/java/com/cd826dong/clouddemo/consumer/service/HelloServiceFallback.java
class HelloServiceFallback (line 24) | @Component
method hello (line 26) | public String hello(String name) {
FILE: chapter03 -- hello-cloud/hello-provider/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 28) | @EnableDiscoveryClient
method main (line 31) | public static void main(String[] args) {
FILE: chapter03 -- hello-cloud/hello-provider/src/main/java/com/cd826dong/clouddemo/provider/api/HelloProviderEndpoint.java
class HelloProviderEndpoint (line 25) | @RestController
method hello (line 32) | @RequestMapping(value = "/{name}", method = RequestMethod.GET)
FILE: chapter03 -- hello-cloud/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableEurekaServer
method main (line 31) | public static void main(String[] args) {
FILE: chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 28) | @EnableDiscoveryClient
method main (line 32) | public static void main(String[] args) {
FILE: chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java
class ProductCommentDto (line 31) | public class ProductCommentDto implements Serializable {
method ProductCommentDto (line 42) | public ProductCommentDto() {
method ProductCommentDto (line 46) | public ProductCommentDto(ProductComment productComment) {
method toString (line 52) | @Override
method toStringHelper (line 57) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 65) | public Long getId() {
method setId (line 68) | public void setId(Long id) {
method getProduct (line 72) | public Product getProduct() {
method setProduct (line 75) | public void setProduct(Product product) {
method getAuthor (line 79) | public UserDto getAuthor() {
method setAuthor (line 82) | public void setAuthor(UserDto author) {
method getContent (line 86) | public String getContent() {
method setContent (line 89) | public void setContent(String content) {
method getCreated (line 93) | public Date getCreated() {
method setCreated (line 96) | public void setCreated(Date created) {
FILE: chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java
class ProductEndpoint (line 39) | @RestController
method list (line 56) | @RequestMapping(method = RequestMethod.GET)
method detail (line 66) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method comments (line 76) | @RequestMapping(value = "/{id}/comments", method = RequestMethod.GET)
method loadUserByFeign (line 90) | public UserDto loadUserByFeign(Long userId) {
FILE: chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java
class UserDto (line 27) | public class UserDto implements Serializable {
method UserDto (line 38) | public UserDto() {
method UserDto (line 42) | public UserDto(Long id, String nickname, String avatar) {
method toString (line 48) | @Override
method toStringHelper (line 53) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 61) | public Long getId() {
method setId (line 64) | public void setId(Long id) {
method getNickname (line 68) | public String getNickname() {
method setNickname (line 71) | public void setNickname(String nickname) {
method getAvatar (line 75) | public String getAvatar() {
method setAvatar (line 78) | public void setAvatar(String avatar) {
method getUserServicePort (line 82) | public int getUserServicePort() {
method setUserServicePort (line 85) | public void setUserServicePort(int userServicePort) {
FILE: chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java
class Product (line 31) | @Entity
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getName (line 66) | public String getName() {
method setName (line 69) | public void setName(String name) {
method getCoverImage (line 73) | public String getCoverImage() {
method setCoverImage (line 76) | public void setCoverImage(String coverImage) {
method getPrice (line 80) | public int getPrice() {
method setPrice (line 83) | public void setPrice(int price) {
FILE: chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java
class ProductComment (line 32) | @Entity
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getProductId (line 67) | public Long getProductId() {
method setProductId (line 70) | public void setProductId(Long productId) {
method getAuthorId (line 74) | public Long getAuthorId() {
method setAuthorId (line 77) | public void setAuthorId(Long authorId) {
method getContent (line 81) | public String getContent() {
method setContent (line 84) | public void setContent(String content) {
method getCreated (line 88) | public Date getCreated() {
method setCreated (line 91) | public void setCreated(Date created) {
FILE: chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java
type ProductCommentRepository (line 28) | public interface ProductCommentRepository extends JpaRepository<ProductC...
method findByProductIdOrderByCreated (line 29) | List<ProductComment> findByProductIdOrderByCreated(Long productId);
FILE: chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java
type ProductRepository (line 26) | public interface ProductRepository extends JpaRepository<Product, Long> {
FILE: chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/service/UserService.java
type UserService (line 31) | @FeignClient("USERSERVICE")
method findAll (line 33) | @RequestMapping(value = "/users", method = RequestMethod.GET)
method load (line 36) | @RequestMapping(value = "/users/{id}", method = RequestMethod.GET)
FILE: chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter04 -- eureka-cluster/product-service/src/main/resources/schema.sql
type tbProduct (line 7) | create table tbProduct
type tbProduct_Comment (line 16) | create table tbProduct_Comment
FILE: chapter04 -- eureka-cluster/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableEurekaServer
method main (line 31) | public static void main(String[] args) {
FILE: chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableDiscoveryClient
method main (line 31) | public static void main(String[] args) {
FILE: chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java
class UserDto (line 28) | public class UserDto implements Serializable {
method UserDto (line 39) | public UserDto() {
method UserDto (line 43) | public UserDto(User user, int userServicePort) {
method toString (line 50) | @Override
method toStringHelper (line 55) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 63) | public Long getId() {
method setId (line 66) | public void setId(Long id) {
method getNickname (line 70) | public String getNickname() {
method setNickname (line 73) | public void setNickname(String nickname) {
method getAvatar (line 77) | public String getAvatar() {
method setAvatar (line 80) | public void setAvatar(String avatar) {
method getUserServicePort (line 84) | public int getUserServicePort() {
method setUserServicePort (line 87) | public void setUserServicePort(int userServicePort) {
FILE: chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java
class UserEndpoint (line 28) | @RestController
method findAll (line 38) | @RequestMapping(method = RequestMethod.GET)
method detail (line 48) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method update (line 58) | @RequestMapping(value = "/{id}", method = RequestMethod.POST)
method delete (line 68) | @RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
FILE: chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java
class User (line 31) | @Entity
method toString (line 44) | @Override
method toStringHelper (line 49) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 57) | public Long getId() {
method setId (line 60) | public void setId(Long id) {
method getNickname (line 64) | public String getNickname() {
method setNickname (line 67) | public void setNickname(String nickname) {
method getAvatar (line 71) | public String getAvatar() {
method setAvatar (line 74) | public void setAvatar(String avatar) {
FILE: chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java
type UserRepository (line 26) | public interface UserRepository extends JpaRepository<User, Long>, UserR...
FILE: chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryEx.java
type UserRepositoryEx (line 27) | public interface UserRepositoryEx {
method findTopUser (line 28) | List<User> findTopUser(int maxResult);
FILE: chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryImpl.java
class UserRepositoryImpl (line 30) | public class UserRepositoryImpl implements UserRepositoryEx {
method findTopUser (line 34) | public List<User> findTopUser(int maxResult) {
FILE: chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java
class UserService (line 33) | @Service
method findAll (line 40) | public List<UserDto> findAll() {
method load (line 47) | public UserDto load(Long id) {
method save (line 55) | public UserDto save(UserDto userDto) {
method delete (line 67) | public void delete(Long id) {
FILE: chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter04 -- eureka-cluster/user-service/src/main/resources/schema.sql
type tbUser (line 6) | create table tbUser
FILE: chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 28) | @EnableDiscoveryClient
method main (line 32) | public static void main(String[] args) {
FILE: chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java
class ProductCommentDto (line 31) | public class ProductCommentDto implements Serializable {
method ProductCommentDto (line 42) | public ProductCommentDto() {
method ProductCommentDto (line 46) | public ProductCommentDto(ProductComment productComment) {
method toString (line 52) | @Override
method toStringHelper (line 57) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 65) | public Long getId() {
method setId (line 68) | public void setId(Long id) {
method getProduct (line 72) | public Product getProduct() {
method setProduct (line 75) | public void setProduct(Product product) {
method getAuthor (line 79) | public UserDto getAuthor() {
method setAuthor (line 82) | public void setAuthor(UserDto author) {
method getContent (line 86) | public String getContent() {
method setContent (line 89) | public void setContent(String content) {
method getCreated (line 93) | public Date getCreated() {
method setCreated (line 96) | public void setCreated(Date created) {
FILE: chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java
class ProductEndpoint (line 39) | @RestController
method list (line 56) | @RequestMapping(method = RequestMethod.GET)
method detail (line 66) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method comments (line 76) | @RequestMapping(value = "/{id}/comments", method = RequestMethod.GET)
method loadUserByFeign (line 90) | public UserDto loadUserByFeign(Long userId) {
FILE: chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java
class UserDto (line 27) | public class UserDto implements Serializable {
method UserDto (line 38) | public UserDto() {
method UserDto (line 42) | public UserDto(Long id, String nickname, String avatar) {
method toString (line 48) | @Override
method toStringHelper (line 53) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 61) | public Long getId() {
method setId (line 64) | public void setId(Long id) {
method getNickname (line 68) | public String getNickname() {
method setNickname (line 71) | public void setNickname(String nickname) {
method getAvatar (line 75) | public String getAvatar() {
method setAvatar (line 78) | public void setAvatar(String avatar) {
method getUserServicePort (line 82) | public int getUserServicePort() {
method setUserServicePort (line 85) | public void setUserServicePort(int userServicePort) {
FILE: chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java
class Product (line 31) | @Entity
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getName (line 66) | public String getName() {
method setName (line 69) | public void setName(String name) {
method getCoverImage (line 73) | public String getCoverImage() {
method setCoverImage (line 76) | public void setCoverImage(String coverImage) {
method getPrice (line 80) | public int getPrice() {
method setPrice (line 83) | public void setPrice(int price) {
FILE: chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java
class ProductComment (line 32) | @Entity
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getProductId (line 67) | public Long getProductId() {
method setProductId (line 70) | public void setProductId(Long productId) {
method getAuthorId (line 74) | public Long getAuthorId() {
method setAuthorId (line 77) | public void setAuthorId(Long authorId) {
method getContent (line 81) | public String getContent() {
method setContent (line 84) | public void setContent(String content) {
method getCreated (line 88) | public Date getCreated() {
method setCreated (line 91) | public void setCreated(Date created) {
FILE: chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java
type ProductCommentRepository (line 28) | public interface ProductCommentRepository extends JpaRepository<ProductC...
method findByProductIdOrderByCreated (line 29) | List<ProductComment> findByProductIdOrderByCreated(Long productId);
FILE: chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java
type ProductRepository (line 26) | public interface ProductRepository extends JpaRepository<Product, Long> {
FILE: chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/service/UserService.java
type UserService (line 31) | @FeignClient("USERSERVICE")
method findAll (line 33) | @RequestMapping(value = "/users", method = RequestMethod.GET)
method load (line 36) | @RequestMapping(value = "/users/{id}", method = RequestMethod.GET)
FILE: chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter04 -- eureka-feign/product-service/src/main/resources/schema.sql
type tbProduct (line 7) | create table tbProduct
type tbProduct_Comment (line 16) | create table tbProduct_Comment
FILE: chapter04 -- eureka-feign/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableEurekaServer
method main (line 31) | public static void main(String[] args) {
FILE: chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableDiscoveryClient
method main (line 31) | public static void main(String[] args) {
FILE: chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java
class UserDto (line 28) | public class UserDto implements Serializable {
method UserDto (line 39) | public UserDto() {
method UserDto (line 43) | public UserDto(User user, int userServicePort) {
method toString (line 50) | @Override
method toStringHelper (line 55) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 63) | public Long getId() {
method setId (line 66) | public void setId(Long id) {
method getNickname (line 70) | public String getNickname() {
method setNickname (line 73) | public void setNickname(String nickname) {
method getAvatar (line 77) | public String getAvatar() {
method setAvatar (line 80) | public void setAvatar(String avatar) {
method getUserServicePort (line 84) | public int getUserServicePort() {
method setUserServicePort (line 87) | public void setUserServicePort(int userServicePort) {
FILE: chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java
class UserEndpoint (line 28) | @RestController
method findAll (line 38) | @RequestMapping(method = RequestMethod.GET)
method detail (line 48) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method update (line 58) | @RequestMapping(value = "/{id}", method = RequestMethod.POST)
method delete (line 68) | @RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
FILE: chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java
class User (line 31) | @Entity
method toString (line 44) | @Override
method toStringHelper (line 49) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 57) | public Long getId() {
method setId (line 60) | public void setId(Long id) {
method getNickname (line 64) | public String getNickname() {
method setNickname (line 67) | public void setNickname(String nickname) {
method getAvatar (line 71) | public String getAvatar() {
method setAvatar (line 74) | public void setAvatar(String avatar) {
FILE: chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java
type UserRepository (line 26) | public interface UserRepository extends JpaRepository<User, Long>, UserR...
FILE: chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryEx.java
type UserRepositoryEx (line 27) | public interface UserRepositoryEx {
method findTopUser (line 28) | List<User> findTopUser(int maxResult);
FILE: chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryImpl.java
class UserRepositoryImpl (line 30) | public class UserRepositoryImpl implements UserRepositoryEx {
method findTopUser (line 34) | public List<User> findTopUser(int maxResult) {
FILE: chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java
class UserService (line 33) | @Service
method findAll (line 40) | public List<UserDto> findAll() {
method load (line 47) | public UserDto load(Long id) {
method save (line 55) | public UserDto save(UserDto userDto) {
method delete (line 67) | public void delete(Long id) {
FILE: chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter04 -- eureka-feign/user-service/src/main/resources/schema.sql
type tbUser (line 6) | create table tbUser
FILE: chapter04 -- eureka-ribbon/product-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 31) | @EnableDiscoveryClient
method restTemplate (line 35) | @Bean(value = "restTemplate")
method main (line 41) | public static void main(String[] args) {
FILE: chapter04 -- eureka-ribbon/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java
class ProductCommentDto (line 31) | public class ProductCommentDto implements Serializable {
method ProductCommentDto (line 42) | public ProductCommentDto() {
method ProductCommentDto (line 46) | public ProductCommentDto(ProductComment productComment) {
method toString (line 52) | @Override
method toStringHelper (line 57) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 65) | public Long getId() {
method setId (line 68) | public void setId(Long id) {
method getProduct (line 72) | public Product getProduct() {
method setProduct (line 75) | public void setProduct(Product product) {
method getAuthor (line 79) | public UserDto getAuthor() {
method setAuthor (line 82) | public void setAuthor(UserDto author) {
method getContent (line 86) | public String getContent() {
method setContent (line 89) | public void setContent(String content) {
method getCreated (line 93) | public Date getCreated() {
method setCreated (line 96) | public void setCreated(Date created) {
FILE: chapter04 -- eureka-ribbon/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java
class ProductEndpoint (line 40) | @RestController
method list (line 58) | @RequestMapping(method = RequestMethod.GET)
method detail (line 68) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method comments (line 78) | @RequestMapping(value = "/{id}/comments", method = RequestMethod.GET)
method loadUser (line 97) | protected UserDto loadUser(Long userId) {
FILE: chapter04 -- eureka-ribbon/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java
class UserDto (line 27) | public class UserDto implements Serializable {
method UserDto (line 38) | public UserDto() {
method UserDto (line 42) | public UserDto(Long id, String nickname, String avatar) {
method toString (line 48) | @Override
method toStringHelper (line 53) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 61) | public Long getId() {
method setId (line 64) | public void setId(Long id) {
method getNickname (line 68) | public String getNickname() {
method setNickname (line 71) | public void setNickname(String nickname) {
method getAvatar (line 75) | public String getAvatar() {
method setAvatar (line 78) | public void setAvatar(String avatar) {
method getUserServicePort (line 82) | public int getUserServicePort() {
method setUserServicePort (line 85) | public void setUserServicePort(int userServicePort) {
FILE: chapter04 -- eureka-ribbon/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java
class Product (line 31) | @Entity
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getName (line 66) | public String getName() {
method setName (line 69) | public void setName(String name) {
method getCoverImage (line 73) | public String getCoverImage() {
method setCoverImage (line 76) | public void setCoverImage(String coverImage) {
method getPrice (line 80) | public int getPrice() {
method setPrice (line 83) | public void setPrice(int price) {
FILE: chapter04 -- eureka-ribbon/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java
class ProductComment (line 32) | @Entity
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getProductId (line 67) | public Long getProductId() {
method setProductId (line 70) | public void setProductId(Long productId) {
method getAuthorId (line 74) | public Long getAuthorId() {
method setAuthorId (line 77) | public void setAuthorId(Long authorId) {
method getContent (line 81) | public String getContent() {
method setContent (line 84) | public void setContent(String content) {
method getCreated (line 88) | public Date getCreated() {
method setCreated (line 91) | public void setCreated(Date created) {
FILE: chapter04 -- eureka-ribbon/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java
type ProductCommentRepository (line 28) | public interface ProductCommentRepository extends JpaRepository<ProductC...
method findByProductIdOrderByCreated (line 29) | List<ProductComment> findByProductIdOrderByCreated(Long productId);
FILE: chapter04 -- eureka-ribbon/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java
type ProductRepository (line 26) | public interface ProductRepository extends JpaRepository<Product, Long> {
FILE: chapter04 -- eureka-ribbon/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter04 -- eureka-ribbon/product-service/src/main/resources/schema.sql
type tbProduct (line 7) | create table tbProduct
type tbProduct_Comment (line 16) | create table tbProduct_Comment
FILE: chapter04 -- eureka-ribbon/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableEurekaServer
method main (line 31) | public static void main(String[] args) {
FILE: chapter04 -- eureka-ribbon/user-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableDiscoveryClient
method main (line 31) | public static void main(String[] args) {
FILE: chapter04 -- eureka-ribbon/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java
class UserDto (line 28) | public class UserDto implements Serializable {
method UserDto (line 39) | public UserDto() {
method UserDto (line 43) | public UserDto(User user, int userServicePort) {
method toString (line 50) | @Override
method toStringHelper (line 55) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 63) | public Long getId() {
method setId (line 66) | public void setId(Long id) {
method getNickname (line 70) | public String getNickname() {
method setNickname (line 73) | public void setNickname(String nickname) {
method getAvatar (line 77) | public String getAvatar() {
method setAvatar (line 80) | public void setAvatar(String avatar) {
method getUserServicePort (line 84) | public int getUserServicePort() {
method setUserServicePort (line 87) | public void setUserServicePort(int userServicePort) {
FILE: chapter04 -- eureka-ribbon/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java
class UserEndpoint (line 28) | @RestController
method findAll (line 38) | @RequestMapping(method = RequestMethod.GET)
method detail (line 48) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method update (line 58) | @RequestMapping(value = "/{id}", method = RequestMethod.POST)
method delete (line 68) | @RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
FILE: chapter04 -- eureka-ribbon/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java
class User (line 31) | @Entity
method toString (line 44) | @Override
method toStringHelper (line 49) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 57) | public Long getId() {
method setId (line 60) | public void setId(Long id) {
method getNickname (line 64) | public String getNickname() {
method setNickname (line 67) | public void setNickname(String nickname) {
method getAvatar (line 71) | public String getAvatar() {
method setAvatar (line 74) | public void setAvatar(String avatar) {
FILE: chapter04 -- eureka-ribbon/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java
type UserRepository (line 26) | public interface UserRepository extends JpaRepository<User, Long>, UserR...
FILE: chapter04 -- eureka-ribbon/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryEx.java
type UserRepositoryEx (line 27) | public interface UserRepositoryEx {
method findTopUser (line 28) | List<User> findTopUser(int maxResult);
FILE: chapter04 -- eureka-ribbon/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryImpl.java
class UserRepositoryImpl (line 30) | public class UserRepositoryImpl implements UserRepositoryEx {
method findTopUser (line 34) | public List<User> findTopUser(int maxResult) {
FILE: chapter04 -- eureka-ribbon/user-service/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java
class UserService (line 33) | @Service
method findAll (line 40) | public List<UserDto> findAll() {
method load (line 47) | public UserDto load(Long id) {
method save (line 55) | public UserDto save(UserDto userDto) {
method delete (line 67) | public void delete(Long id) {
FILE: chapter04 -- eureka-ribbon/user-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter04 -- eureka-ribbon/user-service/src/main/resources/schema.sql
type tbUser (line 6) | create table tbUser
FILE: chapter04 -- eureka-ribbonex/product-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 31) | @EnableDiscoveryClient
method restTemplate (line 34) | @Bean(value = "restTemplate")
method lbcRestTemplate (line 40) | @Primary
method main (line 46) | public static void main(String[] args) {
FILE: chapter04 -- eureka-ribbonex/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java
class ProductCommentDto (line 31) | public class ProductCommentDto implements Serializable {
method ProductCommentDto (line 42) | public ProductCommentDto() {
method ProductCommentDto (line 46) | public ProductCommentDto(ProductComment productComment) {
method toString (line 52) | @Override
method toStringHelper (line 57) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 65) | public Long getId() {
method setId (line 68) | public void setId(Long id) {
method getProduct (line 72) | public Product getProduct() {
method setProduct (line 75) | public void setProduct(Product product) {
method getAuthor (line 79) | public UserDto getAuthor() {
method setAuthor (line 82) | public void setAuthor(UserDto author) {
method getContent (line 86) | public String getContent() {
method setContent (line 89) | public void setContent(String content) {
method getCreated (line 93) | public Date getCreated() {
method setCreated (line 96) | public void setCreated(Date created) {
FILE: chapter04 -- eureka-ribbonex/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java
class ProductEndpoint (line 43) | @RestController
method list (line 68) | @RequestMapping(method = RequestMethod.GET)
method detail (line 78) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method comments (line 88) | @RequestMapping(value = "/{id}/comments", method = RequestMethod.GET)
method loadUser (line 107) | protected UserDto loadUser(Long userId) {
method loadUserEx (line 115) | public UserDto loadUserEx(Long userId) {
FILE: chapter04 -- eureka-ribbonex/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java
class UserDto (line 27) | public class UserDto implements Serializable {
method UserDto (line 38) | public UserDto() {
method UserDto (line 42) | public UserDto(Long id, String nickname, String avatar) {
method toString (line 48) | @Override
method toStringHelper (line 53) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 61) | public Long getId() {
method setId (line 64) | public void setId(Long id) {
method getNickname (line 68) | public String getNickname() {
method setNickname (line 71) | public void setNickname(String nickname) {
method getAvatar (line 75) | public String getAvatar() {
method setAvatar (line 78) | public void setAvatar(String avatar) {
method getUserServicePort (line 82) | public int getUserServicePort() {
method setUserServicePort (line 85) | public void setUserServicePort(int userServicePort) {
FILE: chapter04 -- eureka-ribbonex/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java
class Product (line 31) | @Entity
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getName (line 66) | public String getName() {
method setName (line 69) | public void setName(String name) {
method getCoverImage (line 73) | public String getCoverImage() {
method setCoverImage (line 76) | public void setCoverImage(String coverImage) {
method getPrice (line 80) | public int getPrice() {
method setPrice (line 83) | public void setPrice(int price) {
FILE: chapter04 -- eureka-ribbonex/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java
class ProductComment (line 32) | @Entity
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getProductId (line 67) | public Long getProductId() {
method setProductId (line 70) | public void setProductId(Long productId) {
method getAuthorId (line 74) | public Long getAuthorId() {
method setAuthorId (line 77) | public void setAuthorId(Long authorId) {
method getContent (line 81) | public String getContent() {
method setContent (line 84) | public void setContent(String content) {
method getCreated (line 88) | public Date getCreated() {
method setCreated (line 91) | public void setCreated(Date created) {
FILE: chapter04 -- eureka-ribbonex/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java
type ProductCommentRepository (line 28) | public interface ProductCommentRepository extends JpaRepository<ProductC...
method findByProductIdOrderByCreated (line 29) | List<ProductComment> findByProductIdOrderByCreated(Long productId);
FILE: chapter04 -- eureka-ribbonex/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java
type ProductRepository (line 26) | public interface ProductRepository extends JpaRepository<Product, Long> {
FILE: chapter04 -- eureka-ribbonex/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter04 -- eureka-ribbonex/product-service/src/main/java/com/cd826dong/ribbon/RibbonConfiguration.java
class RibbonConfiguration (line 20) | @Configuration
FILE: chapter04 -- eureka-ribbonex/product-service/src/main/java/com/cd826dong/ribbon/UserRibbonConfiguration.java
class UserRibbonConfiguration (line 26) | @Configuration
method ribbonServerList (line 31) | @Bean
method ribbonPing (line 42) | @Bean
method ribbonRule (line 47) | @Bean
FILE: chapter04 -- eureka-ribbonex/product-service/src/main/resources/schema.sql
type tbProduct (line 7) | create table tbProduct
type tbProduct_Comment (line 16) | create table tbProduct_Comment
FILE: chapter04 -- eureka-ribbonex/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableEurekaServer
method main (line 31) | public static void main(String[] args) {
FILE: chapter04 -- eureka-ribbonex/user-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableDiscoveryClient
method main (line 31) | public static void main(String[] args) {
FILE: chapter04 -- eureka-ribbonex/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java
class UserDto (line 28) | public class UserDto implements Serializable {
method UserDto (line 39) | public UserDto() {
method UserDto (line 43) | public UserDto(User user, int userServicePort) {
method toString (line 50) | @Override
method toStringHelper (line 55) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 63) | public Long getId() {
method setId (line 66) | public void setId(Long id) {
method getNickname (line 70) | public String getNickname() {
method setNickname (line 73) | public void setNickname(String nickname) {
method getAvatar (line 77) | public String getAvatar() {
method setAvatar (line 80) | public void setAvatar(String avatar) {
method getUserServicePort (line 84) | public int getUserServicePort() {
method setUserServicePort (line 87) | public void setUserServicePort(int userServicePort) {
FILE: chapter04 -- eureka-ribbonex/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java
class UserEndpoint (line 28) | @RestController
method findAll (line 38) | @RequestMapping(method = RequestMethod.GET)
method detail (line 48) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method update (line 58) | @RequestMapping(value = "/{id}", method = RequestMethod.POST)
method delete (line 68) | @RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
FILE: chapter04 -- eureka-ribbonex/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java
class User (line 31) | @Entity
method toString (line 44) | @Override
method toStringHelper (line 49) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 57) | public Long getId() {
method setId (line 60) | public void setId(Long id) {
method getNickname (line 64) | public String getNickname() {
method setNickname (line 67) | public void setNickname(String nickname) {
method getAvatar (line 71) | public String getAvatar() {
method setAvatar (line 74) | public void setAvatar(String avatar) {
FILE: chapter04 -- eureka-ribbonex/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java
type UserRepository (line 26) | public interface UserRepository extends JpaRepository<User, Long>, UserR...
FILE: chapter04 -- eureka-ribbonex/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryEx.java
type UserRepositoryEx (line 27) | public interface UserRepositoryEx {
method findTopUser (line 28) | List<User> findTopUser(int maxResult);
FILE: chapter04 -- eureka-ribbonex/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryImpl.java
class UserRepositoryImpl (line 30) | public class UserRepositoryImpl implements UserRepositoryEx {
method findTopUser (line 34) | public List<User> findTopUser(int maxResult) {
FILE: chapter04 -- eureka-ribbonex/user-service/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java
class UserService (line 33) | @Service
method findAll (line 40) | public List<UserDto> findAll() {
method load (line 47) | public UserDto load(Long id) {
method save (line 55) | public UserDto save(UserDto userDto) {
method delete (line 67) | public void delete(Long id) {
FILE: chapter04 -- eureka-ribbonex/user-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter04 -- eureka-ribbonex/user-service/src/main/resources/schema.sql
type tbUser (line 6) | create table tbUser
FILE: chapter04 -- eureka-security/product-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 28) | @EnableDiscoveryClient
method main (line 32) | public static void main(String[] args) {
FILE: chapter04 -- eureka-security/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java
class ProductCommentDto (line 31) | public class ProductCommentDto implements Serializable {
method ProductCommentDto (line 42) | public ProductCommentDto() {
method ProductCommentDto (line 46) | public ProductCommentDto(ProductComment productComment) {
method toString (line 52) | @Override
method toStringHelper (line 57) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 65) | public Long getId() {
method setId (line 68) | public void setId(Long id) {
method getProduct (line 72) | public Product getProduct() {
method setProduct (line 75) | public void setProduct(Product product) {
method getAuthor (line 79) | public UserDto getAuthor() {
method setAuthor (line 82) | public void setAuthor(UserDto author) {
method getContent (line 86) | public String getContent() {
method setContent (line 89) | public void setContent(String content) {
method getCreated (line 93) | public Date getCreated() {
method setCreated (line 96) | public void setCreated(Date created) {
FILE: chapter04 -- eureka-security/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java
class ProductEndpoint (line 39) | @RestController
method list (line 56) | @RequestMapping(method = RequestMethod.GET)
method detail (line 66) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method comments (line 76) | @RequestMapping(value = "/{id}/comments", method = RequestMethod.GET)
method loadUserByFeign (line 90) | public UserDto loadUserByFeign(Long userId) {
FILE: chapter04 -- eureka-security/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java
class UserDto (line 27) | public class UserDto implements Serializable {
method UserDto (line 38) | public UserDto() {
method UserDto (line 42) | public UserDto(Long id, String nickname, String avatar) {
method toString (line 48) | @Override
method toStringHelper (line 53) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 61) | public Long getId() {
method setId (line 64) | public void setId(Long id) {
method getNickname (line 68) | public String getNickname() {
method setNickname (line 71) | public void setNickname(String nickname) {
method getAvatar (line 75) | public String getAvatar() {
method setAvatar (line 78) | public void setAvatar(String avatar) {
method getUserServicePort (line 82) | public int getUserServicePort() {
method setUserServicePort (line 85) | public void setUserServicePort(int userServicePort) {
FILE: chapter04 -- eureka-security/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java
class Product (line 31) | @Entity
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getName (line 66) | public String getName() {
method setName (line 69) | public void setName(String name) {
method getCoverImage (line 73) | public String getCoverImage() {
method setCoverImage (line 76) | public void setCoverImage(String coverImage) {
method getPrice (line 80) | public int getPrice() {
method setPrice (line 83) | public void setPrice(int price) {
FILE: chapter04 -- eureka-security/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java
class ProductComment (line 32) | @Entity
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getProductId (line 67) | public Long getProductId() {
method setProductId (line 70) | public void setProductId(Long productId) {
method getAuthorId (line 74) | public Long getAuthorId() {
method setAuthorId (line 77) | public void setAuthorId(Long authorId) {
method getContent (line 81) | public String getContent() {
method setContent (line 84) | public void setContent(String content) {
method getCreated (line 88) | public Date getCreated() {
method setCreated (line 91) | public void setCreated(Date created) {
FILE: chapter04 -- eureka-security/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java
type ProductCommentRepository (line 28) | public interface ProductCommentRepository extends JpaRepository<ProductC...
method findByProductIdOrderByCreated (line 29) | List<ProductComment> findByProductIdOrderByCreated(Long productId);
FILE: chapter04 -- eureka-security/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java
type ProductRepository (line 26) | public interface ProductRepository extends JpaRepository<Product, Long> {
FILE: chapter04 -- eureka-security/product-service/src/main/java/com/cd826dong/clouddemo/product/service/UserService.java
type UserService (line 31) | @FeignClient("USERSERVICE")
method findAll (line 33) | @RequestMapping(value = "/users", method = RequestMethod.GET)
method load (line 36) | @RequestMapping(value = "/users/{id}", method = RequestMethod.GET)
FILE: chapter04 -- eureka-security/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter04 -- eureka-security/product-service/src/main/resources/schema.sql
type tbProduct (line 7) | create table tbProduct
type tbProduct_Comment (line 16) | create table tbProduct_Comment
FILE: chapter04 -- eureka-security/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableEurekaServer
method main (line 31) | public static void main(String[] args) {
FILE: chapter04 -- eureka-security/user-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableDiscoveryClient
method main (line 31) | public static void main(String[] args) {
FILE: chapter04 -- eureka-security/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java
class UserDto (line 28) | public class UserDto implements Serializable {
method UserDto (line 39) | public UserDto() {
method UserDto (line 43) | public UserDto(User user, int userServicePort) {
method toString (line 50) | @Override
method toStringHelper (line 55) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 63) | public Long getId() {
method setId (line 66) | public void setId(Long id) {
method getNickname (line 70) | public String getNickname() {
method setNickname (line 73) | public void setNickname(String nickname) {
method getAvatar (line 77) | public String getAvatar() {
method setAvatar (line 80) | public void setAvatar(String avatar) {
method getUserServicePort (line 84) | public int getUserServicePort() {
method setUserServicePort (line 87) | public void setUserServicePort(int userServicePort) {
FILE: chapter04 -- eureka-security/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java
class UserEndpoint (line 28) | @RestController
method findAll (line 38) | @RequestMapping(method = RequestMethod.GET)
method detail (line 48) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method update (line 58) | @RequestMapping(value = "/{id}", method = RequestMethod.POST)
method delete (line 68) | @RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
FILE: chapter04 -- eureka-security/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java
class User (line 31) | @Entity
method toString (line 44) | @Override
method toStringHelper (line 49) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 57) | public Long getId() {
method setId (line 60) | public void setId(Long id) {
method getNickname (line 64) | public String getNickname() {
method setNickname (line 67) | public void setNickname(String nickname) {
method getAvatar (line 71) | public String getAvatar() {
method setAvatar (line 74) | public void setAvatar(String avatar) {
FILE: chapter04 -- eureka-security/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java
type UserRepository (line 26) | public interface UserRepository extends JpaRepository<User, Long>, UserR...
FILE: chapter04 -- eureka-security/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryEx.java
type UserRepositoryEx (line 27) | public interface UserRepositoryEx {
method findTopUser (line 28) | List<User> findTopUser(int maxResult);
FILE: chapter04 -- eureka-security/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryImpl.java
class UserRepositoryImpl (line 30) | public class UserRepositoryImpl implements UserRepositoryEx {
method findTopUser (line 34) | public List<User> findTopUser(int maxResult) {
FILE: chapter04 -- eureka-security/user-service/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java
class UserService (line 33) | @Service
method findAll (line 40) | public List<UserDto> findAll() {
method load (line 47) | public UserDto load(Long id) {
method save (line 55) | public UserDto save(UserDto userDto) {
method delete (line 67) | public void delete(Long id) {
FILE: chapter04 -- eureka-security/user-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter04 -- eureka-security/user-service/src/main/resources/schema.sql
type tbUser (line 6) | create table tbUser
FILE: chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 29) | @EnableDiscoveryClient
method restTemplate (line 32) | @Bean(value = "restTemplate")
method main (line 37) | public static void main(String[] args) {
FILE: chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java
class ProductCommentDto (line 31) | public class ProductCommentDto implements Serializable {
method ProductCommentDto (line 42) | public ProductCommentDto() {
method ProductCommentDto (line 46) | public ProductCommentDto(ProductComment productComment) {
method toString (line 52) | @Override
method toStringHelper (line 57) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 65) | public Long getId() {
method setId (line 68) | public void setId(Long id) {
method getProduct (line 72) | public Product getProduct() {
method setProduct (line 75) | public void setProduct(Product product) {
method getAuthor (line 79) | public UserDto getAuthor() {
method setAuthor (line 82) | public void setAuthor(UserDto author) {
method getContent (line 86) | public String getContent() {
method setContent (line 89) | public void setContent(String content) {
method getCreated (line 93) | public Date getCreated() {
method setCreated (line 96) | public void setCreated(Date created) {
FILE: chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java
class ProductEndpoint (line 40) | @RestController
method list (line 58) | @RequestMapping(method = RequestMethod.GET)
method detail (line 68) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method comments (line 78) | @RequestMapping(value = "/{id}/comments", method = RequestMethod.GET)
method loadUser (line 97) | protected UserDto loadUser(Long userId) {
FILE: chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java
class UserDto (line 27) | public class UserDto implements Serializable {
method UserDto (line 36) | public UserDto() {
method UserDto (line 40) | public UserDto(Long id, String nickname, String avatar) {
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getNickname (line 66) | public String getNickname() {
method setNickname (line 69) | public void setNickname(String nickname) {
method getAvatar (line 73) | public String getAvatar() {
method setAvatar (line 76) | public void setAvatar(String avatar) {
FILE: chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java
class Product (line 31) | @Entity
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getName (line 66) | public String getName() {
method setName (line 69) | public void setName(String name) {
method getCoverImage (line 73) | public String getCoverImage() {
method setCoverImage (line 76) | public void setCoverImage(String coverImage) {
method getPrice (line 80) | public int getPrice() {
method setPrice (line 83) | public void setPrice(int price) {
FILE: chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java
class ProductComment (line 32) | @Entity
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getProductId (line 67) | public Long getProductId() {
method setProductId (line 70) | public void setProductId(Long productId) {
method getAuthorId (line 74) | public Long getAuthorId() {
method setAuthorId (line 77) | public void setAuthorId(Long authorId) {
method getContent (line 81) | public String getContent() {
method setContent (line 84) | public void setContent(String content) {
method getCreated (line 88) | public Date getCreated() {
method setCreated (line 91) | public void setCreated(Date created) {
FILE: chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java
type ProductCommentRepository (line 28) | public interface ProductCommentRepository extends JpaRepository<ProductC...
method findByProductIdOrderByCreated (line 29) | List<ProductComment> findByProductIdOrderByCreated(Long productId);
FILE: chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java
type ProductRepository (line 26) | public interface ProductRepository extends JpaRepository<Product, Long> {
FILE: chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter04 -- eureka/product-service/src/main/resources/schema.sql
type tbProduct (line 7) | create table tbProduct
type tbProduct_Comment (line 16) | create table tbProduct_Comment
FILE: chapter04 -- eureka/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableEurekaServer
method main (line 31) | public static void main(String[] args) {
FILE: chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableDiscoveryClient
method main (line 31) | public static void main(String[] args) {
FILE: chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java
class UserDto (line 28) | public class UserDto implements Serializable {
method UserDto (line 37) | public UserDto() {
method UserDto (line 41) | public UserDto(User user) {
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getNickname (line 67) | public String getNickname() {
method setNickname (line 70) | public void setNickname(String nickname) {
method getAvatar (line 74) | public String getAvatar() {
method setAvatar (line 77) | public void setAvatar(String avatar) {
FILE: chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java
class UserEndpoint (line 28) | @RestController
method findAll (line 38) | @RequestMapping(method = RequestMethod.GET)
method detail (line 48) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method update (line 58) | @RequestMapping(value = "/{id}", method = RequestMethod.POST)
method delete (line 68) | @RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
FILE: chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java
class User (line 31) | @Entity
method toString (line 44) | @Override
method toStringHelper (line 49) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 57) | public Long getId() {
method setId (line 60) | public void setId(Long id) {
method getNickname (line 64) | public String getNickname() {
method setNickname (line 67) | public void setNickname(String nickname) {
method getAvatar (line 71) | public String getAvatar() {
method setAvatar (line 74) | public void setAvatar(String avatar) {
FILE: chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java
type UserRepository (line 26) | public interface UserRepository extends JpaRepository<User, Long>, UserR...
FILE: chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryEx.java
type UserRepositoryEx (line 27) | public interface UserRepositoryEx {
method findTopUser (line 28) | List<User> findTopUser(int maxResult);
FILE: chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryImpl.java
class UserRepositoryImpl (line 30) | public class UserRepositoryImpl implements UserRepositoryEx {
method findTopUser (line 34) | public List<User> findTopUser(int maxResult) {
FILE: chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java
class UserService (line 33) | @Service
method findAll (line 38) | public List<UserDto> findAll() {
method load (line 45) | public UserDto load(Long id) {
method save (line 53) | public UserDto save(UserDto userDto) {
method delete (line 65) | public void delete(Long id) {
FILE: chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter04 -- eureka/user-service/src/main/resources/schema.sql
type tbUser (line 6) | create table tbUser
FILE: chapter05 -- hystrix-feign/product-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 29) | @EnableCircuitBreaker
method main (line 35) | public static void main(String[] args) {
FILE: chapter05 -- hystrix-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java
class ProductCommentDto (line 31) | public class ProductCommentDto implements Serializable {
method ProductCommentDto (line 42) | public ProductCommentDto() {
method ProductCommentDto (line 46) | public ProductCommentDto(ProductComment productComment) {
method toString (line 52) | @Override
method toStringHelper (line 57) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 65) | public Long getId() {
method setId (line 68) | public void setId(Long id) {
method getProduct (line 72) | public Product getProduct() {
method setProduct (line 75) | public void setProduct(Product product) {
method getAuthor (line 79) | public UserDto getAuthor() {
method setAuthor (line 82) | public void setAuthor(UserDto author) {
method getContent (line 86) | public String getContent() {
method setContent (line 89) | public void setContent(String content) {
method getCreated (line 93) | public Date getCreated() {
method setCreated (line 96) | public void setCreated(Date created) {
FILE: chapter05 -- hystrix-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java
class ProductEndpoint (line 37) | @RestController
method list (line 51) | @RequestMapping(method = RequestMethod.GET)
method detail (line 56) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method comments (line 61) | @RequestMapping(value = "/{id}/comments", method = RequestMethod.GET)
FILE: chapter05 -- hystrix-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java
class UserDto (line 27) | public class UserDto implements Serializable {
method UserDto (line 36) | public UserDto() {
method UserDto (line 40) | public UserDto(Long id, String nickname, String avatar) {
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getNickname (line 66) | public String getNickname() {
method setNickname (line 69) | public void setNickname(String nickname) {
method getAvatar (line 73) | public String getAvatar() {
method setAvatar (line 76) | public void setAvatar(String avatar) {
FILE: chapter05 -- hystrix-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java
class Product (line 31) | @Entity
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getName (line 66) | public String getName() {
method setName (line 69) | public void setName(String name) {
method getCoverImage (line 73) | public String getCoverImage() {
method setCoverImage (line 76) | public void setCoverImage(String coverImage) {
method getPrice (line 80) | public int getPrice() {
method setPrice (line 83) | public void setPrice(int price) {
FILE: chapter05 -- hystrix-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java
class ProductComment (line 32) | @Entity
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getProductId (line 67) | public Long getProductId() {
method setProductId (line 70) | public void setProductId(Long productId) {
method getAuthorId (line 74) | public Long getAuthorId() {
method setAuthorId (line 77) | public void setAuthorId(Long authorId) {
method getContent (line 81) | public String getContent() {
method setContent (line 84) | public void setContent(String content) {
method getCreated (line 88) | public Date getCreated() {
method setCreated (line 91) | public void setCreated(Date created) {
FILE: chapter05 -- hystrix-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java
type ProductCommentRepository (line 28) | public interface ProductCommentRepository extends JpaRepository<ProductC...
method findByProductIdOrderByCreated (line 29) | List<ProductComment> findByProductIdOrderByCreated(Long productId);
FILE: chapter05 -- hystrix-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java
type ProductRepository (line 26) | public interface ProductRepository extends JpaRepository<Product, Long> {
FILE: chapter05 -- hystrix-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/service/UserService.java
type UserService (line 31) | @FeignClient(name = "USERSERVICE", fallback = UserServiceFallback.class)
method findAll (line 33) | @RequestMapping(value = "/users", method = RequestMethod.GET)
method load (line 36) | @RequestMapping(value = "/users/{id}", method = RequestMethod.GET)
FILE: chapter05 -- hystrix-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/service/UserServiceFallback.java
class UserServiceFallback (line 29) | @Component
method findAll (line 32) | @Override
method load (line 37) | @Override
method findAllFallback (line 42) | protected List<UserDto> findAllFallback() {
method loadFallback (line 51) | protected UserDto loadFallback(Long id) {
FILE: chapter05 -- hystrix-feign/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter05 -- hystrix-feign/product-service/src/main/resources/schema.sql
type tbProduct (line 7) | create table tbProduct
type tbProduct_Comment (line 16) | create table tbProduct_Comment
FILE: chapter05 -- hystrix-feign/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableEurekaServer
method main (line 31) | public static void main(String[] args) {
FILE: chapter05 -- hystrix-feign/user-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableDiscoveryClient
method main (line 31) | public static void main(String[] args) {
FILE: chapter05 -- hystrix-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java
class UserDto (line 28) | public class UserDto implements Serializable {
method UserDto (line 37) | public UserDto() {
method UserDto (line 41) | public UserDto(User user) {
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getNickname (line 67) | public String getNickname() {
method setNickname (line 70) | public void setNickname(String nickname) {
method getAvatar (line 74) | public String getAvatar() {
method setAvatar (line 77) | public void setAvatar(String avatar) {
FILE: chapter05 -- hystrix-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java
class UserEndpoint (line 32) | @RestController
method list (line 42) | @RequestMapping(method = RequestMethod.GET)
method detail (line 52) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
FILE: chapter05 -- hystrix-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java
class User (line 31) | @Entity
method toString (line 44) | @Override
method toStringHelper (line 49) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 57) | public Long getId() {
method setId (line 60) | public void setId(Long id) {
method getNickname (line 64) | public String getNickname() {
method setNickname (line 67) | public void setNickname(String nickname) {
method getAvatar (line 71) | public String getAvatar() {
method setAvatar (line 74) | public void setAvatar(String avatar) {
FILE: chapter05 -- hystrix-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java
type UserRepository (line 26) | public interface UserRepository extends JpaRepository<User, Long> {
FILE: chapter05 -- hystrix-feign/user-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter05 -- hystrix-feign/user-service/src/main/resources/schema.sql
type tbUser (line 6) | create table tbUser
FILE: chapter05 -- hystrix/product-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 32) | @EnableHystrixDashboard
method main (line 38) | public static void main(String[] args) {
method restTemplate (line 42) | @Bean
FILE: chapter05 -- hystrix/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java
class ProductCommentDto (line 31) | public class ProductCommentDto implements Serializable {
method ProductCommentDto (line 42) | public ProductCommentDto() {
method ProductCommentDto (line 46) | public ProductCommentDto(ProductComment productComment) {
method toString (line 52) | @Override
method toStringHelper (line 57) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 65) | public Long getId() {
method setId (line 68) | public void setId(Long id) {
method getProduct (line 72) | public Product getProduct() {
method setProduct (line 75) | public void setProduct(Product product) {
method getAuthor (line 79) | public UserDto getAuthor() {
method setAuthor (line 82) | public void setAuthor(UserDto author) {
method getContent (line 86) | public String getContent() {
method setContent (line 89) | public void setContent(String content) {
method getCreated (line 93) | public Date getCreated() {
method setCreated (line 96) | public void setCreated(Date created) {
FILE: chapter05 -- hystrix/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java
class ProductEndpoint (line 37) | @RestController
method list (line 51) | @RequestMapping(method = RequestMethod.GET)
method detail (line 56) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method comments (line 61) | @RequestMapping(value = "/{id}/comments", method = RequestMethod.GET)
method userList (line 80) | @RequestMapping(value = "/users",method = RequestMethod.GET)
FILE: chapter05 -- hystrix/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java
class UserDto (line 27) | public class UserDto implements Serializable {
method UserDto (line 36) | public UserDto() {
method UserDto (line 40) | public UserDto(Long id, String nickname, String avatar) {
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getNickname (line 66) | public String getNickname() {
method setNickname (line 69) | public void setNickname(String nickname) {
method getAvatar (line 73) | public String getAvatar() {
method setAvatar (line 76) | public void setAvatar(String avatar) {
FILE: chapter05 -- hystrix/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java
class Product (line 31) | @Entity
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getName (line 66) | public String getName() {
method setName (line 69) | public void setName(String name) {
method getCoverImage (line 73) | public String getCoverImage() {
method setCoverImage (line 76) | public void setCoverImage(String coverImage) {
method getPrice (line 80) | public int getPrice() {
method setPrice (line 83) | public void setPrice(int price) {
FILE: chapter05 -- hystrix/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java
class ProductComment (line 32) | @Entity
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getProductId (line 67) | public Long getProductId() {
method setProductId (line 70) | public void setProductId(Long productId) {
method getAuthorId (line 74) | public Long getAuthorId() {
method setAuthorId (line 77) | public void setAuthorId(Long authorId) {
method getContent (line 81) | public String getContent() {
method setContent (line 84) | public void setContent(String content) {
method getCreated (line 88) | public Date getCreated() {
method setCreated (line 91) | public void setCreated(Date created) {
FILE: chapter05 -- hystrix/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java
type ProductCommentRepository (line 28) | public interface ProductCommentRepository extends JpaRepository<ProductC...
method findByProductIdOrderByCreated (line 29) | List<ProductComment> findByProductIdOrderByCreated(Long productId);
FILE: chapter05 -- hystrix/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java
type ProductRepository (line 26) | public interface ProductRepository extends JpaRepository<Product, Long> {
FILE: chapter05 -- hystrix/product-service/src/main/java/com/cd826dong/clouddemo/product/service/UserService.java
type UserService (line 27) | public interface UserService {
method findAll (line 28) | List<UserDto> findAll();
method load (line 30) | UserDto load(Long id);
FILE: chapter05 -- hystrix/product-service/src/main/java/com/cd826dong/clouddemo/product/service/UserServiceImpl.java
class UserServiceImpl (line 33) | @Service
method findAll (line 38) | @Override
method load (line 46) | @Override
method findAllFallback (line 54) | protected List<UserDto> findAllFallback() {
method loadFallback (line 63) | protected UserDto loadFallback(Long id) {
FILE: chapter05 -- hystrix/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter05 -- hystrix/product-service/src/main/resources/schema.sql
type tbProduct (line 7) | create table tbProduct
type tbProduct_Comment (line 16) | create table tbProduct_Comment
FILE: chapter05 -- hystrix/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableEurekaServer
method main (line 31) | public static void main(String[] args) {
FILE: chapter05 -- hystrix/turbine-server/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 28) | @EnableTurbine
method main (line 33) | public static void main(String[] args) {
FILE: chapter05 -- hystrix/user-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableDiscoveryClient
method main (line 31) | public static void main(String[] args) {
FILE: chapter05 -- hystrix/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java
class UserDto (line 28) | public class UserDto implements Serializable {
method UserDto (line 37) | public UserDto() {
method UserDto (line 41) | public UserDto(User user) {
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getNickname (line 67) | public String getNickname() {
method setNickname (line 70) | public void setNickname(String nickname) {
method getAvatar (line 74) | public String getAvatar() {
method setAvatar (line 77) | public void setAvatar(String avatar) {
FILE: chapter05 -- hystrix/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java
class UserEndpoint (line 32) | @RestController
method list (line 42) | @RequestMapping(method = RequestMethod.GET)
method detail (line 52) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
FILE: chapter05 -- hystrix/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java
class User (line 31) | @Entity
method toString (line 44) | @Override
method toStringHelper (line 49) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 57) | public Long getId() {
method setId (line 60) | public void setId(Long id) {
method getNickname (line 64) | public String getNickname() {
method setNickname (line 67) | public void setNickname(String nickname) {
method getAvatar (line 71) | public String getAvatar() {
method setAvatar (line 74) | public void setAvatar(String avatar) {
FILE: chapter05 -- hystrix/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java
type UserRepository (line 26) | public interface UserRepository extends JpaRepository<User, Long> {
FILE: chapter05 -- hystrix/user-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter05 -- hystrix/user-service/src/main/resources/schema.sql
type tbUser (line 6) | create table tbUser
FILE: chapter06 -- zuul/hystrix-dashboard/src/main/java/com/cd826dong/clouddemo/hystrix/Application.java
class Application (line 27) | @EnableHystrixDashboard
method main (line 31) | public static void main(String[] args) {
FILE: chapter06 -- zuul/product-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 31) | @EnableFeignClients
method restTemplate (line 36) | @Bean(value = "restTemplate")
method main (line 41) | public static void main(String[] args) {
FILE: chapter06 -- zuul/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java
class ProductCommentDto (line 31) | public class ProductCommentDto implements Serializable {
method ProductCommentDto (line 42) | public ProductCommentDto() {
method ProductCommentDto (line 46) | public ProductCommentDto(ProductComment productComment) {
method toString (line 52) | @Override
method toStringHelper (line 57) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 65) | public Long getId() {
method setId (line 68) | public void setId(Long id) {
method getProduct (line 72) | public Product getProduct() {
method setProduct (line 75) | public void setProduct(Product product) {
method getAuthor (line 79) | public UserDto getAuthor() {
method setAuthor (line 82) | public void setAuthor(UserDto author) {
method getContent (line 86) | public String getContent() {
method setContent (line 89) | public void setContent(String content) {
method getCreated (line 93) | public Date getCreated() {
method setCreated (line 96) | public void setCreated(Date created) {
FILE: chapter06 -- zuul/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java
class ProductEndpoint (line 39) | @RestController
method list (line 55) | @RequestMapping(method = RequestMethod.GET)
method detail (line 60) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method comments (line 65) | @RequestMapping(value = "/{id}/comments", method = RequestMethod.GET)
method loadUser (line 84) | protected UserDto loadUser(Long userId) {
FILE: chapter06 -- zuul/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java
class UserDto (line 27) | public class UserDto implements Serializable {
method UserDto (line 38) | public UserDto() {
method UserDto (line 42) | public UserDto(Long id, String nickname, String avatar) {
method toString (line 48) | @Override
method toStringHelper (line 53) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 61) | public Long getId() {
method setId (line 64) | public void setId(Long id) {
method getNickname (line 68) | public String getNickname() {
method setNickname (line 71) | public void setNickname(String nickname) {
method getAvatar (line 75) | public String getAvatar() {
method setAvatar (line 78) | public void setAvatar(String avatar) {
method getUserServicePort (line 82) | public int getUserServicePort() {
method setUserServicePort (line 85) | public void setUserServicePort(int userServicePort) {
FILE: chapter06 -- zuul/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java
class Product (line 31) | @Entity
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getName (line 66) | public String getName() {
method setName (line 69) | public void setName(String name) {
method getCoverImage (line 73) | public String getCoverImage() {
method setCoverImage (line 76) | public void setCoverImage(String coverImage) {
method getPrice (line 80) | public int getPrice() {
method setPrice (line 83) | public void setPrice(int price) {
FILE: chapter06 -- zuul/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java
class ProductComment (line 32) | @Entity
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getProductId (line 67) | public Long getProductId() {
method setProductId (line 70) | public void setProductId(Long productId) {
method getAuthorId (line 74) | public Long getAuthorId() {
method setAuthorId (line 77) | public void setAuthorId(Long authorId) {
method getContent (line 81) | public String getContent() {
method setContent (line 84) | public void setContent(String content) {
method getCreated (line 88) | public Date getCreated() {
method setCreated (line 91) | public void setCreated(Date created) {
FILE: chapter06 -- zuul/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java
type ProductCommentRepository (line 28) | public interface ProductCommentRepository extends JpaRepository<ProductC...
method findByProductIdOrderByCreated (line 29) | List<ProductComment> findByProductIdOrderByCreated(Long productId);
FILE: chapter06 -- zuul/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java
type ProductRepository (line 26) | public interface ProductRepository extends JpaRepository<Product, Long> {
FILE: chapter06 -- zuul/product-service/src/main/java/com/cd826dong/clouddemo/product/service/UserService.java
type UserService (line 31) | @FeignClient("USERSERVICE")
method findAll (line 33) | @RequestMapping(value = "/users", method = RequestMethod.GET)
method load (line 36) | @RequestMapping(value = "/users/{id}", method = RequestMethod.GET)
FILE: chapter06 -- zuul/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter06 -- zuul/product-service/src/main/resources/schema.sql
type tbProduct (line 7) | create table tbProduct
type tbProduct_Comment (line 16) | create table tbProduct_Comment
FILE: chapter06 -- zuul/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableEurekaServer
method main (line 31) | public static void main(String[] args) {
FILE: chapter06 -- zuul/user-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableDiscoveryClient
method main (line 31) | public static void main(String[] args) {
FILE: chapter06 -- zuul/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java
class UserDto (line 28) | public class UserDto implements Serializable {
method UserDto (line 39) | public UserDto() {
method UserDto (line 43) | public UserDto(User user, int userServicePort) {
method toString (line 50) | @Override
method toStringHelper (line 55) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 63) | public Long getId() {
method setId (line 66) | public void setId(Long id) {
method getNickname (line 70) | public String getNickname() {
method setNickname (line 73) | public void setNickname(String nickname) {
method getAvatar (line 77) | public String getAvatar() {
method setAvatar (line 80) | public void setAvatar(String avatar) {
method getUserServicePort (line 84) | public int getUserServicePort() {
method setUserServicePort (line 87) | public void setUserServicePort(int userServicePort) {
FILE: chapter06 -- zuul/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java
class UserEndpoint (line 31) | @RestController
method findAll (line 41) | @RequestMapping(method = RequestMethod.GET)
method detail (line 51) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
FILE: chapter06 -- zuul/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java
class User (line 31) | @Entity
method toString (line 44) | @Override
method toStringHelper (line 49) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 57) | public Long getId() {
method setId (line 60) | public void setId(Long id) {
method getNickname (line 64) | public String getNickname() {
method setNickname (line 67) | public void setNickname(String nickname) {
method getAvatar (line 71) | public String getAvatar() {
method setAvatar (line 74) | public void setAvatar(String avatar) {
FILE: chapter06 -- zuul/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java
type UserRepository (line 26) | public interface UserRepository extends JpaRepository<User, Long> {
FILE: chapter06 -- zuul/user-service/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java
class UserService (line 33) | @Service
method findAll (line 40) | public List<UserDto> findAll() {
method load (line 47) | public UserDto load(Long id) {
method save (line 55) | public UserDto save(UserDto userDto) {
method delete (line 67) | public void delete(Long id) {
FILE: chapter06 -- zuul/user-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter06 -- zuul/user-service/src/main/resources/schema.sql
type tbUser (line 6) | create table tbUser
FILE: chapter06 -- zuul/zuul-server/src/main/java/com/cd826dong/clouddemo/zuul/Application.java
class Application (line 27) | @EnableZuulProxy
method main (line 31) | public static void main(String[] args) {
FILE: chapter06 -- zuul/zuul-server/src/main/java/com/cd826dong/clouddemo/zuul/fallback/UserServiceFallbackProvider.java
class UserServiceFallbackProvider (line 34) | @Component
method getRoute (line 37) | @Override
method fallbackResponse (line 44) | @Override
FILE: chapter07 -- config/config-server/src/main/java/com/cd826dong/clouddemo/config/Application.java
class Application (line 28) | @SpringBootApplication
method main (line 33) | public static void main(String[] args) {
FILE: chapter07 -- config/product-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 30) | @EnableDiscoveryClient
method main (line 35) | public static void main(String[] args) {
FILE: chapter07 -- config/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ConfigTestEndpoint.java
class ConfigTestEndpoint (line 27) | @RestController
method foo (line 33) | @RequestMapping(value = "/foo")
FILE: chapter07 -- config/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java
class ProductCommentDto (line 31) | public class ProductCommentDto implements Serializable {
method ProductCommentDto (line 42) | public ProductCommentDto() {
method ProductCommentDto (line 46) | public ProductCommentDto(ProductComment productComment) {
method toString (line 52) | @Override
method toStringHelper (line 57) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 65) | public Long getId() {
method setId (line 68) | public void setId(Long id) {
method getProduct (line 72) | public Product getProduct() {
method setProduct (line 75) | public void setProduct(Product product) {
method getAuthor (line 79) | public UserDto getAuthor() {
method setAuthor (line 82) | public void setAuthor(UserDto author) {
method getContent (line 86) | public String getContent() {
method setContent (line 89) | public void setContent(String content) {
method getCreated (line 93) | public Date getCreated() {
method setCreated (line 96) | public void setCreated(Date created) {
FILE: chapter07 -- config/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java
class ProductEndpoint (line 40) | @RestController
method list (line 58) | @RequestMapping(method = RequestMethod.GET)
method detail (line 69) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method comments (line 79) | @RequestMapping(value = "/{id}/comments", method = RequestMethod.GET)
method loadUserByFeign (line 93) | public UserDto loadUserByFeign(Long userId) {
FILE: chapter07 -- config/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java
class UserDto (line 27) | public class UserDto implements Serializable {
method UserDto (line 38) | public UserDto() {
method UserDto (line 42) | public UserDto(Long id, String nickname, String avatar) {
method toString (line 48) | @Override
method toStringHelper (line 53) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 61) | public Long getId() {
method setId (line 64) | public void setId(Long id) {
method getNickname (line 68) | public String getNickname() {
method setNickname (line 71) | public void setNickname(String nickname) {
method getAvatar (line 75) | public String getAvatar() {
method setAvatar (line 78) | public void setAvatar(String avatar) {
method getUserServicePort (line 82) | public int getUserServicePort() {
method setUserServicePort (line 85) | public void setUserServicePort(int userServicePort) {
FILE: chapter07 -- config/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java
class Product (line 31) | @Entity
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getName (line 66) | public String getName() {
method setName (line 69) | public void setName(String name) {
method getCoverImage (line 73) | public String getCoverImage() {
method setCoverImage (line 76) | public void setCoverImage(String coverImage) {
method getPrice (line 80) | public int getPrice() {
method setPrice (line 83) | public void setPrice(int price) {
FILE: chapter07 -- config/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java
class ProductComment (line 32) | @Entity
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getProductId (line 67) | public Long getProductId() {
method setProductId (line 70) | public void setProductId(Long productId) {
method getAuthorId (line 74) | public Long getAuthorId() {
method setAuthorId (line 77) | public void setAuthorId(Long authorId) {
method getContent (line 81) | public String getContent() {
method setContent (line 84) | public void setContent(String content) {
method getCreated (line 88) | public Date getCreated() {
method setCreated (line 91) | public void setCreated(Date created) {
FILE: chapter07 -- config/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java
type ProductCommentRepository (line 28) | public interface ProductCommentRepository extends JpaRepository<ProductC...
method findByProductIdOrderByCreated (line 29) | List<ProductComment> findByProductIdOrderByCreated(Long productId);
FILE: chapter07 -- config/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java
type ProductRepository (line 26) | public interface ProductRepository extends JpaRepository<Product, Long> {
FILE: chapter07 -- config/product-service/src/main/java/com/cd826dong/clouddemo/product/service/UserService.java
type UserService (line 31) | @FeignClient("USERSERVICE")
method findAll (line 33) | @RequestMapping(value = "/users", method = RequestMethod.GET)
method load (line 36) | @RequestMapping(value = "/users/{id}", method = RequestMethod.GET)
FILE: chapter07 -- config/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter07 -- config/product-service/src/main/resources/schema.sql
type tbProduct (line 7) | create table tbProduct
type tbProduct_Comment (line 16) | create table tbProduct_Comment
FILE: chapter07 -- config/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableEurekaServer
method main (line 31) | public static void main(String[] args) {
FILE: chapter07 -- config/user-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableDiscoveryClient
method main (line 31) | public static void main(String[] args) {
FILE: chapter07 -- config/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java
class UserDto (line 28) | public class UserDto implements Serializable {
method UserDto (line 39) | public UserDto() {
method UserDto (line 43) | public UserDto(User user, int userServicePort) {
method toString (line 50) | @Override
method toStringHelper (line 55) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 63) | public Long getId() {
method setId (line 66) | public void setId(Long id) {
method getNickname (line 70) | public String getNickname() {
method setNickname (line 73) | public void setNickname(String nickname) {
method getAvatar (line 77) | public String getAvatar() {
method setAvatar (line 80) | public void setAvatar(String avatar) {
method getUserServicePort (line 84) | public int getUserServicePort() {
method setUserServicePort (line 87) | public void setUserServicePort(int userServicePort) {
FILE: chapter07 -- config/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java
class UserEndpoint (line 28) | @RestController
method findAll (line 38) | @RequestMapping(method = RequestMethod.GET)
method detail (line 48) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method update (line 58) | @RequestMapping(value = "/{id}", method = RequestMethod.POST)
method delete (line 68) | @RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
FILE: chapter07 -- config/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java
class User (line 31) | @Entity
method toString (line 44) | @Override
method toStringHelper (line 49) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 57) | public Long getId() {
method setId (line 60) | public void setId(Long id) {
method getNickname (line 64) | public String getNickname() {
method setNickname (line 67) | public void setNickname(String nickname) {
method getAvatar (line 71) | public String getAvatar() {
method setAvatar (line 74) | public void setAvatar(String avatar) {
FILE: chapter07 -- config/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java
type UserRepository (line 26) | public interface UserRepository extends JpaRepository<User, Long>, UserR...
FILE: chapter07 -- config/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryEx.java
type UserRepositoryEx (line 27) | public interface UserRepositoryEx {
method findTopUser (line 28) | List<User> findTopUser(int maxResult);
FILE: chapter07 -- config/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryImpl.java
class UserRepositoryImpl (line 30) | public class UserRepositoryImpl implements UserRepositoryEx {
method findTopUser (line 34) | public List<User> findTopUser(int maxResult) {
FILE: chapter07 -- config/user-service/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java
class UserService (line 33) | @Service
method findAll (line 40) | public List<UserDto> findAll() {
method load (line 47) | public UserDto load(Long id) {
method save (line 55) | public UserDto save(UserDto userDto) {
method delete (line 67) | public void delete(Long id) {
FILE: chapter07 -- config/user-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter07 -- config/user-service/src/main/resources/schema.sql
type tbUser (line 6) | create table tbUser
FILE: chapter08 -- sleuth/product-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 28) | @EnableFeignClients
method main (line 33) | public static void main(String[] args) {
FILE: chapter08 -- sleuth/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java
class ProductCommentDto (line 31) | public class ProductCommentDto implements Serializable {
method ProductCommentDto (line 42) | public ProductCommentDto() {
method ProductCommentDto (line 46) | public ProductCommentDto(ProductComment productComment) {
method toString (line 52) | @Override
method toStringHelper (line 57) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 65) | public Long getId() {
method setId (line 68) | public void setId(Long id) {
method getProduct (line 72) | public Product getProduct() {
method setProduct (line 75) | public void setProduct(Product product) {
method getAuthor (line 79) | public UserDto getAuthor() {
method setAuthor (line 82) | public void setAuthor(UserDto author) {
method getContent (line 86) | public String getContent() {
method setContent (line 89) | public void setContent(String content) {
method getCreated (line 93) | public Date getCreated() {
method setCreated (line 96) | public void setCreated(Date created) {
FILE: chapter08 -- sleuth/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java
class ProductEndpoint (line 37) | @RestController
method list (line 51) | @RequestMapping(method = RequestMethod.GET)
method detail (line 56) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method comments (line 61) | @RequestMapping(value = "/{id}/comments", method = RequestMethod.GET)
FILE: chapter08 -- sleuth/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java
class UserDto (line 27) | public class UserDto implements Serializable {
method UserDto (line 36) | public UserDto() {
method UserDto (line 40) | public UserDto(Long id, String nickname, String avatar) {
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getNickname (line 66) | public String getNickname() {
method setNickname (line 69) | public void setNickname(String nickname) {
method getAvatar (line 73) | public String getAvatar() {
method setAvatar (line 76) | public void setAvatar(String avatar) {
FILE: chapter08 -- sleuth/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java
class Product (line 31) | @Entity
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getName (line 66) | public String getName() {
method setName (line 69) | public void setName(String name) {
method getCoverImage (line 73) | public String getCoverImage() {
method setCoverImage (line 76) | public void setCoverImage(String coverImage) {
method getPrice (line 80) | public int getPrice() {
method setPrice (line 83) | public void setPrice(int price) {
FILE: chapter08 -- sleuth/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java
class ProductComment (line 32) | @Entity
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getProductId (line 67) | public Long getProductId() {
method setProductId (line 70) | public void setProductId(Long productId) {
method getAuthorId (line 74) | public Long getAuthorId() {
method setAuthorId (line 77) | public void setAuthorId(Long authorId) {
method getContent (line 81) | public String getContent() {
method setContent (line 84) | public void setContent(String content) {
method getCreated (line 88) | public Date getCreated() {
method setCreated (line 91) | public void setCreated(Date created) {
FILE: chapter08 -- sleuth/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java
type ProductCommentRepository (line 28) | public interface ProductCommentRepository extends JpaRepository<ProductC...
method findByProductIdOrderByCreated (line 29) | List<ProductComment> findByProductIdOrderByCreated(Long productId);
FILE: chapter08 -- sleuth/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java
type ProductRepository (line 26) | public interface ProductRepository extends JpaRepository<Product, Long> {
FILE: chapter08 -- sleuth/product-service/src/main/java/com/cd826dong/clouddemo/product/service/UserService.java
type UserService (line 31) | @FeignClient("USERSERVICE")
method findAll (line 33) | @RequestMapping(value = "/users", method = RequestMethod.GET)
method load (line 36) | @RequestMapping(value = "/users/{id}", method = RequestMethod.GET)
FILE: chapter08 -- sleuth/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter08 -- sleuth/product-service/src/main/resources/schema.sql
type tbProduct (line 7) | create table tbProduct
type tbProduct_Comment (line 16) | create table tbProduct_Comment
FILE: chapter08 -- sleuth/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableEurekaServer
method main (line 31) | public static void main(String[] args) {
FILE: chapter08 -- sleuth/user-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableDiscoveryClient
method main (line 31) | public static void main(String[] args) {
FILE: chapter08 -- sleuth/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java
class UserDto (line 28) | public class UserDto implements Serializable {
method UserDto (line 37) | public UserDto() {
method UserDto (line 41) | public UserDto(User user) {
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getNickname (line 67) | public String getNickname() {
method setNickname (line 70) | public void setNickname(String nickname) {
method getAvatar (line 74) | public String getAvatar() {
method setAvatar (line 77) | public void setAvatar(String avatar) {
FILE: chapter08 -- sleuth/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java
class UserEndpoint (line 32) | @RestController
method list (line 42) | @RequestMapping(method = RequestMethod.GET)
method detail (line 52) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
FILE: chapter08 -- sleuth/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java
class User (line 31) | @Entity
method toString (line 44) | @Override
method toStringHelper (line 49) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 57) | public Long getId() {
method setId (line 60) | public void setId(Long id) {
method getNickname (line 64) | public String getNickname() {
method setNickname (line 67) | public void setNickname(String nickname) {
method getAvatar (line 71) | public String getAvatar() {
method setAvatar (line 74) | public void setAvatar(String avatar) {
FILE: chapter08 -- sleuth/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java
type UserRepository (line 26) | public interface UserRepository extends JpaRepository<User, Long> {
FILE: chapter08 -- sleuth/user-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter08 -- sleuth/user-service/src/main/resources/schema.sql
type tbUser (line 6) | create table tbUser
FILE: chapter08 -- sleuth/zipkin-server/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableZipkinServer
method main (line 31) | public static void main(String[] args) {
FILE: chapter08 -- sleuth/zuul-server/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 28) | @EnableZuulProxy
method main (line 33) | public static void main(String[] args) {
FILE: chapter08 -- sleuth/zuul-server/src/main/java/com/cd826dong/clouddemo/filters/TraceIdFilter.java
class TraceIdFilter (line 29) | @Component
method filterType (line 37) | @Override
method filterOrder (line 42) | @Override
method shouldFilter (line 47) | @Override
method run (line 52) | @Override
FILE: chapter09 -- stream/config-server/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 28) | @SpringBootApplication
method main (line 33) | public static void main(String[] args) {
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 31) | @EnableFeignClients
method main (line 39) | public static void main(String[] args) {
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/bus/MyBusEvent.java
class MyBusEvent (line 26) | public class MyBusEvent extends RemoteApplicationEvent {
method MyBusEvent (line 33) | public MyBusEvent() {
method MyBusEvent (line 37) | public MyBusEvent(Object source, String originService, String destinat...
method MyBusEvent (line 42) | public MyBusEvent(String eventType) {
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getEventType (line 59) | public String getEventType() {
method setEventType (line 62) | public void setEventType(String eventType) {
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ConfigTestEndpoint.java
class ConfigTestEndpoint (line 27) | @RestController
method foo (line 31) | @RequestMapping(value = "/foo")
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java
class ProductCommentDto (line 31) | public class ProductCommentDto implements Serializable {
method ProductCommentDto (line 42) | public ProductCommentDto() {
method ProductCommentDto (line 46) | public ProductCommentDto(ProductComment productComment) {
method toString (line 52) | @Override
method toStringHelper (line 57) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 65) | public Long getId() {
method setId (line 68) | public void setId(Long id) {
method getProduct (line 72) | public Product getProduct() {
method setProduct (line 75) | public void setProduct(Product product) {
method getAuthor (line 79) | public UserDto getAuthor() {
method setAuthor (line 82) | public void setAuthor(UserDto author) {
method getContent (line 86) | public String getContent() {
method setContent (line 89) | public void setContent(String content) {
method getCreated (line 93) | public Date getCreated() {
method setCreated (line 96) | public void setCreated(Date created) {
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java
class ProductEndpoint (line 37) | @RestController
method list (line 51) | @RequestMapping(method = RequestMethod.GET)
method detail (line 56) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method comments (line 61) | @RequestMapping(value = "/{id}/comments", method = RequestMethod.GET)
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java
class UserDto (line 27) | public class UserDto implements Serializable {
method UserDto (line 36) | public UserDto() {
method UserDto (line 40) | public UserDto(Long id, String nickname, String avatar) {
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getNickname (line 66) | public String getNickname() {
method setNickname (line 69) | public void setNickname(String nickname) {
method getAvatar (line 73) | public String getAvatar() {
method setAvatar (line 76) | public void setAvatar(String avatar) {
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java
class Product (line 31) | @Entity
method toString (line 46) | @Override
method toStringHelper (line 51) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 59) | public Long getId() {
method setId (line 62) | public void setId(Long id) {
method getName (line 66) | public String getName() {
method setName (line 69) | public void setName(String name) {
method getCoverImage (line 73) | public String getCoverImage() {
method setCoverImage (line 76) | public void setCoverImage(String coverImage) {
method getPrice (line 80) | public int getPrice() {
method setPrice (line 83) | public void setPrice(int price) {
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java
class ProductComment (line 32) | @Entity
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getProductId (line 67) | public Long getProductId() {
method setProductId (line 70) | public void setProductId(Long productId) {
method getAuthorId (line 74) | public Long getAuthorId() {
method setAuthorId (line 77) | public void setAuthorId(Long authorId) {
method getContent (line 81) | public String getContent() {
method setContent (line 84) | public void setContent(String content) {
method getCreated (line 88) | public Date getCreated() {
method setCreated (line 91) | public void setCreated(Date created) {
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/mq/SpringCloudBookChannels.java
type SpringCloudBookChannels (line 27) | public interface SpringCloudBookChannels {
method userMsgs (line 28) | @Input("inboundUserMsg")
method userMsgSender (line 31) | @Output("inboundUserMsg")
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/mq/UserMsg.java
class UserMsg (line 25) | public class UserMsg {
method UserMsg (line 35) | public UserMsg() { }
method UserMsg (line 37) | public UserMsg(String action, Long userId, String traceId) {
method toString (line 44) | @Override
method toStringHelper (line 49) | protected MoreObjects.ToStringHelper toStringHelper() {
method getAction (line 56) | public String getAction() {
method setAction (line 59) | public void setAction(String action) {
method getUserId (line 63) | public Long getUserId() {
method setUserId (line 66) | public void setUserId(Long userId) {
method getTraceId (line 70) | public String getTraceId() {
method setTraceId (line 73) | public void setTraceId(String traceId) {
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/mq/UserMsgListener.java
class UserMsgListener (line 31) | @EnableBinding(SpringCloudBookChannels.class)
method onUserMsgSink (line 38) | @StreamListener("inboundUserMsg")
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/redis/RedisConfig.java
class RedisConfig (line 34) | @Configuration
method redisConnectionFactory (line 52) | @Bean
method buildRedisTemplate (line 73) | protected RedisTemplate buildRedisTemplate(RedisConnectionFactory redi...
method userRedisTemplate (line 81) | @Bean(name = "userRedisTemplate")
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/redis/repository/UserRedisRepository.java
class UserRedisRepository (line 33) | @Repository
method init (line 42) | @PostConstruct
method saveUser (line 52) | public void saveUser(UserDto userDto) {
method findOne (line 61) | public UserDto findOne(Long userId) {
method delete (line 73) | public void delete(Long userId) {
method buildKey (line 82) | protected String buildKey(Long userId) {
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java
type ProductCommentRepository (line 28) | public interface ProductCommentRepository extends JpaRepository<ProductC...
method findByProductIdOrderByCreated (line 29) | List<ProductComment> findByProductIdOrderByCreated(Long productId);
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java
type ProductRepository (line 26) | public interface ProductRepository extends JpaRepository<Product, Long> {
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/service/UserRemoteClient.java
type UserRemoteClient (line 31) | @FeignClient("USERSERVICE")
method load (line 33) | @RequestMapping(value = "/users/{id}", method = RequestMethod.GET)
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/service/UserService.java
type UserService (line 25) | public interface UserService {
method load (line 26) | UserDto load(Long id);
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/service/impl/MyBusEventListener.java
class MyBusEventListener (line 29) | @Component
method onApplicationEvent (line 33) | @Override
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/product/service/impl/UserServiceImpl.java
class UserServiceImpl (line 35) | @Service
method load (line 44) | @Override
method loadByRestTemplate (line 62) | public UserDto loadByRestTemplate(Long userId) {
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/util/ApplicationContextHolder.java
class ApplicationContextHolder (line 32) | @Component
method destroy (line 37) | @Override
method setApplicationContext (line 42) | @Override
method getApplicationContext (line 56) | public static ApplicationContext getApplicationContext() {
method clearHolder (line 64) | public static void clearHolder() {
method assertContextInjected (line 72) | private static void assertContextInjected() {
FILE: chapter09 -- stream/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java
class HibernatePhysicalNamingNamingStrategy (line 31) | @MappedSuperclass
method toPhysicalTableName (line 33) | @Override
method toPhysicalColumnName (line 38) | @Override
method convert (line 43) | private Identifier convert(Identifier identifier) {
FILE: chapter09 -- stream/product-service/src/main/resources/schema.sql
type tbProduct (line 7) | create table tbProduct
type tbProduct_Comment (line 16) | create table tbProduct_Comment
FILE: chapter09 -- stream/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 27) | @EnableEurekaServer
method main (line 31) | public static void main(String[] args) {
FILE: chapter09 -- stream/user-service/src/main/java/com/cd826dong/clouddemo/Application.java
class Application (line 30) | @EnableDiscoveryClient
method main (line 36) | public static void main(String[] args) {
FILE: chapter09 -- stream/user-service/src/main/java/com/cd826dong/clouddemo/bus/MyBusEvent.java
class MyBusEvent (line 26) | public class MyBusEvent extends RemoteApplicationEvent {
method MyBusEvent (line 33) | public MyBusEvent() {
method MyBusEvent (line 37) | public MyBusEvent(Object source, String originService, String destinat...
method toString (line 42) | @Override
method toStringHelper (line 47) | protected MoreObjects.ToStringHelper toStringHelper() {
method getEventType (line 54) | public String getEventType() {
method setEventType (line 57) | public void setEventType(String eventType) {
FILE: chapter09 -- stream/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java
class UserDto (line 28) | public class UserDto implements Serializable {
method UserDto (line 37) | public UserDto() {
method UserDto (line 41) | public UserDto(User user) {
method toString (line 47) | @Override
method toStringHelper (line 52) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 60) | public Long getId() {
method setId (line 63) | public void setId(Long id) {
method getNickname (line 67) | public String getNickname() {
method setNickname (line 70) | public void setNickname(String nickname) {
method getAvatar (line 74) | public String getAvatar() {
method setAvatar (line 77) | public void setAvatar(String avatar) {
FILE: chapter09 -- stream/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java
class UserEndpoint (line 28) | @RestController
method findAll (line 38) | @RequestMapping(method = RequestMethod.GET)
method detail (line 48) | @RequestMapping(value = "/{id}", method = RequestMethod.GET)
method update (line 58) | @RequestMapping(value = "/{id}", method = RequestMethod.POST)
method delete (line 68) | @RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
FILE: chapter09 -- stream/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEventEndpoint.java
class UserEventEndpoint (line 29) | @RestController
method publishEvent (line 39) | @RequestMapping(value = "/{eventType}", method = RequestMethod.POST)
FILE: chapter09 -- stream/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java
class User (line 31) | @Entity
method toString (line 44) | @Override
method toStringHelper (line 49) | protected MoreObjects.ToStringHelper toStringHelper() {
method getId (line 57) | public Long getId() {
method setId (line 60) | public void setId(Long id) {
method getNickname (line 64) | public String getNickname() {
method setNickname (line 67) | public void setNickname(String nickname) {
method getAvatar (line 71) | public String getAvatar() {
method setAvatar (line 74) | public void setAvatar(String avatar) {
FILE: chapter09 -- stream/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java
type UserRepository (line 26) | public interface UserRepository extends JpaRepository<User, Long> {
FILE: chapter09 -- stream/user-service/src/main/java/com/cd826dong/clouddemo/user/service/UserMsg.java
class UserMsg (line 25) | public class UserMsg {
method UserMsg (line 35) | public UserMsg() { }
method UserMsg (line 37) | public UserMsg(String action, Long userId, String traceId) {
method toString (line 44) | @Override
method toStringHelper (line 49) | protected MoreObjects.ToStringHelper toStringHelper() {
method getAction (line 56) | public String getAction() {
method setAction (line 59) | public void setAction(String action) {
method getUserId (line 63) | public Long getUserId() {
method setUserId (line 66) | public void setUserId(Long userId) {
method getTraceId (line 70) | public String getTraceId() {
method setTraceId (line 73) | public void setTraceId(String traceId) {
FILE: chapter09 -- stream/user-service/src/main/java/com/cd826dong/clouddemo/user/service/UserMsgSender.java
class UserMsgSender (line 30) | @Component
method UserMsgSender (line 36) | @Autowired
method sendMsg (line 41) | public void sendMsg(UserMsg userMsg) {
FILE: chapter09 -- stream/user-service/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java
class UserService (line 33) | @Service
me
Condensed preview — 782 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (4,225K chars).
[
{
"path": "README.md",
"chars": 167,
"preview": "# 《Spring Cloud微服务架构开发实战》配套源码\n\n---\n\n## 勘误表\n#### P295 \n\n``` java\n$ docker pull microserv/openjdk:1.0.0\n```\n\n应为:\n\n```java\n"
},
{
"path": "chapter02 -- boot/README.md",
"chars": 55,
"preview": "# chapter02. 微服务基础-Spring Boot\n\n这是微服务基础Spring Boot示例项目\n"
},
{
"path": "chapter02 -- boot/pom.xml",
"chars": 4417,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/Application.java",
"chars": 1048,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/config/Swagger2Config.java",
"chars": 1711,
"preview": "/**\n * Copyright (c) 2015 - 广州小橙信息科技有限公司\n * All rights reserved.\n *\n * Created on 2016-10-10\n */\npackage com.cd826dong.c"
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java",
"chars": 4461,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/dto/ProductCommentDto.java",
"chars": 3023,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/dto/ProductDto.java",
"chars": 2885,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java",
"chars": 2278,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java",
"chars": 2647,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java",
"chars": 992,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java",
"chars": 874,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/service/ProductService.java",
"chars": 1304,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/product/service/impl/ProductServiceImpl.java",
"chars": 1864,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java",
"chars": 4126,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/dto/UserDto.java",
"chars": 2421,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/entity/User.java",
"chars": 2304,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java",
"chars": 859,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java",
"chars": 1297,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/user/service/impl/UserServiceImpl.java",
"chars": 1986,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java",
"chars": 1831,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter02 -- boot/src/main/resources/.h2.server.properties",
"chars": 157,
"preview": "#H2 Server Properties\n#Mon Mar 06 13:35:06 CST 2017\n0=TestDB(Embedded)|org.h2.Driver|jdbc\\:h2\\:mem\\:testdb|sa\nwebAllowOt"
},
{
"path": "chapter02 -- boot/src/main/resources/application.properties",
"chars": 1464,
"preview": "server.port=8080\n\nlogging.level.org.springframework=INFO\nlogging.level.org.springframework.web=ERROR\nlogging.level.org.s"
},
{
"path": "chapter02 -- boot/src/main/resources/banner.txt",
"chars": 1800,
"preview": "=======================================================================================================================\n"
},
{
"path": "chapter02 -- boot/src/main/resources/data.sql",
"chars": 1328,
"preview": "-- 导入测试商品列表\ninsert into tbProduct (id, name, cover_image, price) values(1, '测试商品-001', '/products/cover/001.png', 100);\n"
},
{
"path": "chapter02 -- boot/src/main/resources/schema.sql",
"chars": 987,
"preview": "drop table if exists tbProduct;\ndrop table if exists tbProduct_Comment;\ndrop table if exists tbUser;\n\n-- 商品表\ncreate tabl"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/css/print.css",
"chars": 41666,
"preview": ".swagger-section pre code{display:block;padding:.5em;background:#f0f0f0}.swagger-section pre .clojure .built_in,.swagger"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/css/reset.css",
"chars": 773,
"preview": "a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,d"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/css/screen.css",
"chars": 43644,
"preview": ".swagger-section pre code{display:block;padding:.5em;background:#f0f0f0}.swagger-section pre .clojure .built_in,.swagger"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/css/style.css",
"chars": 3488,
"preview": ".swagger-section #header a#logo{font-size:1.5em;font-weight:700;text-decoration:none;padding:20px 0 20px 40px}#text-head"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/css/typography.css",
"chars": 0,
"preview": ""
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/index.html",
"chars": 4374,
"preview": "<!DOCTYPE html>\n<html>\n<head>\n <meta charset=\"UTF-8\">\n <meta http-equiv=\"x-ua-compatible\" content=\"IE=edge\">\n <title>"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/ca.js",
"chars": 2381,
"preview": "'use strict';\n\n/* jshint quotmark: double */\nwindow.SwaggerTranslator.learn({\n \"Warning: Deprecated\":\"Advertència: Ob"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/el.js",
"chars": 2565,
"preview": "'use strict';\n\n/* jshint quotmark: double */\nwindow.SwaggerTranslator.learn({\n \"Warning: Deprecated\":\"Προειδοποίηση: "
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/en.js",
"chars": 2342,
"preview": "'use strict';\n\n/* jshint quotmark: double */\nwindow.SwaggerTranslator.learn({\n \"Warning: Deprecated\":\"Warning: Deprec"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/es.js",
"chars": 2448,
"preview": "'use strict';\n\n/* jshint quotmark: double */\nwindow.SwaggerTranslator.learn({\n \"Warning: Deprecated\":\"Advertencia: Ob"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/fr.js",
"chars": 2462,
"preview": "'use strict';\n\n/* jshint quotmark: double */\nwindow.SwaggerTranslator.learn({\n \"Warning: Deprecated\":\"Avertissement :"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/geo.js",
"chars": 2378,
"preview": "'use strict';\n\n/* jshint quotmark: double */\nwindow.SwaggerTranslator.learn({\n \"Warning: Deprecated\":\"ყურადღება: აღარ"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/it.js",
"chars": 2430,
"preview": "'use strict';\n\n/* jshint quotmark: double */\nwindow.SwaggerTranslator.learn({\n \"Warning: Deprecated\":\"Attenzione: Dep"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/ja.js",
"chars": 1965,
"preview": "'use strict';\n\n/* jshint quotmark: double */\nwindow.SwaggerTranslator.learn({\n \"Warning: Deprecated\":\"警告: 廃止予定\",\n "
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/ko-kr.js",
"chars": 1800,
"preview": "'use strict';\n\n/* jshint quotmark: double */\nwindow.SwaggerTranslator.learn({\n \"Warning: Deprecated\":\"경고:폐기예정됨\",\n "
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/pl.js",
"chars": 2253,
"preview": "'use strict';\n\n/* jshint quotmark: double */\nwindow.SwaggerTranslator.learn({\n \"Warning: Deprecated\":\"Uwaga: Wycofane"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/pt.js",
"chars": 2279,
"preview": "'use strict';\n\n/* jshint quotmark: double */\nwindow.SwaggerTranslator.learn({\n \"Warning: Deprecated\":\"Aviso: Deprecia"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/ru.js",
"chars": 2361,
"preview": "'use strict';\n\n/* jshint quotmark: double */\nwindow.SwaggerTranslator.learn({\n \"Warning: Deprecated\":\"Предупреждение:"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/tr.js",
"chars": 2200,
"preview": "'use strict';\n\n/* jshint quotmark: double */\nwindow.SwaggerTranslator.learn({\n \"Warning: Deprecated\":\"Uyarı: Deprecat"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/translator.js",
"chars": 1421,
"preview": "'use strict';\n\n/**\n * Translator for documentation pages.\n *\n * To enable translation you should include one of language"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lang/zh-cn.js",
"chars": 1795,
"preview": "'use strict';\n\n/* jshint quotmark: double */\nwindow.SwaggerTranslator.learn({\n \"Warning: Deprecated\":\"警告:已过时\",\n \"I"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lib/backbone-min.js",
"chars": 19371,
"preview": "!function(t,e){if(\"function\"==typeof define&&define.amd)define([\"underscore\",\"jquery\",\"exports\"],function(i,n,s){t.Backb"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lib/es5-shim.js",
"chars": 22681,
"preview": "!function(t,e){\"use strict\";\"function\"==typeof define&&define.amd?define(e):\"object\"==typeof exports?module.exports=e():"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lib/handlebars-4.0.5.js",
"chars": 71504,
"preview": "!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.am"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lib/highlight.9.1.0.pack.js",
"chars": 10962,
"preview": "!function(e){\"undefined\"!=typeof exports?e(exports):(self.hljs=e({}),\"function\"==typeof define&&define.amd&&define(\"hljs"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lib/highlight.9.1.0.pack_extended.js",
"chars": 310,
"preview": "\"use strict\";!function(){var h,l;h=hljs.configure,hljs.configure=function(l){var i=l.highlightSizeThreshold;hljs.highlig"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lib/marked.js",
"chars": 15712,
"preview": "(function(){function e(e){this.tokens=[],this.tokens.links={},this.options=e||a.defaults,this.rules=p.normal,this.option"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lib/object-assign-pollyfill.js",
"chars": 349,
"preview": "\"function\"!=typeof Object.assign&&!function(){Object.assign=function(n){\"use strict\";if(void 0===n||null===n)throw new T"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/lib/swagger-oauth.js",
"chars": 7042,
"preview": "function handleLogin(){var e=[],o=window.swaggerUiAuth.authSchemes||window.swaggerUiAuth.securityDefinitions;if(o){var i"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/o2c.html",
"chars": 479,
"preview": "<script>\nvar qp = null;\nif(/code|token|error/.test(window.location.hash)) {\n qp = location.hash.substring(1);\n}\nelse {\n"
},
{
"path": "chapter02 -- boot/src/main/webapp/swagger/swagger-ui.js",
"chars": 2704018,
"preview": "/**\n * swagger-ui - Swagger UI is a dependency-free collection of HTML, JavaScript, and CSS assets that dynamically gene"
},
{
"path": "chapter03 -- hello-cloud/README.md",
"chars": 48,
"preview": "# Chapter03 Spring Cloud简介\n\nHello Spring Cloud示例"
},
{
"path": "chapter03 -- hello-cloud/hello-consumer/pom.xml",
"chars": 1415,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter03 -- hello-cloud/hello-consumer/src/main/java/com/cd826dong/clouddemo/Application.java",
"chars": 1161,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter03 -- hello-cloud/hello-consumer/src/main/java/com/cd826dong/clouddemo/consumer/api/HelloConsumerEndpoint.java",
"chars": 1399,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter03 -- hello-cloud/hello-consumer/src/main/java/com/cd826dong/clouddemo/consumer/service/HelloService.java",
"chars": 1177,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter03 -- hello-cloud/hello-consumer/src/main/java/com/cd826dong/clouddemo/consumer/service/HelloServiceFallback.java",
"chars": 915,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter03 -- hello-cloud/hello-consumer/src/main/resources/application.properties",
"chars": 317,
"preview": "spring.application.name=hc-service\n\neureka.instance.prefer-ip-address=true\neureka.client.register-with-eureka=true\neurek"
},
{
"path": "chapter03 -- hello-cloud/hello-consumer/src/main/resources/banner.txt",
"chars": 1799,
"preview": "=======================================================================================================================\n"
},
{
"path": "chapter03 -- hello-cloud/hello-provider/pom.xml",
"chars": 1247,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter03 -- hello-cloud/hello-provider/src/main/java/com/cd826dong/clouddemo/Application.java",
"chars": 1073,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter03 -- hello-cloud/hello-provider/src/main/java/com/cd826dong/clouddemo/provider/api/HelloProviderEndpoint.java",
"chars": 1013,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter03 -- hello-cloud/hello-provider/src/main/resources/application.properties",
"chars": 307,
"preview": "server.port=2100\n\nspring.application.name=hp-service\n\neureka.instance.prefer-ip-address=true\neureka.client.register-with"
},
{
"path": "chapter03 -- hello-cloud/hello-provider/src/main/resources/banner.txt",
"chars": 1799,
"preview": "=======================================================================================================================\n"
},
{
"path": "chapter03 -- hello-cloud/parent/pom.xml",
"chars": 2117,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter03 -- hello-cloud/pom.xml",
"chars": 921,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\r\n xmlns:xsi=\"http://w"
},
{
"path": "chapter03 -- hello-cloud/service-discovery/pom.xml",
"chars": 1111,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter03 -- hello-cloud/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java",
"chars": 1100,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter03 -- hello-cloud/service-discovery/src/main/resources/application.properties",
"chars": 257,
"preview": "spring.application.name=servicediscovery\nserver.port=8260\n\neureka.instance.hostname=localhost\neureka.server.wait-time-in"
},
{
"path": "chapter03 -- hello-cloud/service-discovery/src/main/resources/banner.txt",
"chars": 1799,
"preview": "=======================================================================================================================\n"
},
{
"path": "chapter04 -- eureka/README.md",
"chars": 46,
"preview": "# Chapter04 服务治理与负载均衡源码\n\n适用于最原始部分 -- 搭建服务治理服务器"
},
{
"path": "chapter04 -- eureka/parent/pom.xml",
"chars": 2113,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter04 -- eureka/pom.xml",
"chars": 924,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\r\n xmlns:xsi=\"http://w"
},
{
"path": "chapter04 -- eureka/product-service/pom.xml",
"chars": 1774,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/Application.java",
"chars": 1280,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java",
"chars": 2898,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java",
"chars": 3387,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java",
"chars": 2230,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java",
"chars": 2454,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java",
"chars": 2745,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java",
"chars": 992,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java",
"chars": 874,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java",
"chars": 1831,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/product-service/src/main/resources/.h2.server.properties",
"chars": 157,
"preview": "#H2 Server Properties\n#Mon Mar 06 13:35:06 CST 2017\n0=TestDB(Embedded)|org.h2.Driver|jdbc\\:h2\\:mem\\:testdb|sa\nwebAllowOt"
},
{
"path": "chapter04 -- eureka/product-service/src/main/resources/application.properties",
"chars": 1441,
"preview": "server.port=2200\n\nspring.application.name=productservice\n\neureka.instance.prefer-ip-address=true\neureka.client.register-"
},
{
"path": "chapter04 -- eureka/product-service/src/main/resources/banner.txt",
"chars": 1799,
"preview": "=======================================================================================================================\n"
},
{
"path": "chapter04 -- eureka/product-service/src/main/resources/data.sql",
"chars": 919,
"preview": "insert into tbProduct (id, name, cover_image, price) values(1, '测试商品-001', '/products/cover/001.png', 100);\ninsert into "
},
{
"path": "chapter04 -- eureka/product-service/src/main/resources/schema.sql",
"chars": 914,
"preview": "drop table if exists tbProduct;\ndrop table if exists tbProduct_Comment;\n\n/*============================================="
},
{
"path": "chapter04 -- eureka/service-discovery/pom.xml",
"chars": 1107,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter04 -- eureka/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java",
"chars": 1100,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/service-discovery/src/main/resources/application.properties",
"chars": 257,
"preview": "spring.application.name=servicediscovery\nserver.port=8260\n\neureka.instance.hostname=localhost\neureka.server.wait-time-in"
},
{
"path": "chapter04 -- eureka/service-discovery/src/main/resources/banner.txt",
"chars": 1799,
"preview": "=======================================================================================================================\n"
},
{
"path": "chapter04 -- eureka/user-service/pom.xml",
"chars": 2080,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/Application.java",
"chars": 1068,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java",
"chars": 2276,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java",
"chars": 1896,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java",
"chars": 2236,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java",
"chars": 877,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryEx.java",
"chars": 835,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryImpl.java",
"chars": 1205,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java",
"chars": 2020,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/user-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java",
"chars": 1831,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka/user-service/src/main/resources/.h2.server.properties",
"chars": 157,
"preview": "#H2 Server Properties\n#Mon Mar 06 13:35:06 CST 2017\n0=TestDB(Embedded)|org.h2.Driver|jdbc\\:h2\\:mem\\:testdb|sa\nwebAllowOt"
},
{
"path": "chapter04 -- eureka/user-service/src/main/resources/application.properties",
"chars": 1438,
"preview": "server.port=2100\n\nspring.application.name=userservice\n\neureka.instance.prefer-ip-address=true\neureka.client.register-wit"
},
{
"path": "chapter04 -- eureka/user-service/src/main/resources/banner.txt",
"chars": 1799,
"preview": "=======================================================================================================================\n"
},
{
"path": "chapter04 -- eureka/user-service/src/main/resources/data.sql",
"chars": 372,
"preview": "insert into tbUser (id, nickname, avatar) values(1, 'zhangSan', '/users/avatar/zhangsan.png');\ninsert into tbUser (id, n"
},
{
"path": "chapter04 -- eureka/user-service/src/main/resources/schema.sql",
"chars": 456,
"preview": "drop table if exists tbUser;\n\n/*==============================================================*/\n/* Table: tbUser "
},
{
"path": "chapter04 -- eureka-cluster/README.md",
"chars": 45,
"preview": "# Chapter04 服务治理与负载均衡\n\n为4.5.4章节 Eureka高可用集群示例"
},
{
"path": "chapter04 -- eureka-cluster/parent/pom.xml",
"chars": 2120,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter04 -- eureka-cluster/pom.xml",
"chars": 931,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\r\n xmlns:xsi=\"http://w"
},
{
"path": "chapter04 -- eureka-cluster/product-service/pom.xml",
"chars": 2118,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/Application.java",
"chars": 1153,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java",
"chars": 2898,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java",
"chars": 3110,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java",
"chars": 2490,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java",
"chars": 2454,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java",
"chars": 2745,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java",
"chars": 992,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java",
"chars": 874,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/product/service/UserService.java",
"chars": 1295,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java",
"chars": 1831,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/resources/.h2.server.properties",
"chars": 157,
"preview": "#H2 Server Properties\n#Mon Mar 06 13:35:06 CST 2017\n0=TestDB(Embedded)|org.h2.Driver|jdbc\\:h2\\:mem\\:testdb|sa\nwebAllowOt"
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/resources/application.properties",
"chars": 1441,
"preview": "server.port=2200\n\nspring.application.name=productservice\n\neureka.instance.prefer-ip-address=true\neureka.client.register-"
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/resources/banner.txt",
"chars": 1799,
"preview": "=======================================================================================================================\n"
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/resources/data.sql",
"chars": 919,
"preview": "insert into tbProduct (id, name, cover_image, price) values(1, '测试商品-001', '/products/cover/001.png', 100);\ninsert into "
},
{
"path": "chapter04 -- eureka-cluster/product-service/src/main/resources/schema.sql",
"chars": 914,
"preview": "drop table if exists tbProduct;\ndrop table if exists tbProduct_Comment;\n\n/*============================================="
},
{
"path": "chapter04 -- eureka-cluster/service-discovery/pom.xml",
"chars": 1114,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter04 -- eureka-cluster/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java",
"chars": 1100,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/service-discovery/src/main/resources/application-sdpeer1.properties",
"chars": 217,
"preview": "server.port=8260\n\neureka.instance.hostname=sdpeer1\neureka.client.register-with-eureka=true\neureka.client.fetch-registry="
},
{
"path": "chapter04 -- eureka-cluster/service-discovery/src/main/resources/application-sdpeer2.properties",
"chars": 258,
"preview": "spring.application.name=servicediscovery\nserver.port=8262\n\neureka.instance.hostname=sdpeer2\neureka.client.register-with-"
},
{
"path": "chapter04 -- eureka-cluster/service-discovery/src/main/resources/application-sdpeer3.properties",
"chars": 258,
"preview": "spring.application.name=servicediscovery\nserver.port=8263\n\neureka.instance.hostname=sdpeer3\neureka.client.register-with-"
},
{
"path": "chapter04 -- eureka-cluster/service-discovery/src/main/resources/application.properties",
"chars": 351,
"preview": "spring.application.name=servicediscovery\nserver.port=8260\n\neureka.instance.hostname=localhost\neureka.server.wait-time-in"
},
{
"path": "chapter04 -- eureka-cluster/service-discovery/src/main/resources/banner.txt",
"chars": 1799,
"preview": "=======================================================================================================================\n"
},
{
"path": "chapter04 -- eureka-cluster/user-service/pom.xml",
"chars": 2087,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/Application.java",
"chars": 1068,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java",
"chars": 2605,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java",
"chars": 1896,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java",
"chars": 2236,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java",
"chars": 877,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryEx.java",
"chars": 835,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryImpl.java",
"chars": 1205,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java",
"chars": 2119,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/user-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java",
"chars": 1831,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-cluster/user-service/src/main/resources/.h2.server.properties",
"chars": 157,
"preview": "#H2 Server Properties\n#Mon Mar 06 13:35:06 CST 2017\n0=TestDB(Embedded)|org.h2.Driver|jdbc\\:h2\\:mem\\:testdb|sa\nwebAllowOt"
},
{
"path": "chapter04 -- eureka-cluster/user-service/src/main/resources/application.properties",
"chars": 1438,
"preview": "server.port=2100\n\nspring.application.name=userservice\n\neureka.instance.prefer-ip-address=true\neureka.client.register-wit"
},
{
"path": "chapter04 -- eureka-cluster/user-service/src/main/resources/banner.txt",
"chars": 1799,
"preview": "=======================================================================================================================\n"
},
{
"path": "chapter04 -- eureka-cluster/user-service/src/main/resources/data.sql",
"chars": 372,
"preview": "insert into tbUser (id, nickname, avatar) values(1, 'zhangSan', '/users/avatar/zhangsan.png');\ninsert into tbUser (id, n"
},
{
"path": "chapter04 -- eureka-cluster/user-service/src/main/resources/schema.sql",
"chars": 456,
"preview": "drop table if exists tbUser;\n\n/*==============================================================*/\n/* Table: tbUser "
},
{
"path": "chapter04 -- eureka-feign/README.md",
"chars": 40,
"preview": "# Chapter04 服务治理与负载均衡\n\n为4.4章节 Feign部分示例\n"
},
{
"path": "chapter04 -- eureka-feign/parent/pom.xml",
"chars": 2112,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter04 -- eureka-feign/pom.xml",
"chars": 931,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\r\n xmlns:xsi=\"http://w"
},
{
"path": "chapter04 -- eureka-feign/product-service/pom.xml",
"chars": 2110,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/Application.java",
"chars": 1153,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductCommentDto.java",
"chars": 2898,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/api/ProductEndpoint.java",
"chars": 3110,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/api/UserDto.java",
"chars": 2490,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/Product.java",
"chars": 2454,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/entity/ProductComment.java",
"chars": 2745,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductCommentRepository.java",
"chars": 992,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/repository/ProductRepository.java",
"chars": 874,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/product/service/UserService.java",
"chars": 1295,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java",
"chars": 1831,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/resources/.h2.server.properties",
"chars": 157,
"preview": "#H2 Server Properties\n#Mon Mar 06 13:35:06 CST 2017\n0=TestDB(Embedded)|org.h2.Driver|jdbc\\:h2\\:mem\\:testdb|sa\nwebAllowOt"
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/resources/application.properties",
"chars": 1441,
"preview": "server.port=2200\n\nspring.application.name=productservice\n\neureka.instance.prefer-ip-address=true\neureka.client.register-"
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/resources/banner.txt",
"chars": 1799,
"preview": "=======================================================================================================================\n"
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/resources/data.sql",
"chars": 919,
"preview": "insert into tbProduct (id, name, cover_image, price) values(1, '测试商品-001', '/products/cover/001.png', 100);\ninsert into "
},
{
"path": "chapter04 -- eureka-feign/product-service/src/main/resources/schema.sql",
"chars": 914,
"preview": "drop table if exists tbProduct;\ndrop table if exists tbProduct_Comment;\n\n/*============================================="
},
{
"path": "chapter04 -- eureka-feign/service-discovery/pom.xml",
"chars": 1106,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter04 -- eureka-feign/service-discovery/src/main/java/com/cd826dong/clouddemo/Application.java",
"chars": 1100,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/service-discovery/src/main/resources/application-sdpeer1.properties",
"chars": 217,
"preview": "server.port=8260\n\neureka.instance.hostname=sdpeer1\neureka.client.register-with-eureka=true\neureka.client.fetch-registry="
},
{
"path": "chapter04 -- eureka-feign/service-discovery/src/main/resources/application-sdpeer2.properties",
"chars": 258,
"preview": "spring.application.name=servicediscovery\nserver.port=8262\n\neureka.instance.hostname=sdpeer2\neureka.client.register-with-"
},
{
"path": "chapter04 -- eureka-feign/service-discovery/src/main/resources/application-sdpeer3.properties",
"chars": 258,
"preview": "spring.application.name=servicediscovery\nserver.port=8263\n\neureka.instance.hostname=sdpeer3\neureka.client.register-with-"
},
{
"path": "chapter04 -- eureka-feign/service-discovery/src/main/resources/application.properties",
"chars": 351,
"preview": "spring.application.name=servicediscovery\nserver.port=8260\n\neureka.instance.hostname=localhost\neureka.server.wait-time-in"
},
{
"path": "chapter04 -- eureka-feign/service-discovery/src/main/resources/banner.txt",
"chars": 1799,
"preview": "=======================================================================================================================\n"
},
{
"path": "chapter04 -- eureka-feign/user-service/pom.xml",
"chars": 2079,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<project xmlns=\"http://maven.apache.org/POM/4.0.0\" \n xmlns:xsi=\"http://www.w3."
},
{
"path": "chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/Application.java",
"chars": 1068,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserDto.java",
"chars": 2605,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/api/UserEndpoint.java",
"chars": 1896,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/entity/User.java",
"chars": 2236,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepository.java",
"chars": 877,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryEx.java",
"chars": 835,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/repository/UserRepositoryImpl.java",
"chars": 1205,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/user/service/UserService.java",
"chars": 2119,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/user-service/src/main/java/com/cd826dong/clouddemo/util/HibernatePhysicalNamingNamingStrategy.java",
"chars": 1831,
"preview": "/*\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance "
},
{
"path": "chapter04 -- eureka-feign/user-service/src/main/resources/.h2.server.properties",
"chars": 157,
"preview": "#H2 Server Properties\n#Mon Mar 06 13:35:06 CST 2017\n0=TestDB(Embedded)|org.h2.Driver|jdbc\\:h2\\:mem\\:testdb|sa\nwebAllowOt"
},
{
"path": "chapter04 -- eureka-feign/user-service/src/main/resources/application.properties",
"chars": 1472,
"preview": "server.port=2100\n\nspring.application.name=userservice\n\neureka.instance.prefer-ip-address=true\neureka.client.register-wit"
},
{
"path": "chapter04 -- eureka-feign/user-service/src/main/resources/banner.txt",
"chars": 1799,
"preview": "=======================================================================================================================\n"
},
{
"path": "chapter04 -- eureka-feign/user-service/src/main/resources/data.sql",
"chars": 372,
"preview": "insert into tbUser (id, nickname, avatar) values(1, 'zhangSan', '/users/avatar/zhangsan.png');\ninsert into tbUser (id, n"
},
{
"path": "chapter04 -- eureka-feign/user-service/src/main/resources/schema.sql",
"chars": 456,
"preview": "drop table if exists tbUser;\n\n/*==============================================================*/\n/* Table: tbUser "
},
{
"path": "chapter04 -- eureka-ribbon/.project",
"chars": 386,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<projectDescription>\n\t<name>cd826dong-clouds-eureka</name>\n\t<comment></comment>\n\t"
},
{
"path": "chapter04 -- eureka-ribbon/.settings/org.eclipse.core.resources.prefs",
"chars": 55,
"preview": "eclipse.preferences.version=1\nencoding/<project>=UTF-8\n"
},
{
"path": "chapter04 -- eureka-ribbon/.settings/org.eclipse.m2e.core.prefs",
"chars": 86,
"preview": "activeProfiles=\neclipse.preferences.version=1\nresolveWorkspaceProjects=true\nversion=1\n"
},
{
"path": "chapter04 -- eureka-ribbon/README.md",
"chars": 40,
"preview": "# Chapter04 服务治理与负载均衡\n\n为4.3章节 Ribbon部分示例"
},
{
"path": "chapter04 -- eureka-ribbon/parent/.project",
"chars": 386,
"preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<projectDescription>\n\t<name>springcloud-book-parent</name>\n\t<comment></comment>\n\t"
}
]
// ... and 582 more files (download for full content)
About this extraction
This page contains the full source code of the cd826/springcloud-demo GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 782 files (3.8 MB), approximately 1.1M tokens, and a symbol index with 2708 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.