Akka.Persistence.Sqlite.Journal.SqliteQueryBuilder.SelectMessages C# (CSharp) Method

SelectMessages() public method

public SelectMessages ( string persistenceId, long fromSequenceNr, long toSequenceNr, long max ) : DbCommand
persistenceId string
fromSequenceNr long
toSequenceNr long
max long
return System.Data.Common.DbCommand
        public DbCommand SelectMessages(string persistenceId, long fromSequenceNr, long toSequenceNr, long max)
        {
            var sb = new StringBuilder(@"
                SELECT persistence_id, sequence_nr, is_deleted, manifest, payload FROM ").Append(_tableName)
                .Append(" WHERE persistence_id = ? ");

            if (fromSequenceNr > 0)
            {
                if (toSequenceNr != long.MaxValue)
                    sb.Append(" AND sequence_nr BETWEEN ")
                        .Append(fromSequenceNr)
                        .Append(" AND ")
                        .Append(toSequenceNr);
                else
                    sb.Append(" AND sequence_nr >= ").Append(fromSequenceNr);
            }

            if (toSequenceNr != long.MaxValue)
                sb.Append(" AND sequence_nr <= ").Append(toSequenceNr);

            if (max != long.MaxValue)
            {
                sb.Append(" LIMIT ").Append(max);
            }

            var command = new SQLiteCommand(sb.ToString())
            {
                Parameters = { new SQLiteParameter { Value = persistenceId } }
            };

            return command;
        }