Github user brkyvz commented on the issue:
https://github.com/apache/spark/pull/18029
Making them as singletons is unnecessary. How about this:
```java
public interface InitialPosition {
public InitialPositionInStream toKinesis();
}
public class InitialPositions {
public static class Latest implements InitialPosition {
public Latest() {}
@Override
public InitialPositionInStream toKinesis() {
return InitialPositionInStream.LATEST;
}
}
public static class TrimHorizon implements InitialPosition {
public TrimHorizon() {}
@Override
public InitialPositionInStream toKinesis() {
return InitialPositionInStream.TRIM_HORIZON;
}
}
public static class AtTimestamp implements InitialPosition {
private Date timestamp;
public AtTimestamp(Date timestamp) {
this.timestamp = timestamp;
}
@Override
public InitialPositionInStream toKinesis() {
return InitialPositionInStream.AT_TIMESTAMP;
}
public Date getTimestamp() {
return timestamp;
}
}
}
```
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]