com.autodesk.client.api.FoldersApi Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of forge-java-sdk Show documentation
Show all versions of forge-java-sdk Show documentation
Provides Java SDK to help you easily integrate Forge REST APIs into the application
/*
* Forge SDK
* The Forge Platform contains an expanding collection of web service components that can be used with Autodesk cloud-based products or your own technologies. Take advantage of Autodesk’s expertise in design and engineering.
*
* OpenAPI spec version: 0.1.0
* Contact: [email protected]
*
* NOTE: This class is auto generated by the swagger code generator program.
* https://github.com/swagger-api/swagger-codegen.git
* Do not edit the class manually.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.autodesk.client.api;
import com.sun.jersey.api.client.GenericType;
import com.autodesk.client.ApiException;
import com.autodesk.client.ApiClient;
import com.autodesk.client.Configuration;
import com.autodesk.client.model.*;
import com.autodesk.client.Pair;
import com.autodesk.client.auth.Credentials;
import com.autodesk.client.auth.Authentication;
import com.autodesk.client.ApiResponse;
import java.io.File;
import com.autodesk.client.model.BadInput;
import com.autodesk.client.model.Forbidden;
import com.autodesk.client.model.Folder;
import com.autodesk.client.model.NotFound;
import com.autodesk.client.model.JsonApiCollection;
import com.autodesk.client.model.Refs;
import com.autodesk.client.model.CreateRef;
import java.util.Arrays;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class FoldersApi {
private ApiClient apiClient;
public FoldersApi() {
this(Configuration.getDefaultApiClient());
}
public FoldersApi(ApiClient apiClient) {
this.apiClient = apiClient;
}
public ApiClient getApiClient() {
return apiClient;
}
public void setApiClient(ApiClient apiClient) {
this.apiClient = apiClient;
}
/**
*
* Returns the folder by ID for any folder within a given project. All folders or sub-folders within a project are associated with their own unique ID, including the root folder.
* @param projectId the `project id` (required)
* @param folderId the `folder id` (required)
* @return Folder
* @throws ApiException if fails to make API call
*/
public ApiResponse getFolder(String projectId, String folderId, Authentication oauth2, Credentials credentials) throws ApiException, Exception {
Object localVarPostBody = null;
// verify the required parameter 'projectId' is set
if (projectId == null) {
throw new ApiException(400, "Missing the required parameter 'projectId' when calling getFolder");
}
// verify the required parameter 'folderId' is set
if (folderId == null) {
throw new ApiException(400, "Missing the required parameter 'folderId' when calling getFolder");
}
// create path and map variables
String localVarPath = "/data/v1/projects/{project_id}/folders/{folder_id}".replaceAll("\\{format\\}","json")
.replaceAll("\\{" + "project_id" + "\\}", apiClient.escapeString(projectId.toString()))
.replaceAll("\\{" + "folder_id" + "\\}", apiClient.escapeString(folderId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
final String[] localVarAccepts = {
"application/vnd.api+json", "application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/vnd.api+json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
GenericType localVarReturnType = new GenericType() {};
return apiClient.invokeAPI(oauth2, credentials, localVarPath, "GET", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarReturnType);
}
/**
*
* Returns a collection of items and folders within a folder. Items represent word documents, fusion design files, drawings, spreadsheets, etc.
* @param projectId the `project id` (required)
* @param folderId the `folder id` (required)
* @param filterType filter by the `type` of the `ref` target (optional)
* @param filterId filter by the `id` of the `ref` target (optional)
* @param filterExtensionType filter by the extension type (optional)
* @param pageNumber specify the page number (optional)
* @param pageLimit specify the maximal number of elements per page (optional)
* @return JsonApiCollection
* @throws ApiException if fails to make API call
*/
public ApiResponse getFolderContents(String projectId, String folderId, List filterType, List filterId, List filterExtensionType, Integer pageNumber, Integer pageLimit, Authentication oauth2, Credentials credentials) throws ApiException, Exception {
Object localVarPostBody = null;
// verify the required parameter 'projectId' is set
if (projectId == null) {
throw new ApiException(400, "Missing the required parameter 'projectId' when calling getFolderContents");
}
// verify the required parameter 'folderId' is set
if (folderId == null) {
throw new ApiException(400, "Missing the required parameter 'folderId' when calling getFolderContents");
}
// create path and map variables
String localVarPath = "/data/v1/projects/{project_id}/folders/{folder_id}/contents".replaceAll("\\{format\\}","json")
.replaceAll("\\{" + "project_id" + "\\}", apiClient.escapeString(projectId.toString()))
.replaceAll("\\{" + "folder_id" + "\\}", apiClient.escapeString(folderId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "filter[type]", filterType));
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "filter[id]", filterId));
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "filter[extension.type]", filterExtensionType));
localVarQueryParams.addAll(apiClient.parameterToPairs("", "page[number]", pageNumber));
localVarQueryParams.addAll(apiClient.parameterToPairs("", "page[limit]", pageLimit));
final String[] localVarAccepts = {
"application/vnd.api+json", "application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/vnd.api+json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
GenericType localVarReturnType = new GenericType() {};
return apiClient.invokeAPI(oauth2, credentials, localVarPath, "GET", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarReturnType);
}
/**
*
* Returns the parent folder (if it exists). In a project, subfolders and resource items are stored under a folder except the root folder which does not have a parent of its own.
* @param projectId the `project id` (required)
* @param folderId the `folder id` (required)
* @return Folder
* @throws ApiException if fails to make API call
*/
public ApiResponse getFolderParent(String projectId, String folderId, Authentication oauth2, Credentials credentials) throws ApiException, Exception {
Object localVarPostBody = null;
// verify the required parameter 'projectId' is set
if (projectId == null) {
throw new ApiException(400, "Missing the required parameter 'projectId' when calling getFolderParent");
}
// verify the required parameter 'folderId' is set
if (folderId == null) {
throw new ApiException(400, "Missing the required parameter 'folderId' when calling getFolderParent");
}
// create path and map variables
String localVarPath = "/data/v1/projects/{project_id}/folders/{folder_id}/parent".replaceAll("\\{format\\}","json")
.replaceAll("\\{" + "project_id" + "\\}", apiClient.escapeString(projectId.toString()))
.replaceAll("\\{" + "folder_id" + "\\}", apiClient.escapeString(folderId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
final String[] localVarAccepts = {
"application/vnd.api+json", "application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/vnd.api+json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
GenericType localVarReturnType = new GenericType() {};
return apiClient.invokeAPI(oauth2, credentials, localVarPath, "GET", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarReturnType);
}
/**
*
* Returns the resources (`items`, `folders`, and `versions`) which have a custom relationship with the given `folder_id`. Custom relationships can be established between a folder and other resources within the 'data' domain service (folders, items, and versions).
* @param projectId the `project id` (required)
* @param folderId the `folder id` (required)
* @param filterType filter by the `type` of the `ref` target (optional)
* @param filterId filter by the `id` of the `ref` target (optional)
* @param filterExtensionType filter by the extension type (optional)
* @return JsonApiCollection
* @throws ApiException if fails to make API call
*/
public ApiResponse getFolderRefs(String projectId, String folderId, List filterType, List filterId, List filterExtensionType, Authentication oauth2, Credentials credentials) throws ApiException, Exception {
Object localVarPostBody = null;
// verify the required parameter 'projectId' is set
if (projectId == null) {
throw new ApiException(400, "Missing the required parameter 'projectId' when calling getFolderRefs");
}
// verify the required parameter 'folderId' is set
if (folderId == null) {
throw new ApiException(400, "Missing the required parameter 'folderId' when calling getFolderRefs");
}
// create path and map variables
String localVarPath = "/data/v1/projects/{project_id}/folders/{folder_id}/refs".replaceAll("\\{format\\}","json")
.replaceAll("\\{" + "project_id" + "\\}", apiClient.escapeString(projectId.toString()))
.replaceAll("\\{" + "folder_id" + "\\}", apiClient.escapeString(folderId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "filter[type]", filterType));
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "filter[id]", filterId));
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "filter[extension.type]", filterExtensionType));
final String[] localVarAccepts = {
"application/vnd.api+json", "application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/vnd.api+json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
GenericType localVarReturnType = new GenericType() {};
return apiClient.invokeAPI(oauth2, credentials, localVarPath, "GET", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarReturnType);
}
/**
*
* Returns the custom relationships that are associated to the given `folder_id`. Custom relationships can be established between a folder and other resources within the 'data' domain service (folders, items, and versions).
* @param projectId the `project id` (required)
* @param folderId the `folder id` (required)
* @param filterType filter by the `type` of the `ref` target (optional)
* @param filterId filter by the `id` of the `ref` target (optional)
* @param filterRefType filter by `refType` (optional)
* @param filterDirection filter by the direction of the reference (optional)
* @param filterExtensionType filter by the extension type (optional)
* @return Refs
* @throws ApiException if fails to make API call
*/
public ApiResponse getFolderRelationshipsRefs(String projectId, String folderId, List filterType, List filterId, List filterRefType, String filterDirection, List filterExtensionType, Authentication oauth2, Credentials credentials) throws ApiException, Exception {
Object localVarPostBody = null;
// verify the required parameter 'projectId' is set
if (projectId == null) {
throw new ApiException(400, "Missing the required parameter 'projectId' when calling getFolderRelationshipsRefs");
}
// verify the required parameter 'folderId' is set
if (folderId == null) {
throw new ApiException(400, "Missing the required parameter 'folderId' when calling getFolderRelationshipsRefs");
}
// create path and map variables
String localVarPath = "/data/v1/projects/{project_id}/folders/{folder_id}/relationships/refs".replaceAll("\\{format\\}","json")
.replaceAll("\\{" + "project_id" + "\\}", apiClient.escapeString(projectId.toString()))
.replaceAll("\\{" + "folder_id" + "\\}", apiClient.escapeString(folderId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "filter[type]", filterType));
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "filter[id]", filterId));
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "filter[refType]", filterRefType));
localVarQueryParams.addAll(apiClient.parameterToPairs("", "filter[direction]", filterDirection));
localVarQueryParams.addAll(apiClient.parameterToPairs("csv", "filter[extension.type]", filterExtensionType));
final String[] localVarAccepts = {
"application/vnd.api+json", "application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/vnd.api+json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
GenericType localVarReturnType = new GenericType() {};
return apiClient.invokeAPI(oauth2, credentials, localVarPath, "GET", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarReturnType);
}
/**
*
* Creates a custom relationship between a folder and another resource within the 'data' domain service (folder, item, or version).
* @param projectId the `project id` (required)
* @param folderId the `folder id` (required)
* @param body describe the ref to be created (required)
* @throws ApiException if fails to make API call
*/
public ApiResponse postFolderRelationshipsRef(String projectId, String folderId, CreateRef body, Authentication oauth2, Credentials credentials) throws ApiException, Exception {
Object localVarPostBody = body;
// verify the required parameter 'projectId' is set
if (projectId == null) {
throw new ApiException(400, "Missing the required parameter 'projectId' when calling postFolderRelationshipsRef");
}
// verify the required parameter 'folderId' is set
if (folderId == null) {
throw new ApiException(400, "Missing the required parameter 'folderId' when calling postFolderRelationshipsRef");
}
// verify the required parameter 'body' is set
if (body == null) {
throw new ApiException(400, "Missing the required parameter 'body' when calling postFolderRelationshipsRef");
}
// create path and map variables
String localVarPath = "/data/v1/projects/{project_id}/folders/{folder_id}/relationships/refs".replaceAll("\\{format\\}","json")
.replaceAll("\\{" + "project_id" + "\\}", apiClient.escapeString(projectId.toString()))
.replaceAll("\\{" + "folder_id" + "\\}", apiClient.escapeString(folderId.toString()));
// query params
List localVarQueryParams = new ArrayList();
Map localVarHeaderParams = new HashMap();
Map localVarFormParams = new HashMap();
final String[] localVarAccepts = {
"application/vnd.api+json", "application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
final String[] localVarContentTypes = {
"application/vnd.api+json"
};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
return apiClient.invokeAPI(oauth2, credentials, localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, null);
}
}