
package jp.co.argo21.nautica.workflow.soap;

import java.util.List;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;
import javax.xml.ws.RequestWrapper;
import javax.xml.ws.ResponseWrapper;
import jp.co.argo21.nautica.workflow.soap.message.Organization;
import jp.co.argo21.nautica.workflow.soap.message.Role;
import jp.co.argo21.nautica.workflow.soap.message.User;


/**
 * This class was generated by the JAXWS SI.
 * JAX-WS RI 2.0_02-b08-fcs
 * Generated source version: 2.0
 * 
 */
@WebService(name = "RoleManager", targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message")
public interface RoleManager {


    /**
     * 
     * @param org
     * @return
     *     returns java.util.List<jp.co.argo21.nautica.workflow.soap.message.Role>
     * @throws ServiceAccessorException
     * @throws WorkflowException
     */
    @WebMethod
    @WebResult(targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message")
    @RequestWrapper(localName = "getAttachedRoles1", targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message", className = "jp.co.argo21.nautica.workflow.soap.message.GetAttachedRoles1")
    @ResponseWrapper(localName = "getAttachedRolesResponse1", targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message", className = "jp.co.argo21.nautica.workflow.soap.message.GetAttachedRolesResponse1")
    public List<Role> getAttachedRoles1(
        @WebParam(name = "org", targetNamespace = "")
        Organization org)
        throws ServiceAccessorException, WorkflowException
    ;

    /**
     * 
     * @param user
     * @return
     *     returns java.util.List<jp.co.argo21.nautica.workflow.soap.message.Role>
     * @throws ServiceAccessorException
     * @throws WorkflowException
     */
    @WebMethod
    @WebResult(targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message")
    @RequestWrapper(localName = "getAttachedRoles2", targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message", className = "jp.co.argo21.nautica.workflow.soap.message.GetAttachedRoles2")
    @ResponseWrapper(localName = "getAttachedRolesResponse2", targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message", className = "jp.co.argo21.nautica.workflow.soap.message.GetAttachedRolesResponse2")
    public List<Role> getAttachedRoles2(
        @WebParam(name = "user", targetNamespace = "")
        User user)
        throws ServiceAccessorException, WorkflowException
    ;

    /**
     * 
     * @param role
     * @return
     *     returns java.util.List<jp.co.argo21.nautica.workflow.soap.message.Organization>
     * @throws ServiceAccessorException
     * @throws WorkflowException
     */
    @WebMethod
    @WebResult(targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message")
    @RequestWrapper(localName = "getOrganizationsByRole", targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message", className = "jp.co.argo21.nautica.workflow.soap.message.GetOrganizationsByRole")
    @ResponseWrapper(localName = "getOrganizationsByRoleResponse", targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message", className = "jp.co.argo21.nautica.workflow.soap.message.GetOrganizationsByRoleResponse")
    public List<Organization> getOrganizationsByRole(
        @WebParam(name = "role", targetNamespace = "")
        Role role)
        throws ServiceAccessorException, WorkflowException
    ;

    /**
     * 
     * @param rid
     * @return
     *     returns jp.co.argo21.nautica.workflow.soap.message.Role
     * @throws ServiceAccessorException
     * @throws WorkflowException
     */
    @WebMethod
    @WebResult(targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message")
    @RequestWrapper(localName = "getRole", targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message", className = "jp.co.argo21.nautica.workflow.soap.message.GetRole")
    @ResponseWrapper(localName = "getRoleResponse", targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message", className = "jp.co.argo21.nautica.workflow.soap.message.GetRoleResponse")
    public Role getRole(
        @WebParam(name = "rid", targetNamespace = "")
        String rid)
        throws ServiceAccessorException, WorkflowException
    ;

    /**
     * 
     * @param role
     * @return
     *     returns java.util.List<jp.co.argo21.nautica.workflow.soap.message.User>
     * @throws ServiceAccessorException
     * @throws WorkflowException
     */
    @WebMethod
    @WebResult(targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message")
    @RequestWrapper(localName = "getUsersByRole", targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message", className = "jp.co.argo21.nautica.workflow.soap.message.GetUsersByRole")
    @ResponseWrapper(localName = "getUsersByRoleResponse", targetNamespace = "http://www.argo21.co.jp/nautica/workflow/soap/message", className = "jp.co.argo21.nautica.workflow.soap.message.GetUsersByRoleResponse")
    public List<User> getUsersByRole(
        @WebParam(name = "role", targetNamespace = "")
        Role role)
        throws ServiceAccessorException, WorkflowException
    ;

}
