Commit Graph

286 Commits

Author SHA1 Message Date
Dirkjan Ochtman
1426312df0 Derive Debug for RequestData 2022-02-10 13:55:34 +08:00
Dirkjan Ochtman
af69f511b5 Generate error events for deserialization failures 2022-02-10 13:55:34 +08:00
Dirkjan Ochtman
53c240be21 Derive Copy on RequestData 2022-02-10 13:55:34 +08:00
Dirkjan Ochtman
386638b6ca Offer API to reconnect an EppClient 2022-02-10 13:55:34 +08:00
Dirkjan Ochtman
36558c429c Allow the Connection to connect itself 2022-02-10 13:55:34 +08:00
Dirkjan Ochtman
95b62891c9 Fix rustdoc warning 2022-02-04 11:39:13 +08:00
Dirkjan Ochtman
88eb9b9cab Simplify/improve crate-level documentation 2022-02-04 11:39:13 +08:00
Dirkjan Ochtman
e482cc152b Deduplicate client example code 2022-02-04 11:39:13 +08:00
Dirkjan Ochtman
dc3f10cae3 Wrap timeouts around network operations 2022-02-04 11:39:13 +08:00
Dirkjan Ochtman
f3aab578e7 Relax lifetime constraints on command + extension combinations
They should not be required to have the same lifetimes.
2022-01-31 14:05:52 +08:00
Dirkjan Ochtman
2639ec8c95 Make the Period type align with the standard 2022-01-31 14:05:16 +08:00
Dirkjan Ochtman
5fb32978bd Improve check request API types by redirecting serialization 2022-01-31 14:04:48 +08:00
Dirkjan Ochtman
fdec3f29fc Redirect CheckResponse deserialization to improve interface 2022-01-31 14:04:48 +08:00
Dirkjan Ochtman
a5d6643d6f Share CheckResponse type with contacts 2022-01-31 14:04:48 +08:00
Dirkjan Ochtman
dd1c9c1e66 Share CheckResponse types for domain and host resources 2022-01-31 14:04:48 +08:00
Dirkjan Ochtman
999149ba31 Share the Available type across domain and host 2022-01-31 14:04:48 +08:00
Dirkjan Ochtman
a6dfe70361 Use bool for availability for contact/host resources as well 2022-01-31 14:04:48 +08:00
Dirkjan Ochtman
0c36d8add3 Use an enum for result codes 2022-01-27 17:10:28 +08:00
Dirkjan Ochtman
630c6b06e4 Change DomainAvailable::available to be a bool
From RFC 5731:

    This element MUST contain an "avail" attribute whose value indicates
    object availability (can it be provisioned or not) at the moment the
    <check> command was completed.  A value of "1" or "true" means that
    the object can be provisioned.  A value of "0" or "false" means that
    the object can not be provisioned.
2022-01-24 16:34:33 +08:00
Dirkjan Ochtman
9acd9eac29 Take Login ext_uris values as a slice to allow caller to avoid allocation
In some cases the caller might be able to use a const slice for this.
2022-01-24 15:34:45 +08:00
Dirkjan Ochtman
58b72f9b0c Make sure Error implements Send and Sync 2022-01-23 23:34:58 +08:00
Nicholas Rempel
4615d63b13 Make it possible to create hosts without addresses 2022-01-19 23:29:55 +08:00
Nicholas Rempel
c0ebbf6b52 Add test case for message only poll response 2022-01-06 19:22:20 +08:00
Nicholas Rempel
427db7a1eb Add test case for empty queue poll response 2022-01-06 19:22:20 +08:00
Nicholas Rempel
569bd86bae Add HostInfoResponseData to list of support message poll response types 2022-01-06 19:22:20 +08:00
Nicholas Rempel
4f112469ce Re-use DomainTransferResponseData in message poll 2022-01-06 19:22:20 +08:00
Dirkjan Ochtman
24356a722a Re-export command types for easier access 2022-01-03 10:29:58 +08:00
Dirkjan Ochtman
e9c5db9a1c Add basic test for high-level API 2022-01-03 10:22:20 +08:00
Dirkjan Ochtman
0cd3e28b22 Use get_epp_response() to read initial greeting 2022-01-03 10:22:20 +08:00
Dirkjan Ochtman
8efb206e43 Rename test directory to tests 2022-01-03 10:22:20 +08:00
Dirkjan Ochtman
70f3789098 Make tokio-rustls dependency optional 2022-01-03 10:22:20 +08:00
Dirkjan Ochtman
0db2c6d008 Abstract EppClient over stream type 2022-01-03 10:22:20 +08:00
Dirkjan Ochtman
44f3fbef53 Move responsibility for stream setup into client 2022-01-03 10:22:20 +08:00
Dirkjan Ochtman
d69439ff24 Abstract EppConnection over stream type 2022-01-03 10:22:20 +08:00
Dirkjan Ochtman
3d0c3166f3 More concise/consistent error messages 2021-12-27 15:29:09 +08:00
Dirkjan Ochtman
978e43a4c1 Consistently return Error type 2021-12-27 15:29:09 +08:00
Dirkjan Ochtman
abab1aca8c Store richer Box<dyn StdError> in Error::Other 2021-12-27 15:29:09 +08:00
Dirkjan Ochtman
6d063804d3 Use consistent naming for error types 2021-12-27 15:29:09 +08:00
Dirkjan Ochtman
467ac03df7 Preserve quick-xml errors 2021-12-27 15:29:09 +08:00
Dirkjan Ochtman
78628cfc02 Rename Error variants to avoid stuttering 2021-12-27 15:29:09 +08:00
Dirkjan Ochtman
2193c10290 Remove unused impl 2021-12-27 15:29:09 +08:00
Dirkjan Ochtman
b7b6d0ae00 Remove unused type 2021-12-27 15:29:09 +08:00
Ritesh Chitlangi
d5d3a93141 fix impl lifetimes 2021-12-21 00:14:38 +08:00
Ritesh Chitlangi
537fe10bee minor fixes 2021-12-21 00:05:12 +08:00
Nick Rempel
6445b63c62 Add sync namestore composite extension 2021-12-20 22:19:57 +08:00
Dirkjan Ochtman
17d5bd90e9 Use &str or Cow<'a, str> in place of String 2021-12-20 22:08:55 +08:00
Dirkjan Ochtman
99701608a2 Replace Vec with slice where possible 2021-12-20 22:08:55 +08:00
Dirkjan Ochtman
d4f4949cd8 Store a Cow<'a, str> in StringValue
And parametrize all serialize-only types with a lifetime such that
building requests no longer requires unnecessary allocations.
2021-12-20 22:08:55 +08:00
Dirkjan Ochtman
1efe19000e Deduplicate DomainTransfer constructor methods 2021-12-20 22:08:55 +08:00
Dirkjan Ochtman
a5f57fa836 Use &'static str for namespace URLs in serialize types 2021-12-20 22:08:55 +08:00