Currently, a user must add a lot of usings when using this lib. For example, the main HaveIBeenPwnedClient is in AtleX.HaveIBeenPwned, the resulting Breach and Paste objects are in AtleX.HaveIBeenPwned.Data (granted, use var), the exceptions are somewhere in AtleX.HaveIBeenPwned.Communiction, etc. This is confusing and unnecessary.
Related to this, we shoud rename the AtleX.HaveIBeenPwned.Communication namespace to AtleX.HaveIBeenPwned.Clients. It contains the clients, the name should reflect that.
Suggestion:
Rename the AtleX.HaveIBeenPwned.Communication namespace to AtleX.HaveIBeenPwned.Clients
Move the built-in HaveIBeenPwnedClientException from AtleX.HaveIBeenPwned.Communication toAtleX.HaveIBeenPwned`
Move the RateLimitExceededException exception to AtleX.HaveIBeenPwned.Clients (Open question, this this mean we leak implementation details to the end user?)
Move the Breach and Paste classes to AtleX.HaveIBeenPwned
Currently, a user must add a lot of
using
s when using this lib. For example, the mainHaveIBeenPwnedClient
is inAtleX.HaveIBeenPwned
, the resultingBreach
andPaste
objects are inAtleX.HaveIBeenPwned.Data
(granted, usevar
), the exceptions are somewhere inAtleX.HaveIBeenPwned.Communiction
, etc. This is confusing and unnecessary.Related to this, we shoud rename the
AtleX.HaveIBeenPwned.Communication
namespace toAtleX.HaveIBeenPwned.Clients
. It contains the clients, the name should reflect that.Suggestion:
AtleX.HaveIBeenPwned.Communication
namespace toAtleX.HaveIBeenPwned.Clients
HaveIBeenPwnedClientException
fromAtleX.HaveIBeenPwned.Communication to
AtleX.HaveIBeenPwned`RateLimitExceededException
exception toAtleX.HaveIBeenPwned.Clients
(Open question, this this mean we leak implementation details to the end user?)Breach
andPaste
classes toAtleX.HaveIBeenPwned