HamBook – Diff between revs 9 and 11
?pathlinks?
Rev 9 | Rev 11 | |||
---|---|---|---|---|
Line 27... | Line 27... | |||
27 | { |
27 | { |
|
28 | SerialPort.Write($"{Name}{Generic.Constants.EOT}"); |
28 | SerialPort.Write($"{Name}{Generic.Constants.EOT}"); |
|
29 | var buffer = new byte[CatLength.Answer]; |
29 | var buffer = new byte[CatLength.Answer]; |
|
30 | if (SerialPort.Read(buffer, 0, CatLength.Answer) != CatLength.Answer) |
30 | if (SerialPort.Read(buffer, 0, CatLength.Answer) != CatLength.Answer) |
|
31 | { |
31 | { |
|
32 | throw new ArgumentException(); |
32 | throw new UnexpectedRadioResponseException(Name, buffer); |
|
33 | } |
33 | } |
|
Line 34... | Line 34... | |||
34 | |
34 | |
|
35 | var answer = Encoding.ASCII.GetString(buffer); |
35 | var answer = Constants.Encoding.GetString(buffer); |
|
36 | var match = readRegex.Match(answer); |
36 | var match = readRegex.Match(answer); |
|
37 | if (!match.Success) |
37 | if (!match.Success) |
|
38 | { |
38 | { |
|
39 | throw new ArgumentException(); |
39 | throw new UnmatchedRadioResponseException(Name, answer); |
|
40 | } |
40 | } |
|
41 | return int.Parse(match.Result("${id}")) == int.Parse(Constants.ID); |
41 | return int.Parse(match.Result("${id}")) == int.Parse(Constants.ID); |
|
- | 42 | } |
||
- | 43 | |
||
- | 44 | public override async Task<bool> ReadAsync(CancellationToken cancellationToken) |
||
- | 45 | { |
||
- | 46 | var payload = Constants.Encoding.GetBytes($"{Name}{Generic.Constants.EOT}"); |
||
- | 47 | await SerialPort.WriteAsync(payload, 0, payload.Length); |
||
- | 48 | var buffer = new byte[CatLength.Answer]; |
||
- | 49 | if (await SerialPort.ReadAsync(buffer, 0, CatLength.Answer) != CatLength.Answer) |
||
- | 50 | { |
||
- | 51 | throw new UnexpectedRadioResponseException(Name, buffer); |
||
- | 52 | } |
||
- | 53 | |
||
- | 54 | var answer = Constants.Encoding.GetString(buffer); |
||
- | 55 | var match = readRegex.Match(answer); |
||
- | 56 | if (!match.Success) |
||
- | 57 | { |
||
- | 58 | throw new UnmatchedRadioResponseException(Name, answer); |
||
- | 59 | } |
||
- | 60 | |
||
- | 61 | return int.Parse(match.Result("${id}")) == int.Parse(Constants.ID); |
||
42 | } |
62 | } |
|
43 | } |
63 | } |