summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Kai Moritz [Sat, 15 Jun 2024 21:19:02 +0000 (23:19 +0200)]
popular: 1.0.0 - Renamed packages and classes -- MOVE
Kai Moritz [Sat, 15 Jun 2024 21:12:51 +0000 (23:12 +0200)]
popular: 1.0.0 - Renamed the project to `popular`
Kai Moritz [Sat, 8 Jun 2024 17:39:00 +0000 (19:39 +0200)]
couter: 1.3.0 - Fixed possible NPE in `Counter10ApplicationIT`
Kai Moritz [Wed, 5 Jun 2024 21:57:32 +0000 (23:57 +0200)]
counter: 1.3.0 - (GREEN) Fixed the typing for the state-store
Kai Moritz [Wed, 5 Jun 2024 19:44:26 +0000 (21:44 +0200)]
counter: 1.3.0 - (RED) Made `CounterApplicationIT` fail too
* Validate with: `mvn test -Dtest=CounterApplicationI`
* Turning on the caching forces the application, to serialize and
deserialize _every_ message, hence, revealing the bug, that was only
detected by the `CounterStreamProcessorToplogyTest` before, that always
behaves like this.
Kai Moritz [Wed, 5 Jun 2024 19:30:17 +0000 (21:30 +0200)]
counter: 1.3.0 - (RED) Introduced domain-class `User` as key
* _GREEN:_ The `CounterApplicationIT` does _not_ reveal the bug!
* _RED:_ The `CounterStreamProcessorToplogyTest` fails with an exception,
that gives a hint for the cause of the bug.
* The bug is caused by missing type-specifications for the operation
``cout()``.
* Before the introduction of the domain-class `User` everything worked as
expected, because the class `Word` could be specified as default for
the deserialization of the key.
** With the introduction of the domain-class `User` as key of the incoming
messages, the default for the key has to switched to this class, to
enable the application to deserialize incomming keys despite the missing
type mapping.
** Beforehand, the default `Word` covered the missing type information
for the ``count()``-operator.
Kai Moritz [Sat, 8 Jun 2024 10:26:10 +0000 (12:26 +0200)]
counter: 1.2.15 - Inlined the asserting ``Consumer``s
Kai Moritz [Sat, 8 Jun 2024 09:33:53 +0000 (11:33 +0200)]
counter: 1.2.15 - Added assertion for the expected state
Kai Moritz [Sat, 8 Jun 2024 09:01:22 +0000 (11:01 +0200)]
counter: 1.2.15 - Added assertion for the expected final output messages
Kai Moritz [Sat, 8 Jun 2024 08:35:34 +0000 (10:35 +0200)]
counter: 1.2.15 - Added assertion for the expected number of messages
Kai Moritz [Sat, 8 Jun 2024 07:36:43 +0000 (09:36 +0200)]
counter: 1.2.15 - Refined `CounterApplicationIT`
* Preparations for the addition of new tests
* The messages are send only once during `@BeforeAll`
Kai Moritz [Sat, 8 Jun 2024 07:09:37 +0000 (09:09 +0200)]
counter: 1.2.15 - DRY for test-data
Kai Moritz [Thu, 6 Jun 2024 17:47:52 +0000 (19:47 +0200)]
counter: 1.2.15 - Fixed race-condition in `CounterApplicationIT`
Kai Moritz [Wed, 5 Jun 2024 19:00:15 +0000 (21:00 +0200)]
counter: 1.2.15 - Refined `TestData` (explicit key in input-data)
Kai Moritz [Wed, 5 Jun 2024 18:33:31 +0000 (20:33 +0200)]
counter: 1.2.15 - Fixed deprecated parameter for cache-config
Kai Moritz [Wed, 5 Jun 2024 18:29:37 +0000 (20:29 +0200)]
counter: 1.2.15 - Removed logging of type-headers in tests
Kai Moritz [Wed, 5 Jun 2024 16:29:24 +0000 (18:29 +0200)]
counter: 1.2.15 - Cleaned up the serialization configuration
Kai Moritz [Wed, 5 Jun 2024 15:06:30 +0000 (17:06 +0200)]
counter: 1.2.15 - Separated serialization-config into a static method
Kai Moritz [Mon, 27 May 2024 20:28:28 +0000 (22:28 +0200)]
counter: 1.2.15 - `TestData` only holds and asserts the test-data
Kai Moritz [Mon, 27 May 2024 19:25:55 +0000 (21:25 +0200)]
counter: 1.2.15 - `ToplogyTestDriver.close` must always be called
Kai Moritz [Mon, 27 May 2024 20:23:58 +0000 (22:23 +0200)]
counter: 1.2.15 - Made in/out messages in `TestData` immutable
Kai Moritz [Mon, 27 May 2024 19:39:22 +0000 (21:39 +0200)]
counter: 1.2.15 - Refined method-naming in `TestData`
Kai Moritz [Mon, 27 May 2024 19:53:26 +0000 (21:53 +0200)]
counter: 1.2.15 - Refined `TestData.writeInputData(..)`
Kai Moritz [Sun, 26 May 2024 20:59:26 +0000 (22:59 +0200)]
counter: 1.2.15 - Refined `TestData.assertExpectedResult(..)`
Kai Moritz [Sun, 26 May 2024 19:59:55 +0000 (21:59 +0200)]
counter: 1.2.15 - Refined `CounterApplicationIT` (simplified setup)
Kai Moritz [Tue, 14 May 2024 20:25:51 +0000 (22:25 +0200)]
counter: 1.2.14 - Set up type-mappings for JSON-Deserialization
Kai Moritz [Mon, 13 May 2024 20:02:57 +0000 (22:02 +0200)]
counter: 1.2.13 - The tests print out the type-mapping headers
Kai Moritz [Tue, 14 May 2024 19:54:28 +0000 (21:54 +0200)]
counter: 1.2.12 - Renamed `WordCount` into `WordCounter` -- ALIGN
Kai Moritz [Tue, 14 May 2024 19:54:20 +0000 (21:54 +0200)]
counter: 1.2.12 - Renamed `WordCount` into `WordCounter` -- MOVE
Kai Moritz [Mon, 13 May 2024 19:11:38 +0000 (21:11 +0200)]
counter: 1.2.11 - Refactored test-classes (DRY for test-config)
Kai Moritz [Mon, 13 May 2024 17:14:07 +0000 (19:14 +0200)]
counter: 1.2.10 - Replaced helper-class `Message` with `KeyValue`
Kai Moritz [Sun, 12 May 2024 21:30:04 +0000 (23:30 +0200)]
counter: 1.2.9 - Reconfigured tests to receive data as domain-instances
Kai Moritz [Sun, 12 May 2024 16:06:09 +0000 (18:06 +0200)]
counter: 1.2.8 - Reconfigured tests to send data as domain-instances
Kai Moritz [Mon, 13 May 2024 19:04:56 +0000 (21:04 +0200)]
counter: 1.2.7 - Refined bean-naming in `CounterApplicationConfiguration`
Kai Moritz [Sun, 12 May 2024 15:43:29 +0000 (17:43 +0200)]
counter: 1.2.6 - Removed unused explicit references to `ObjectMapper`
Kai Moritz [Sun, 5 May 2024 09:08:27 +0000 (11:08 +0200)]
counter: 1.2.5 - Updated Spring Boot to `3.2.5`
Kai Moritz [Mon, 13 May 2024 18:34:31 +0000 (20:34 +0200)]
counter: 1.2.4 - Headers for type-mapping are not necessary
Kai Moritz [Fri, 17 Feb 2023 13:48:23 +0000 (14:48 +0100)]
coutner: 1.2.3 - Simplified topology, using default-serdes for all steps
- Defined `JsonSerde` as default for keys and values.
- Configured the `JsonDeserializer` for header-based typing.
- Removed the configuration of specific serdes from all steps of the
processor-topology, expect the initial step, that needs a `StringSerde`
for the key.
Kai Moritz [Thu, 16 Feb 2023 16:51:24 +0000 (17:51 +0100)]
counter: 1.2.2. - Simplified topology - better readability
Kai Moritz [Thu, 16 Feb 2023 16:48:52 +0000 (17:48 +0100)]
counter: 1.2.1 - Simplified topology (no serdes needed for materialization)
Kai Moritz [Wed, 15 Feb 2023 07:19:09 +0000 (08:19 +0100)]
counter: 1.2.0 - Service reads/writes using `JsonSerde`
- First working version of a refined topology, that reads and writes
key and value with the `JsonSerde`.
- This topology expects and writes all data as JSON, except the key
of the incomming messages.
- All used Serdes are directly configured in the topology.
Kai Moritz [Sat, 11 Feb 2023 12:02:44 +0000 (13:02 +0100)]
counter: 1.1.11 - Added a test, that is based on `TopologyTestDriver`
- The test reuses `TestData` to asserts the exact same assumptions, as
`CounterApplicationIT`.
- The only difference is, that the message processing is carried out by
the `ToplogyTestDriver` instead of a real Kafka cluster, that is started
along the test-code in the same JVM, as in `CounterApplicationIT`.
Kai Moritz [Wed, 15 Feb 2023 06:51:46 +0000 (07:51 +0100)]
counter: 1.1.10 - Refactored the configuration inito a separated class
Kai Moritz [Tue, 14 Feb 2023 19:17:12 +0000 (20:17 +0100)]
counter: 1.1.9 - Refactored creation of `Properties` as a separate bean
Kai Moritz [Sat, 11 Feb 2023 13:27:15 +0000 (14:27 +0100)]
counter: 1.1.8 - Fixed a `ConcurentModificationException`-bug
Kai Moritz [Tue, 14 Feb 2023 19:03:08 +0000 (20:03 +0100)]
counter: 1.1.7 - Fixed a bug in the assertion-logic for the expected state
- Each combination of a user and a word is a uniq key.
- Since the ordering is only guaranteed for messages, with the same key,
no expectations can be made according the ordering of messages with
different keys!
- This also simplifies the test-logic, because no deserialization is needed
any more to pick the username out of the JSON-data.
Kai Moritz [Mon, 13 Feb 2023 18:00:53 +0000 (19:00 +0100)]
counter: 1.1.6 - Refactored the test-data into a separated class
Kai Moritz [Sat, 11 Feb 2023 14:26:42 +0000 (15:26 +0100)]
counter: 1.1.5 - Fixed a bug in the integration-test `CounterApplicationIT`
- The default store-type creates state, that is stored on disk.
- Hence, only the first run of the test succseeded.
- The bug was fixed by providing an in-memory store-type.
Kai Moritz [Sat, 11 Feb 2023 14:38:03 +0000 (15:38 +0100)]
counter: 1.1.4 - Introduced parameters for the config needed by the test
Kai Moritz [Sat, 11 Feb 2023 06:09:45 +0000 (07:09 +0100)]
counter: 1.1.3 - Implemented an integration test for the old message-format
Kai Moritz [Sat, 11 Feb 2023 05:45:40 +0000 (06:45 +0100)]
counter: 1.1.2 - Moved configuration into `CounterApplication`
Kai Moritz [Sun, 5 Feb 2023 13:31:47 +0000 (14:31 +0100)]
counter: 1.1.1 - Upgraded Spring Boot 2.5.4 -> 3.0.2
Kai Moritz [Thu, 21 Oct 2021 19:49:51 +0000 (21:49 +0200)]
counter: 1.1.0 - Only counts words (splitting is done separately now)
Kai Moritz [Sat, 16 Oct 2021 14:41:09 +0000 (16:41 +0200)]
counter: 1.0.1 - changed default-port and exposed all actuator-endpoints
Kai Moritz [Wed, 1 Sep 2021 20:31:01 +0000 (22:31 +0200)]
wordcount:1.0.0 - counts words, keyed by username and word