Commit Graph

287 Commits

Author SHA1 Message Date
Dirkjan Ochtman cdbf0a2e65 Replace HostAddr with IpAddr in the public interface 2022-02-16 02:19:47 +08:00
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