77import com .google .protobuf .util .JsonFormat ;
88import io .hstream .*;
99import io .hstream .internal .RecordId ;
10+ import io .hstream .internal .ShardOffset ;
1011import io .hstream .internal .SpecialOffset ;
1112import io .hstream .internal .TaskStatusPB ;
13+ import io .hstream .internal .TimestampOffset ;
1214import java .time .Instant ;
1315import java .util .stream .Collectors ;
1416
@@ -96,24 +98,6 @@ public static Stream streamFromGrpc(io.hstream.internal.Stream stream) {
9698 .build ();
9799 }
98100
99- public static StreamShardOffset streamShardOffsetFromGrpc (
100- io .hstream .internal .ShardOffset shardOffset ) {
101- if (shardOffset .hasSpecialOffset ()) {
102- switch (shardOffset .getSpecialOffset ()) {
103- case EARLIEST :
104- return new StreamShardOffset (StreamShardOffset .SpecialOffset .EARLIEST );
105- case LATEST :
106- return new StreamShardOffset (StreamShardOffset .SpecialOffset .LATEST );
107- default :
108- throw new IllegalArgumentException ("Unknown ShardOffset : " + shardOffset );
109- }
110- } else if (shardOffset .hasRecordOffset ()) {
111- return new StreamShardOffset (recordIdFromGrpc (shardOffset .getRecordOffset ()));
112- } else {
113- throw new IllegalArgumentException ("Unknown ShardOffset : " + shardOffset );
114- }
115- }
116-
117101 public static io .hstream .internal .ShardOffset streamShardOffsetToGrpc (
118102 StreamShardOffset shardOffset ) {
119103 if (shardOffset .isSpecialOffset ()) {
@@ -133,6 +117,14 @@ public static io.hstream.internal.ShardOffset streamShardOffsetToGrpc(
133117 return io .hstream .internal .ShardOffset .newBuilder ()
134118 .setRecordOffset (recordIdToGrpc (shardOffset .getNormalOffset ()))
135119 .build ();
120+ } else if (shardOffset .isTimestampOffset ()) {
121+ return ShardOffset .newBuilder ()
122+ .setTimestampOffset (
123+ TimestampOffset .newBuilder ()
124+ .setTimestampInMs (shardOffset .getTimestampOffset ())
125+ .setStrictAccuracy (true )
126+ .build ())
127+ .build ();
136128 } else {
137129 throw new IllegalArgumentException ("Unknown streamShardOffset : " + shardOffset );
138130 }
0 commit comments