Favourites.java
Go to the documentation of this file.
00001 /*
00002  *      Copyright (C) 2005-2013 Team XBMC
00003  *      http://xbmc.org
00004  *
00005  *  This Program is free software; you can redistribute it and/or modify
00006  *  it under the terms of the GNU General Public License as published by
00007  *  the Free Software Foundation; either version 2, or (at your option)
00008  *  any later version.
00009  *
00010  *  This Program is distributed in the hope that it will be useful,
00011  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00013  *  GNU General Public License for more details.
00014  *
00015  *  You should have received a copy of the GNU General Public License
00016  *  along with XBMC Remote; see the file license.  If not, write to
00017  *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
00018  *  http://www.gnu.org/copyleft/gpl.html
00019  *
00020  */
00021 package org.xbmc.android.jsonrpc.api.call;
00022 
00023 import android.os.Parcel;
00024 import android.os.Parcelable;
00025 import java.util.ArrayList;
00026 import org.codehaus.jackson.JsonNode;
00027 import org.codehaus.jackson.node.ArrayNode;
00028 import org.codehaus.jackson.node.ObjectNode;
00029 import org.xbmc.android.jsonrpc.api.AbstractCall;
00030 import org.xbmc.android.jsonrpc.api.model.FavouriteModel;
00031 
00032 public final class Favourites {
00033 
00041         public static class AddFavourite extends AbstractCall<String> {
00042                 public final static String API_TYPE = "Favourites.AddFavourite";
00043 
00044                 @Override
00045                 public void writeToParcel(Parcel parcel, int flags) {
00046                         super.writeToParcel(parcel, flags);
00047                         parcel.writeValue(mResult);
00048                 }
00049 
00053                 protected AddFavourite(Parcel parcel) {
00054                         super(parcel);
00055                 }
00056 
00060                 public static final Parcelable.Creator<AddFavourite> CREATOR = new Parcelable.Creator<AddFavourite>() {
00061                         @Override
00062                         public AddFavourite createFromParcel(Parcel parcel) {
00063                                 return new AddFavourite(parcel);
00064                         }
00065                         @Override
00066                         public AddFavourite[] newArray(int n) {
00067                                 return new AddFavourite[n];
00068                         }
00069                 };
00070 
00080                 public AddFavourite(String title, String type, String path, String window, String windowparameter, String thumbnail) {
00081                         super();
00082                         addParameter("title", title);
00083                         addParameter("type", type);
00084                         addParameter("path", path);
00085                         addParameter("window", window);
00086                         addParameter("windowparameter", windowparameter);
00087                         addParameter("thumbnail", thumbnail);
00088                 }
00089 
00090                 @Override
00091                 protected String parseOne(JsonNode node) {
00092                         return node.getTextValue();
00093                 }
00094 
00095                 @Override
00096                 public String getName() {
00097                         return API_TYPE;
00098                 }
00099 
00100                 @Override
00101                 protected boolean returnsList() {
00102                         return false;
00103                 }
00104         }
00105 
00113         public static class GetFavourites extends AbstractCall<FavouriteModel.FavouriteDetail> {
00114                 public final static String API_TYPE = "Favourites.GetFavourites";
00115 
00116                 @Override
00117                 public void writeToParcel(Parcel parcel, int flags) {
00118                         super.writeToParcel(parcel, flags);
00119                         parcel.writeParcelable(mResult, flags);
00120                 }
00121 
00125                 protected GetFavourites(Parcel parcel) {
00126                         super(parcel);
00127                 }
00128 
00132                 public static final Parcelable.Creator<GetFavourites> CREATOR = new Parcelable.Creator<GetFavourites>() {
00133                         @Override
00134                         public GetFavourites createFromParcel(Parcel parcel) {
00135                                 return new GetFavourites(parcel);
00136                         }
00137                         @Override
00138                         public GetFavourites[] newArray(int n) {
00139                                 return new GetFavourites[n];
00140                         }
00141                 };
00142                 public final static String RESULT = "favourites";
00143 
00149                 public GetFavourites(String type, String... properties) {
00150                         super();
00151                         addParameter("type", type);
00152                         addParameter("properties", properties);
00153                 }
00154 
00155                 @Override
00156                 protected ArrayList<FavouriteModel.FavouriteDetail> parseMany(JsonNode node) {
00157                         final ArrayNode favourites = parseResults(node, RESULT);
00158                         if (favourites != null) {
00159                                 final ArrayList<FavouriteModel.FavouriteDetail> ret = new ArrayList<FavouriteModel.FavouriteDetail>(favourites.size());
00160                                 for (int i = 0; i < favourites.size(); i++) {
00161                                         final ObjectNode item = (ObjectNode)favourites.get(i);
00162                                         ret.add(new FavouriteModel.FavouriteDetail(item));
00163                                 }
00164                                 return ret;
00165                         } else {
00166                                 return new ArrayList<FavouriteModel.FavouriteDetail>(0);
00167                         }
00168                 }
00169 
00170                 @Override
00171                 public String getName() {
00172                         return API_TYPE;
00173                 }
00174 
00175                 @Override
00176                 protected boolean returnsList() {
00177                         return true;
00178                 }
00179         }
00180 }


smarthome_media_kodi_driver
Author(s): Mickael Gaillard , Erwan Le Huitouze
autogenerated on Thu Jun 6 2019 21:03:49