Inheritance: CallBuilder
 public static void RemovesBookFromLibrary(Guid transactionId, Guid libraryId, Guid userId, string title, string author,
     string isbn, int publishYear)
 {
     command =
         WhenCommand(new RemoveBookFromLibrary(transactionId, libraryId, userId, title, author, isbn,
             publishYear));
     command.IsPOSTedTo($"/libraries/{libraryId}/books/remove");
 }
 public static void AddsBookToLibrary(Guid transactionId, Guid libraryId, Guid userId, string title, string author,
     string isbn, int publishYear)
 {
     command =
         WhenCommand(new AddBookToLibrary(transactionId, libraryId, userId, title, author, isbn,
             publishYear));
     command.IsPOSTedTo($"/libraries/{libraryId}/books/add");
 }
 public static void RequestsLibraryLink(Guid transactionId, Guid libraryId, Guid userId,
     Guid targetLibraryId)
 {
     command =
         WhenCommand(new RequestLink(transactionId, libraryId, userId, targetLibraryId));
     command.IsPOSTedTo($"/libraries/{libraryId}/links/request");
 }
 public static void OpensLibrary(Guid processId, Guid userId, string name)
 {
     command = WhenCommand(new OpenLibrary(processId, userId, userId, name));
     command.IsPOSTedTo("/libraries");
 }
 public static void AcceptsLibraryLink(Guid transactionId, Guid libraryId, Guid userId, Guid requestingLibraryId)
 {
     command =
         WhenCommand(new AcceptLink(transactionId, libraryId, userId, requestingLibraryId));
     command.IsPOSTedTo($"/libraries/{libraryId}/links/accept");
 }