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

com.kaltura.client.utils.request.ArrayRequestBuilder 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 java.util.List;

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

public abstract class ArrayRequestBuilder extends RequestBuilder, RequestBuilder.ListTokenizer, S> {

	private Class type;

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

	public Class getType() {
		return type;
	}

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

    @SuppressWarnings("unchecked")
	public RequestBuilder.ListTokenizer 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.ListTokenizer((Class)annotation.value(), id + ":result");
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy