mirror of
https://github.com/AsamK/signal-cli.git
synced 2026-03-14 02:30:15 +00:00
enforce poll options between 1 and 100 characters; update documentation (#1965)
pre-PR cleanup
This commit is contained in:
parent
b498d2050a
commit
db0f660d08
@ -443,6 +443,7 @@ By default, recipients can select multiple options.
|
||||
*-o* OPTION [OPTION ...], *--option* OPTION [OPTION ...]*::
|
||||
The options for the poll.
|
||||
Between 2 and 10 options must be specified.
|
||||
Each option must be between 1 and 100 characters.
|
||||
|
||||
=== sendPollVote
|
||||
|
||||
|
||||
@ -25,6 +25,7 @@ public class SendPollCreateCommand implements JsonRpcLocalCommand {
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(SendPollCreateCommand.class);
|
||||
private static final int MAX_POLL_OPTIONS = 10;
|
||||
private static final int MAX_POLL_OPTION_LENGTH = 100;
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
@ -76,6 +77,14 @@ public class SendPollCreateCommand implements JsonRpcLocalCommand {
|
||||
if (options.size() > MAX_POLL_OPTIONS) {
|
||||
throw new UserErrorException("Poll cannot have more than " + MAX_POLL_OPTIONS + " options");
|
||||
}
|
||||
for (final var option : options) {
|
||||
if (option.isEmpty()) {
|
||||
throw new UserErrorException("Poll options must not be empty");
|
||||
}
|
||||
if (option.length() > MAX_POLL_OPTION_LENGTH) {
|
||||
throw new UserErrorException("Poll option \"" + option + "\" exceeds the maximum length of " + MAX_POLL_OPTION_LENGTH + " characters");
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
var results = m.sendPollCreateMessage(question, !noMulti, options, recipientIdentifiers, notifySelf);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user