/*
 * Camel EndpointConfiguration generated by camel-api-component-maven-plugin
 */
package org.apache.camel.component.google.mail;

import org.apache.camel.spi.ApiMethod;
import org.apache.camel.spi.ApiParam;
import org.apache.camel.spi.ApiParams;
import org.apache.camel.spi.Configurer;
import org.apache.camel.spi.UriParam;
import org.apache.camel.spi.UriParams;

/**
 * Camel endpoint configuration for {@link com.google.api.services.gmail.Gmail.Users.Threads}.
 */
@ApiParams(apiName = "threads", 
           description = "The threads collection of methods",
           apiMethods = {@ApiMethod(methodName = "delete", description="Immediately and permanently deletes the specified thread", signatures={"com.google.api.services.gmail.Gmail$Users$Threads$Delete delete(String userId, String id)"}), @ApiMethod(methodName = "get", description="Gets the specified thread", signatures={"com.google.api.services.gmail.Gmail$Users$Threads$Get get(String userId, String id)"}), @ApiMethod(methodName = "list", description="Lists the threads in the user's mailbox", signatures={"com.google.api.services.gmail.Gmail$Users$Threads$List list(String userId)"}), @ApiMethod(methodName = "modify", description="Modifies the labels applied to the thread", signatures={"com.google.api.services.gmail.Gmail$Users$Threads$Modify modify(String userId, String id, com.google.api.services.gmail.model.ModifyThreadRequest content)"}), @ApiMethod(methodName = "trash", description="Moves the specified thread to the trash", signatures={"com.google.api.services.gmail.Gmail$Users$Threads$Trash trash(String userId, String id)"}), @ApiMethod(methodName = "untrash", description="Removes the specified thread from the trash", signatures={"com.google.api.services.gmail.Gmail$Users$Threads$Untrash untrash(String userId, String id)"})}, aliases = {})
@UriParams
@Configurer(extended = true)
public final class GmailUsersThreadsEndpointConfiguration extends GoogleMailConfiguration {
    @UriParam
    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "modify", description="The com.google.api.services.gmail.model.ModifyThreadRequest")})
    private com.google.api.services.gmail.model.ModifyThreadRequest content;
    @UriParam
    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="ID of the Thread to delete"), @ApiMethod(methodName = "get", description="The ID of the thread to retrieve"), @ApiMethod(methodName = "modify", description="The ID of the thread to modify"), @ApiMethod(methodName = "trash", description="The ID of the thread to Trash"), @ApiMethod(methodName = "untrash", description="The ID of the thread to remove from Trash")})
    private String id;
    @UriParam
    @ApiParam(optional = false, apiMethods = {@ApiMethod(methodName = "delete", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "get", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "list", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "modify", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "trash", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me"), @ApiMethod(methodName = "untrash", description="The user's email address. The special value me can be used to indicate the authenticated user. default: me")})
    private String userId;

    public com.google.api.services.gmail.model.ModifyThreadRequest getContent() {
        return content;
    }

    public void setContent(com.google.api.services.gmail.model.ModifyThreadRequest content) {
        this.content = content;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }
}
