cashapp / backfila

Service that manages backfill state, calling into other services to do batched work
https://cashapp.github.io/backfila/
Apache License 2.0
30 stars 49 forks source link

Make Utf8StringNewlineStrategy class open #366

Closed elmerland closed 8 months ago

elmerland commented 8 months ago

Make Utf8StringNewlineStrategy class open so that clients can extend the class and apply custom transformations.

For example:

class MyRecordStrategy() : Utf8StringNewlineStrategy(ignoreBlankLines = true) {
  override fun calculateNextRecordBytes =
    super.calculateNextRecordBytes(source).map(String::uppercase)
}