Esempio n. 1
0
 @Override
 public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
   Juice juice = (Juice) buttonView.getTag();
   if (juice != null) {
     juice.available = !juice.available;
     setJuiceAvailability(juice);
   }
 }
Esempio n. 2
0
 /**
  * 購入可能レポートを取得する。
  *
  * @return 購入可能情報
  */
 public PurchasableReport getPurchasable() {
   PurchasableReport list = new PurchasableReport();
   for (Juice juice : juiceStock.getJuices()) {
     if (juiceStock.isInStock(juice) && juice.isEnough(getCreditAmount())) {
       list.add(juice);
     }
   }
   return list;
 }
Esempio n. 3
0
  /**
   * ジュースを購入する。
   *
   * @param juice 購入したいジュース
   */
  public void purchase(Juice juice) {
    if (!juice.isEnough(getCreditAmount())) {
      return;
    }

    if (juiceStock.isInStock(juice)) {
      juiceStock.remove(juice);
      moneyFlow.purchase(juice.getPrice());
    }
  }
Esempio n. 4
0
  private void setJuiceAvailability(final Juice juice) {
    Log.d(TAG, "setJuiceAvailability: " + juice.asJson());
    getServer()
        .updateJuice(
            new TypedJsonString(juice.asJson()),
            new Callback<Response>() {

              @Override
              public void success(Response response, Response response2) {
                Log.d(TAG, "Updated juice availibility");
              }

              @Override
              public void failure(RetrofitError error) {
                Log.d(TAG, "failed to update  juice availibility");
                juice.available = !juice.available;
              }
            });
  }