presto-kinesis/src/main/java/io/prestosql/plugin/kinesis/KinesisSessionProperties.java/KinesisSessionProperties/KinesisSessionProperties
class KinesisSessionProperties:    @Inject
    public KinesisSessionProperties(KinesisConfig config)
    {
        sessionProperties = ImmutableList.<PropertyMetadata<?>>builder()
                .add(booleanProperty(
                        CHECKPOINT_ENABLED,
                        "Are checkpoints used in this session?",
                        config.isCheckpointEnabled(),
                        false))
                .add(integerProperty(
                        ITERATION_NUMBER,
                        "Checkpoint iteration number",
                        config.getIteratorNumber(),
                        false))
                .add(stringProperty(
                        CHECKPOINT_LOGICAL_NAME,
                        "checkpoint logical name",
                        config.getLogicalProcessName(),
                        false))
                .add(PropertyMetadata.integerProperty(
                        MAX_BATCHES,
                        "max number of calls to Kinesis per query",
                        config.getMaxBatches(),
                        false))
                .add(PropertyMetadata.integerProperty(
                        BATCH_SIZE,
                        "Record limit in calls to Kinesis",
                        config.getBatchSize(),
                        false))
                .add(PropertyMetadata.booleanProperty(
                        START_FROM_TIMESTAMP,
                        "Start from timestamp not trim horizon",
                        config.isIteratorFromTimestamp(),
                        false))
                .add(PropertyMetadata.longProperty(
                        STARTING_OFFSET_SECONDS,
                        "Seconds before current time to start iterator",
                        config.getIteratorOffsetSeconds(),
                        false))
                .add(PropertyMetadata.stringProperty(
                        STARTING_TIMESTAMP,
                        "Timestamp in Presto format to start iterator",
                        UNSET_TIMESTAMP,
                        false))
                .build();
    }