content: package com.zzzmode.appopsx.common;
  
  import android.os.Parcel;
  import android.os.Parcelable;
  
  import org.json.JSONArray;
  import org.json.JSONException;
  import org.json.JSONObject;
  
  import java.util.List;
  
  /**
   * Created by zl on 2016/11/6.
   */
  
  public class OpsCommands {
  
    public static final String ACTION_GET = "get";
    public static final String ACTION_SET = "set";
    public static final String ACTION_RESET = "reset";
    public static final String ACTION_GET_FOR_OPS ="get_f_ops";
    public static final String ACTION_GET_APPS = "get_apps";
    public static final String ACTION_OTHER = "other";
  
    public static class Builder implements Parcelable {
  
      private String action = ACTION_GET;
      private String packageName;
      private int userHandleId;
      private int opInt;
      private int modeInt;
      private int[] ops;
      private boolean reqNet;
  
      public String getAction() {
        return action;
      }
  
      public Builder setAction(String action) {
        this.action = action;
        return this;
      }
  
      public String getPackageName() {
        return packageName;
      }
  
      public Builder setPackageName(String packageName) {
        this.packageName = packageName;
        return this;
      }
  
      public int getOpInt() {
        return opInt;
      }
  
      public Builder setOpInt(int opInt) {
        this.opInt = opInt;
        return this;
      }
  
      public int getModeInt() {
        return modeInt;
      }
  
      public Builder setModeInt(int modeInt) {
        this.modeInt = modeInt;
        return this;
      }
  
      public int getUserHandleId() {
        return userHandleId;
      }
  
      public Builder setUserHandleId(int uid) {
        this.userHandleId = uid;
        return this;
      }
  
      public int[] getOps() {
        return ops;
      }
  
      public Builder setOps(int[] ops) {
        this.ops = ops;
        return this;
      }
  
      public boolean isReqNet() {
        return reqNet;
      }
  
      public Builder setReqNet(boolean reqNet) {
        this.reqNet = reqNet;
        return this;
      }
  
      @Override
      public String toString() {
        return "Builder{" +
            "action='" + action + '\'' +
            ", packageName='" + packageName + '\'' +
            ", userHandleId=" + userHandleId +
            ", opInt=" + opInt +
            ", modeInt=" + modeInt +
            '}';
      }
  
      public Builder() {
      }
  
      @Override
      public int describeContents() {
        return 0;
      }
  
      @Override
      public void writeToParcel(Parcel dest, int flags) {
        dest.writeString(this.action);
        dest.writeString(this.packageName);
        dest.writeInt(this.userHandleId);
        dest.writeInt(this.opInt);
        dest.writeInt(this.modeInt);
        dest.writeIntArray(this.ops);
        dest.writeByte(this.reqNet ? (byte) 1 : (byte) 0);
      }
  
      protected Builder(Parcel in) {
        this.action = in.readString();
        this.packageName = in.readString();
        this.userHandleId = in.readInt();
        this.opInt = in.readInt();
        this.modeInt = in.readInt();
        this.ops = in.createIntArray();
        this.reqNet = in.readByte() != 0;
      }
  
      public static final Creator<Builder> CREATOR = new Creator<Builder>() {
        @Override
        public Builder createFromParcel(Parcel source) {
          return new Builder(source);
        }
  
        @Override
        public Builder[] newArray(int size) {
          return new Builder[size];
        }
      };
    }
  }
  