├── .gitattributes ├── .gitignore ├── README.MD ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle └── src ├── jmh ├── java │ └── org │ │ └── test │ │ ├── app │ │ └── service │ │ │ └── ImperativeVsReactivePerfTest.java │ │ └── reactive │ │ ├── ArrayPublisherPerfTest.java │ │ ├── PerfSubscriber.java │ │ └── UnoptimizedArrayPublisher.java └── resources │ └── META-INF │ └── BenchmarkList ├── main ├── java │ └── org │ │ └── test │ │ ├── app │ │ ├── Application.java │ │ ├── model │ │ │ ├── Currency.java │ │ │ ├── CurrencyGroupedOrder.java │ │ │ ├── OrderRequest.java │ │ │ ├── OrderRequestInOneCurrency.java │ │ │ ├── OrderTotal.java │ │ │ ├── OrderTotalWithDiscount.java │ │ │ ├── Product.java │ │ │ └── ProductPackage.java │ │ └── service │ │ │ ├── CurrencyService.java │ │ │ └── OrderProcessingService.java │ │ └── reactive │ │ ├── ArrayPublisher.java │ │ ├── FilterPublisher.java │ │ ├── Flow.java │ │ ├── MapPublisher.java │ │ └── TakePublisher.java └── resources │ ├── Agenda │ ├── Flow │ └── Summary └── test └── java └── org └── test └── reactive ├── ArrayPublisherTest.java ├── FilterPublisherTest.java ├── MapPublisherTest.java └── TakePublisherTest.java /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/.gitignore -------------------------------------------------------------------------------- /README.MD: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/README.MD -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/gradlew.bat -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'reactive' 2 | 3 | -------------------------------------------------------------------------------- /src/jmh/java/org/test/app/service/ImperativeVsReactivePerfTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/jmh/java/org/test/app/service/ImperativeVsReactivePerfTest.java -------------------------------------------------------------------------------- /src/jmh/java/org/test/reactive/ArrayPublisherPerfTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/jmh/java/org/test/reactive/ArrayPublisherPerfTest.java -------------------------------------------------------------------------------- /src/jmh/java/org/test/reactive/PerfSubscriber.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/jmh/java/org/test/reactive/PerfSubscriber.java -------------------------------------------------------------------------------- /src/jmh/java/org/test/reactive/UnoptimizedArrayPublisher.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/jmh/java/org/test/reactive/UnoptimizedArrayPublisher.java -------------------------------------------------------------------------------- /src/jmh/resources/META-INF/BenchmarkList: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/main/java/org/test/app/Application.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/app/Application.java -------------------------------------------------------------------------------- /src/main/java/org/test/app/model/Currency.java: -------------------------------------------------------------------------------- 1 | package org.test.app.model; 2 | 3 | public enum Currency { 4 | USD, EUR, UAH, CAD 5 | } 6 | -------------------------------------------------------------------------------- /src/main/java/org/test/app/model/CurrencyGroupedOrder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/app/model/CurrencyGroupedOrder.java -------------------------------------------------------------------------------- /src/main/java/org/test/app/model/OrderRequest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/app/model/OrderRequest.java -------------------------------------------------------------------------------- /src/main/java/org/test/app/model/OrderRequestInOneCurrency.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/app/model/OrderRequestInOneCurrency.java -------------------------------------------------------------------------------- /src/main/java/org/test/app/model/OrderTotal.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/app/model/OrderTotal.java -------------------------------------------------------------------------------- /src/main/java/org/test/app/model/OrderTotalWithDiscount.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/app/model/OrderTotalWithDiscount.java -------------------------------------------------------------------------------- /src/main/java/org/test/app/model/Product.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/app/model/Product.java -------------------------------------------------------------------------------- /src/main/java/org/test/app/model/ProductPackage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/app/model/ProductPackage.java -------------------------------------------------------------------------------- /src/main/java/org/test/app/service/CurrencyService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/app/service/CurrencyService.java -------------------------------------------------------------------------------- /src/main/java/org/test/app/service/OrderProcessingService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/app/service/OrderProcessingService.java -------------------------------------------------------------------------------- /src/main/java/org/test/reactive/ArrayPublisher.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/reactive/ArrayPublisher.java -------------------------------------------------------------------------------- /src/main/java/org/test/reactive/FilterPublisher.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/reactive/FilterPublisher.java -------------------------------------------------------------------------------- /src/main/java/org/test/reactive/Flow.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/reactive/Flow.java -------------------------------------------------------------------------------- /src/main/java/org/test/reactive/MapPublisher.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/reactive/MapPublisher.java -------------------------------------------------------------------------------- /src/main/java/org/test/reactive/TakePublisher.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/java/org/test/reactive/TakePublisher.java -------------------------------------------------------------------------------- /src/main/resources/Agenda: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/resources/Agenda -------------------------------------------------------------------------------- /src/main/resources/Flow: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/resources/Flow -------------------------------------------------------------------------------- /src/main/resources/Summary: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/main/resources/Summary -------------------------------------------------------------------------------- /src/test/java/org/test/reactive/ArrayPublisherTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/test/java/org/test/reactive/ArrayPublisherTest.java -------------------------------------------------------------------------------- /src/test/java/org/test/reactive/FilterPublisherTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/test/java/org/test/reactive/FilterPublisherTest.java -------------------------------------------------------------------------------- /src/test/java/org/test/reactive/MapPublisherTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/test/java/org/test/reactive/MapPublisherTest.java -------------------------------------------------------------------------------- /src/test/java/org/test/reactive/TakePublisherTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CollaborationInEncapsulation/reactive-hardcore/HEAD/src/test/java/org/test/reactive/TakePublisherTest.java --------------------------------------------------------------------------------