blob: 4f0c53b406b0e1abc7d5d2d05ab24907646ea98b [file] [log] [blame]
tomf110fff2014-09-26 00:38:18 -07001package org.onlab.onos.foo;
2
3import org.onlab.nio.AbstractMessage;
4
tom0e0863f2014-09-26 09:02:33 -07005import static com.google.common.base.Preconditions.checkNotNull;
6
tomf110fff2014-09-26 00:38:18 -07007/**
tom0e0863f2014-09-26 09:02:33 -07008 * Test message for measuring rate and round-trip latency.
tomf110fff2014-09-26 00:38:18 -07009 */
10public class TestMessage extends AbstractMessage {
11
tom0e0863f2014-09-26 09:02:33 -070012 private final byte[] padding;
tomf110fff2014-09-26 00:38:18 -070013
tom0e0863f2014-09-26 09:02:33 -070014 private final long requestorTime;
15 private final long responderTime;
tomf110fff2014-09-26 00:38:18 -070016
17 /**
18 * Creates a new message with the specified data.
19 *
tom0e0863f2014-09-26 09:02:33 -070020 * @param requestorTime requester time
21 * @param responderTime responder time
22 * @param padding message padding
tomf110fff2014-09-26 00:38:18 -070023 */
tom0e0863f2014-09-26 09:02:33 -070024 TestMessage(int length, long requestorTime, long responderTime, byte[] padding) {
25 this.length = length;
26 this.requestorTime = requestorTime;
27 this.responderTime = responderTime;
28 this.padding = checkNotNull(padding, "Padding cannot be null");
tomf110fff2014-09-26 00:38:18 -070029 }
30
tom0e0863f2014-09-26 09:02:33 -070031 public long requestorTime() {
32 return requestorTime;
33 }
34
35 public long responderTime() {
36 return responderTime;
37 }
38
39 public byte[] padding() {
40 return padding;
tomf110fff2014-09-26 00:38:18 -070041 }
42
43}