public IEnumerable<InventorySupply> GetFbaInventory()
        {
            var inventory = new List< InventorySupply >();

            ActionPolicies.AmazonGetPolicy.Do( () =>
            {
                var client = this._factory.CreateFbaInventoryClient();
                var request = new ListInventorySupplyRequest
                {
                    SellerId = this._credentials.SellerId,
                    QueryStartDateTime = DateTime.MinValue,
                    ResponseGroup = "Detailed",
                    MWSAuthToken = this._credentials.MwsAuthToken
                };
                var service = new FbaInventorySupplyService( client, request );

                AmazonLogger.Log.Trace( "[amazon] Loading FBA inventory for seller {0}", this._credentials.SellerId );

                inventory.AddRange( service.LoadInventory() );

                AmazonLogger.Log.Trace( "[amazon] FBA inventiry for seller {0} loaded", this._credentials.SellerId );
            } );

            return inventory;
        }
 public bool IsFbaInventoryReceived()
 {
     try
     {
         var client = this._factory.CreateFbaInventoryClient();
         var request = new ListInventorySupplyRequest
         {
             SellerId = this._credentials.SellerId,
             QueryStartDateTime = DateTime.MinValue,
             ResponseGroup = "Detailed",
             MWSAuthToken = this._credentials.MwsAuthToken
         };
         var service = new FbaInventorySupplyService( client, request );
         return service.IsInventoryReceived();
     }
     catch( Exception ex )
     {
         AmazonLogger.Log.Warn( ex, "[amazon] Checking FBA inventory for seller {0} failed", this._credentials.SellerId );
         return false;
     }
 }