Übung »REST-API spezifizieren (am Beispiel MadMax Racing)«

In dieser Übung geht es darum, für die in einer vorangegangenen Übung gefundenen Aggregates jeweils ein REST-API zu spezifizieren.

Dauer
Ca. 75 min
Video(s) zu der Übung
Erfordert vorher die Bearbeitung von ...
Übung Aggregates bestimmen (am Beispiel der Firma MadMaxRacing)

Inhalt

Worum geht es?

In der Übung Aggregates bestimmen (am Beispiel der Firma MadMaxRacing) haben Sie die Aggregates für das MadMax-Beispiel ermittelt.

Jetzt sollen Sie aufbauend auf den Aggregates REST-Endpoints definieren. Halten Sie sich dabei an die Konventionen aus dem entsprechenden Video.

Ihre Aufgabe

Definieren Sie REST-Endpoints für die folgenden Zwecke. Request- und Response-Body interessieren erst einmal nicht. Sie können einen REST-Endpoint in der Form GET /customers/{c-id} notieren.

  1. Finde alle Clients
  2. Finde einen bestimmten Client anhand seiner ID
  3. Ändere die Adresse eines Clients
  4. Gebe die Adresse eines Clients zurück
  5. Lege ein neues RallyeCar im Fahrzeugbestand an
  6. Finde alle Ralleycars des Baujahrs 2012
  7. Wechsele den Turbo eines RallyeCars
  8. Lösche ein RallyeCar aus dem Fahrzeugbestand
  9. Gebe alle DonatingAgreements zu einem bestimmten Client aus
  10. Füge einen anderen Client zu einem DonatingAgreement hinzu
  11. Nehme einen bestimmten Client aus einem DonatingAgreement heraus
  12. Ändere den Seller in einem PurchasingAgreement
  13. Gebe für ein PurchasingAgreement den PaymentPlan zurück
  14. Ändere im PaymentPlan die monthlyRate
  15. lösche den PaymentPlan eines PurchasingAgreements
  16. Ändere den Namen eines Sellers

Lösung

  1. Finde alle Clients
    • GET /clients
  2. Finde einen bestimmten Client anhand seiner ID
    • GET /clients/{client-id}
  3. Ändere die Adresse eines Clients
    • PUT /clients/{client-id}/address
  4. Gebe die Adresse eines Clients zurück
    • PUT /clients/{client-id}/address
  5. Lege ein neues RallyeCar im Fahrzeugbestand an
    • POST /rallyeCars
  6. Finde alle Ralleycars des Baujahrs 2012
    • GET /rallyeCars?yearOfConstruction=2012
  7. Wechsele den Turbo eines RallyeCars
    • PUT /rallyeCars/{rallyeCar-id}/turbo
  8. Lösche ein RallyeCar aus dem Fahrzeugbestand
    • DELETE /rallyeCars/{rallyeCar-id}
  9. Gebe alle DonatingAgreements zu einem bestimmten Client aus
    • GET /donatingAgreements?clientId=cc97ec84-179a-42f8-a623-00bb610c9a5f
  10. Füge einen anderen Client zu einem DonatingAgreement hinzu
    • POST /donatingAgreements/{donatingAgreement-id}/clients
  11. Nehme einen bestimmten Client aus einem DonatingAgreement heraus
    • DELETE /donatingAgreements/{donatingAgreement-id}/clients/{client-id}
  12. Ändere den Seller in einem PurchasingAgreement
    • PUT /purchasingAgreement/{purchasingAgreement-id}/seller
  13. Gebe für ein PurchasingAgreement den PaymentPlan zurück
    • GET /purchasingAgreement/{purchasingAgreement-id}/paymentPlan
  14. Ändere im PaymentPlan die monthlyRate
    • PATCH /purchasingAgreement/{purchasingAgreement-id}/paymentPlan
  15. lösche den PaymentPlan eines PurchasingAgreements
    • DELETE /purchasingAgreement/{purchasingAgreement-id}/paymentPlan
  16. Ändere den Namen eines Sellers
    • PATCH /sellers/{seller-id}