public void GetLiveTvProgramsAsync(ProgramQuery query, final Response<ItemsResult> response)
    {
        if (query == null)
        {
            throw new IllegalArgumentException("query");
        }
        QueryStringDictionary dict = new QueryStringDictionary ();
        String isoDateFormat = "o";
        if (query.getMaxEndDate() != null)
        {
            dict.Add("MaxEndDate", getIsoString(query.getMaxEndDate()));
        }
        if (query.getMaxStartDate() != null)
        {
            dict.Add("MaxStartDate", getIsoString(query.getMaxStartDate()));
        }
        if (query.getMinEndDate() != null)
        {
            dict.Add("MinEndDate", getIsoString(query.getMinEndDate()));
        }
        if (query.getMinStartDate() != null)
        {
            dict.Add("MinStartDate", getIsoString(query.getMinStartDate()));
        }
        if (!query.getEnableTotalRecordCount())
        {
            dict.Add("EnableTotalRecordCount", "false");
        }
        dict.AddIfNotNull("EnableImages", query.getEnableImages());
        dict.AddIfNotNull("ImageTypeLimit", query.getImageTypeLimit());
        dict.AddIfNotNull("EnableImageTypes", query.getEnableImageTypes());
        dict.AddIfNotNull("Fields", query.getFields());
        dict.AddIfNotNull("SortBy", query.getSortBy());
        dict.AddIfNotNullOrEmpty("UserId", query.getUserId());
        if (query.getChannelIds() != null)
        {
            dict.Add("ChannelIds", tangible.DotNetToJavaStringHelper.join(",", query.getChannelIds()));
        }
        // TODO: This endpoint supports POST if the query String is too long
        String url = GetApiUrl("LiveTv/Programs", dict);
        url = AddDataFormat(url);
        Send(url, "GET", new SerializedResponse<>(response, jsonSerializer, ItemsResult.class));
    }
public void GetLiveTvProgramsAsync(ProgramQuery query, final Response<ItemsResult> response)
    {
        if (query == null)
        {
            throw new IllegalArgumentException("query");
        }
        QueryStringDictionary dict = new QueryStringDictionary ();
        String isoDateFormat = "o";
        if (query.getMaxEndDate() != null)
        {
            dict.Add("MaxEndDate", getIsoString(query.getMaxEndDate()));
        }
        if (query.getMaxStartDate() != null)
        {
            dict.Add("MaxStartDate", getIsoString(query.getMaxStartDate()));
        }
        if (query.getMinEndDate() != null)
        {
            dict.Add("MinEndDate", getIsoString(query.getMinEndDate()));
        }
        if (query.getMinStartDate() != null)
        {
            dict.Add("MinStartDate", getIsoString(query.getMinStartDate()));
        }
        if (!query.getEnableTotalRecordCount())
        {
            dict.Add("EnableTotalRecordCount", "false");
        }
        dict.AddIfNotNull("EnableImages", query.getEnableImages());
        dict.AddIfNotNull("ImageTypeLimit", query.getImageTypeLimit());
        dict.AddIfNotNull("EnableImageTypes", query.getEnableImageTypes());
        dict.AddIfNotNull("Fields", query.getFields());
        dict.AddIfNotNull("SortBy", query.getSortBy());
        dict.AddIfNotNullOrEmpty("UserId", query.getUserId());
        if (query.getChannelIds() != null)
        {
            dict.Add("ChannelIds", tangible.DotNetToJavaStringHelper.join(",", query.getChannelIds()));
        }
       
        String url = GetApiUrl("LiveTv/Programs", dict);
        url = AddDataFormat(url);
        Send(url, "GET", new SerializedResponse<>(response, jsonSerializer, ItemsResult.class));
    }
public void getlivetvprogramsasync(programquery query, final response<itemsresult> response) { if (query == null) { throw new illegalargumentexception("query"); } querystringdictionary dict = new querystringdictionary (); string isodateformat = "o"; if (query.getmaxenddate() != null) { dict.add("maxenddate", getisostring(query.getmaxenddate())); } if (query.getmaxstartdate() != null) { dict.add("maxstartdate", getisostring(query.getmaxstartdate())); } if (query.getminenddate() != null) { dict.add("minenddate", getisostring(query.getminenddate())); } if (query.getminstartdate() != null) { dict.add("minstartdate", getisostring(query.getminstartdate())); } if (!query.getenabletotalrecordcount()) { dict.add("enabletotalrecordcount", "false"); } dict.addifnotnull("enableimages", query.getenableimages()); dict.addifnotnull("imagetypelimit", query.getimagetypelimit()); dict.addifnotnull("enableimagetypes", query.getenableimagetypes()); dict.addifnotnull("fields", query.getfields()); dict.addifnotnull("sortby", query.getsortby()); dict.addifnotnullorempty("userid", query.getuserid()); if (query.getchannelids() != null) { dict.add("channelids", tangible.dotnettojavastringhelper.join(",", query.getchannelids())); } string url = getapiurl("livetv/programs", dict); url = adddataformat(url); send(url, "get", new serializedresponse<>(response, jsonserializer, itemsresult.class)); }