Android Open Source - java_mega_api Command Get User Quota






From Project

Back to project page java_mega_api.

License

The source code is released under:

GNU General Public License

If you think the Android project java_mega_api listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package org.danbrough.mega;
//w w w  .  ja v  a 2s. co  m
import org.danbrough.mega.AccountDetails.UserType;

import com.google.gson.JsonElement;
import com.google.gson.JsonObject;

public class CommandGetUserQuota extends Command {
  // private static final org.slf4j.Logger log = org.slf4j.LoggerFactory
  // .getLogger(CommandGetUserQuota.class.getSimpleName());

  private AccountDetails details;

  public CommandGetUserQuota(MegaClient megaClient, AccountDetails details,
      boolean storage, boolean transfer, boolean pro) {
    super("uq");
    this.details = details;

    if (storage)
      addArg("strg", 1);
    if (transfer)
      addArg("xfer", 1);
    if (pro)
      addArg("pro", 1);
  }

  @Override
  public void processResponse(JsonElement e) throws Exception {
    JsonObject o = e.getAsJsonObject();
    if (o.has("cstrg")) {
      details.setStorageUsed(o.get("cstrg").getAsInt());
    }

    if (o.has("mstrg")) {
      details.setTotalStorage(o.get("mstrg").getAsInt());
    }

    // case MAKENAMEID6('c','a','x','f','e','r') : // own transfer quota used
    if (o.has("caxfer")) {
      details.setTransferUsed(o.get("caxfer").getAsInt());
    }

    // * case MAKENAMEID6('c','s','x','f','e','r') : // third-party transfer
    // quota
    if (o.has("csxfer")) {
      details.setThirdPartyTransfer(o.get("csxfer").getAsInt());
    }

    // * case MAKENAMEID5('m','x','f','e','r') : // total transfer quota

    if (o.has("mxfer")) {
      details.setTotalTransfer(o.get("mxfer").getAsInt());
    }

    // * case MAKENAMEID8('s','r','v','r','a','t','i','o') : // percentage of
    // * transfer allocated for serving details->srv_ratio =
    // * client->json.getfloat(); break;
    // *

    if (o.has("srvratio")) {
      details.setServerRatio(o.get("srvratio").getAsFloat());
    }

    // * case MAKENAMEID5('u','t','y','p','e') : // Pro level (0 == none)
    // * details->pro_level = client->json.getint(); got_pro = 1; break;
    if (o.has("utype")) {
      details.setUserType(UserType.get(o.get("utype").getAsInt()));
    }

    // * case MAKENAMEID5('s','t','y','p','e') : // subscription type const
    // char*
    // * ptr; if ((ptr = client->json.getvalue())) details->subscription_type =
    // * *ptr; break;
    if (o.has("stype")) {
      details.setSubscriptionType(o.get("stype").getAsString());
    }

    // * case MAKENAMEID6('s','u','n','t','i','l') : // Pro level until
    // * details->pro_until = client->json.getint(); break;
    // *

    if (o.has("suntil")) {
      details.setsUntil(o.get("suntil").getAsInt());
    }

    /*
     * case MAKENAMEID7('b','a','l','a','n','c','e') : // account balances if
     * (client->json.enterarray()) { const char* cur; const char* amount;
     * 
     * while (client->json.enterarray()) { if ((amount =
     * client->json.getvalue()) && (cur = client->json.getvalue())) { int t =
     * details->balances.size(); details->balances.resize(t + 1);
     * details->balances[t].amount = atof(amount);
     * memcpy(details->balances[t].currency, cur, 3); }
     * 
     * client->json.leavearray(); }
     * 
     * client->json.leavearray(); } break;
     */

    if (o.has("balance")) {
      details.setBalance(o.get("balance").getAsJsonArray());
    }
  }
}




Java Source Code List

org.danbrough.mega.APIError.java
org.danbrough.mega.AccountDetails.java
org.danbrough.mega.AndroidClient.java
org.danbrough.mega.Base64.java
org.danbrough.mega.Callback.java
org.danbrough.mega.CommandFetchNodes.java
org.danbrough.mega.CommandGetFile.java
org.danbrough.mega.CommandGetUserQuota.java
org.danbrough.mega.CommandLogin.java
org.danbrough.mega.CommandPutFile.java
org.danbrough.mega.Command.java
org.danbrough.mega.ExecutorThreadPool.java
org.danbrough.mega.GSONUtil.java
org.danbrough.mega.MegaActivity.java
org.danbrough.mega.MegaApplication.java
org.danbrough.mega.MegaClient.java
org.danbrough.mega.MegaCrypto.java
org.danbrough.mega.MegaFragmentActivity.java
org.danbrough.mega.MegaListener.java
org.danbrough.mega.Node.java
org.danbrough.mega.ThreadPool.java
org.danbrough.mega.User.java
org.danbrough.mega.ui.FilesAdapter.java
org.danbrough.mega.ui.FilesFragment.java
org.danbrough.megatest.MainActivity.java