We have two services: Warehouse and Inventory. These two services communicate with each other via restful calls. Occasionally these calls will fail, and we need a mechanism to retry a failed call at a later date ( potentially multiple times ).   Define an object to pass information for a shipping event from the warehouse service to the inventory service. Import pieces of information: • ship date • inventory id • tracking number • shipping vendor • Include others as you deem necessary.   Describe how you’ll store the object. Describe how you’ll detect a failure. Describe how you’ll retry. Describe what could be re-used (if anything) for receiving events.