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

org.gs4tr.gcc.restclient.operation.Tasks Maven / Gradle / Ivy

Go to download

GlobalLink Connect Cloud java is a library to connect your system to GlobalLink Connect Cloud REST API.

There is a newer version: 3.1.3
Show newest version
package org.gs4tr.gcc.restclient.operation;

import java.util.List;

import org.gs4tr.gcc.restclient.GCConfig;
import org.gs4tr.gcc.restclient.dto.GCResponse;
import org.gs4tr.gcc.restclient.dto.PageableResponseData;
import org.gs4tr.gcc.restclient.model.GCTask;
import org.gs4tr.gcc.restclient.request.GCRequest;
import org.gs4tr.gcc.restclient.request.TaskListRequest;

import com.fasterxml.jackson.annotation.JsonProperty;

public class Tasks extends GCOperation {

    private final TaskListRequest request;

    public Tasks(GCConfig config, TaskListRequest request) {
	super(config);
	this.request = request;
    }

    private static final String REQUEST_URL = "tasks";
    private static final String REQUEST_METHOD = "POST";

    @Override
    public String getRequestMethod() {
	return REQUEST_METHOD;
    }

    @Override
    protected String getApiUrl() {
	return REQUEST_URL;
    }

    @Override
    public GCRequest getRequestObject() {
	return getRequest();
    }

    @Override
    public Class getResponseClass() {
	return TasksResponse.class;
    }

    public TaskListRequest getRequest() {
	return request;
    }

    public static class TasksResponse extends GCResponse {

	@JsonProperty("response_data")
	private TasksResponseData responseData;

	public TasksResponseData getResponseData() {
	    return responseData;
	}

	public void setResponseData(TasksResponseData responseData) {
	    this.responseData = responseData;
	}

    }

    public static class TasksResponseData extends PageableResponseData {

	@JsonProperty("tasks_list")
	private List tasks;

	public List getTasks() {
	    return tasks;
	}

	public void setTasks(List tasks) {
	    this.tasks = tasks;
	}

    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy