All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.kaltura.client.utils.request.ListResponseRequestBuilder Maven / Gradle / Ivy

Go to download

KalturaClient is a library of Java classes that can be used to interact with the Kaltura REST API. More information about the REST API can be found at http://corp.kaltura.com/Products/Kaltura-API Many of the Java classes in this library are auto-generated from a schema that defines the objects that are used to interect with the API. The current schema can be found at http://www.kaltura.com/api_v3/api_schema.php

There is a newer version: 19.3.0
Show newest version
package com.kaltura.client.utils.request;

import com.kaltura.client.types.APIException;
import com.kaltura.client.types.ListResponse;
import com.kaltura.client.utils.GsonParser;

public abstract class ListResponseRequestBuilder extends RequestBuilder, ListResponse.Tokenizer, S> {

    private Class type;

    public ListResponseRequestBuilder(Class type, String service, String action) {
        super(null, service, action);
    	this.type = type;
    }

	public Class getType() {
        return ListResponse.class;
	}

	public Class getRawType(){
        return type;
    }

    protected Object parse(String response) throws APIException {
    	return GsonParser.parseListResponse(response, type);
    }

	@SuppressWarnings("unchecked")
	public ListResponse.Tokenizer getTokenizer() throws APIException {
		if(id == null) {
			throw new APIException(APIException.FailureStep.OnRequest, "Request is not part of multi-request");
		}

    	MultiRequestBuilder.Tokenizer annotation = type.getAnnotation(MultiRequestBuilder.Tokenizer.class);
		return new RequestBuilder.ListResponseTokenizer((Class)annotation.value(), id + ":result");
    }
}

















© 2015 - 2024 Weber Informatics LLC | Privacy Policy