001package org.anarres.qemu.qapi.api;
002
003import com.fasterxml.jackson.annotation.JsonInclude;
004import com.fasterxml.jackson.annotation.JsonProperty;
005import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
006import javax.annotation.CheckForNull;
007import javax.annotation.Nonnull;
008import org.anarres.qemu.qapi.common.*;
009
010/**
011 * Autogenerated class.
012 *
013 * <pre>QApiCommandDescriptor{name=send-key, returns=null, data={keys=[KeyValue], *hold-time=int}}</pre>
014 */
015// QApiCommandDescriptor{name=send-key, returns=null, data={keys=[KeyValue], *hold-time=int}}
016public class SendKeyCommand extends QApiCommand<SendKeyCommand.Arguments, SendKeyCommand.Response> {
017        /** Compound arguments to a SendKeyCommand. */
018        @JsonInclude(JsonInclude.Include.NON_EMPTY)
019        public static class Arguments {
020
021                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
022                @JsonProperty("keys")
023                @Nonnull
024                public java.util.List<KeyValue> keys;
025                @SuppressFBWarnings("NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR")
026                @JsonProperty("hold-time")
027                @CheckForNull
028                public java.lang.Long holdTime;
029
030                public Arguments() {
031                }
032
033                public Arguments(java.util.List<KeyValue> keys, java.lang.Long holdTime) {
034                        this.keys = keys;
035                        this.holdTime = holdTime;
036                }
037        }
038
039        /** Response to a SendKeyCommand. */
040        public static class Response extends QApiResponse<java.lang.Void> {
041        }
042
043        /** Constructs a new SendKeyCommand. */
044        public SendKeyCommand(@Nonnull SendKeyCommand.Arguments argument) {
045                super("send-key", Response.class, argument);
046        }
047
048        /** Constructs a new SendKeyCommand. */
049        public SendKeyCommand(java.util.List<KeyValue> keys, java.lang.Long holdTime) {
050                this(new Arguments(keys, holdTime));
051        }
052}