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

org.bonitasoft.web.client.api.MembershipApi Maven / Gradle / Ivy

The newest version!
/** 
 * Copyright (C) 2024 BonitaSoft S.A.
 * BonitaSoft, 32 rue Gustave Eiffel - 38000 Grenoble
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2.0 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program. If not, see .
 */
package org.bonitasoft.web.client.api;

import java.util.HashMap;
import java.util.List;

import org.bonitasoft.web.client.invoker.ApiClient;
import org.bonitasoft.web.client.invoker.EncodingUtils;
import org.bonitasoft.web.client.model.ApiResponse;
import org.bonitasoft.web.client.model.Membership;
import org.bonitasoft.web.client.model.MembershipCreateRequest;

import feign.*;

@jakarta.annotation.Generated(value = "org.openapitools.codegen.languages.JavaClientCodegen", comments = "Generator version: 7.8.0")
public interface MembershipApi extends ApiClient.Api {

    /**
     * Create the Membership
     * Create the Membership
     * 
     * @param body Partial Membership description (required)
     * @return Membership
     */
    @RequestLine("POST /API/identity/membership")
    @Headers({
            "Content-Type: application/json",
            "Accept: application/json",
    })
    Membership createMembership(MembershipCreateRequest body);

    /**
     * Create the Membership
     * Similar to createMembership but it also returns the http response headers .
     * Create the Membership
     * 
     * @param body Partial Membership description (required)
     * @return A ApiResponse that wraps the response boyd and the http headers.
     */
    @RequestLine("POST /API/identity/membership")
    @Headers({
            "Content-Type: application/json",
            "Accept: application/json",
    })
    ApiResponse createMembershipWithHttpInfo(MembershipCreateRequest body);

    /**
     * Delete the Membership by ID
     * Delete a membership of a user using the group id and role id.
     * 
     * @param userId User ID of the Membership to delete (required)
     * @param groupId Group ID of the Membership to delete (required)
     * @param roleId Role ID of the Membership to delete (required)
     */
    @RequestLine("DELETE /API/identity/membership/{userId}/{groupId}/{roleId}")
    @Headers({
            "Accept: application/json",
    })
    void deleteMembershipById(@Param("userId") String userId, @Param("groupId") String groupId,
            @Param("roleId") String roleId);

    /**
     * Delete the Membership by ID
     * Similar to deleteMembershipById but it also returns the http response headers .
     * Delete a membership of a user using the group id and role id.
     * 
     * @param userId User ID of the Membership to delete (required)
     * @param groupId Group ID of the Membership to delete (required)
     * @param roleId Role ID of the Membership to delete (required)
     */
    @RequestLine("DELETE /API/identity/membership/{userId}/{groupId}/{roleId}")
    @Headers({
            "Accept: application/json",
    })
    ApiResponse deleteMembershipByIdWithHttpInfo(@Param("userId") String userId, @Param("groupId") String groupId,
            @Param("roleId") String roleId);

    /**
     * Finds Memberships
     * Finds Memberships with pagination params and filters **Filter `user_id` is mandatory** You can order with the values:
     * `ROLE_NAME_ASC`,`ROLE_NAME_DESC`, `GROUP_NAME_ASC`,`GROUP_NAME_DESC`, `ASSIGNED_DATE_ASC`,
     * `ASSIGNED_DATE_DESC`
     * 
     * @param p index of the page to display (required)
     * @param c maximum number of elements to retrieve (required)
     * @param f can filter on attributes with the format f={filter\\_name}={filter\\_value} with the name/value pair as url encoded string. (optional)
     * @param o can order on attributes (optional)
     * @param s can search on attributes (optional)
     * @return List<Membership>
     */
    @RequestLine("GET /API/identity/membership?p={p}&c={c}&f={f}&o={o}&s={s}")
    @Headers({
            "Accept: application/json",
    })
    List searchMemberships(@Param("p") Integer p, @Param("c") Integer c, @Param("f") List f,
            @Param("o") String o, @Param("s") String s);

    /**
     * Finds Memberships
     * Similar to searchMemberships but it also returns the http response headers .
     * Finds Memberships with pagination params and filters **Filter `user_id` is mandatory** You can order with the values:
     * `ROLE_NAME_ASC`,`ROLE_NAME_DESC`, `GROUP_NAME_ASC`,`GROUP_NAME_DESC`, `ASSIGNED_DATE_ASC`,
     * `ASSIGNED_DATE_DESC`
     * 
     * @param p index of the page to display (required)
     * @param c maximum number of elements to retrieve (required)
     * @param f can filter on attributes with the format f={filter\\_name}={filter\\_value} with the name/value pair as url encoded string. (optional)
     * @param o can order on attributes (optional)
     * @param s can search on attributes (optional)
     * @return A ApiResponse that wraps the response boyd and the http headers.
     */
    @RequestLine("GET /API/identity/membership?p={p}&c={c}&f={f}&o={o}&s={s}")
    @Headers({
            "Accept: application/json",
    })
    ApiResponse> searchMembershipsWithHttpInfo(@Param("p") Integer p, @Param("c") Integer c,
            @Param("f") List f, @Param("o") String o, @Param("s") String s);

    /**
     * Finds Memberships
     * Finds Memberships with pagination params and filters **Filter `user_id` is mandatory** You can order with the values:
     * `ROLE_NAME_ASC`,`ROLE_NAME_DESC`, `GROUP_NAME_ASC`,`GROUP_NAME_DESC`, `ASSIGNED_DATE_ASC`,
     * `ASSIGNED_DATE_DESC`
     * Note, this is equivalent to the other searchMemberships method,
     * but with the query parameters collected into a single Map parameter. This
     * is convenient for services with optional query parameters, especially when
     * used with the {@link SearchMembershipsQueryParams} class that allows for
     * building up this map in a fluent style.
     * 
     * @param queryParams Map of query parameters as name-value pairs
     *        

The following elements may be specified in the query map:

*
    *
  • p - index of the page to display (required)
  • *
  • c - maximum number of elements to retrieve (required)
  • *
  • f - can filter on attributes with the format f={filter\\_name}={filter\\_value} with the name/value pair as url encoded string. * (optional)
  • *
  • o - can order on attributes (optional)
  • *
  • s - can search on attributes (optional)
  • *
* @return List<Membership> */ @RequestLine("GET /API/identity/membership?p={p}&c={c}&f={f}&o={o}&s={s}") @Headers({ "Accept: application/json", }) List searchMemberships(@QueryMap(encoded = true) SearchMembershipsQueryParams queryParams); /** * Finds Memberships * Finds Memberships with pagination params and filters **Filter `user_id` is mandatory** You can order with the values: * `ROLE_NAME_ASC`,`ROLE_NAME_DESC`, `GROUP_NAME_ASC`,`GROUP_NAME_DESC`, `ASSIGNED_DATE_ASC`, * `ASSIGNED_DATE_DESC` * Note, this is equivalent to the other searchMemberships that receives the query parameters as a map, * but this one also exposes the Http response headers * * @param queryParams Map of query parameters as name-value pairs *

The following elements may be specified in the query map:

*
    *
  • p - index of the page to display (required)
  • *
  • c - maximum number of elements to retrieve (required)
  • *
  • f - can filter on attributes with the format f={filter\\_name}={filter\\_value} with the name/value pair as url encoded string. * (optional)
  • *
  • o - can order on attributes (optional)
  • *
  • s - can search on attributes (optional)
  • *
* @return List<Membership> */ @RequestLine("GET /API/identity/membership?p={p}&c={c}&f={f}&o={o}&s={s}") @Headers({ "Accept: application/json", }) ApiResponse> searchMembershipsWithHttpInfo( @QueryMap(encoded = true) SearchMembershipsQueryParams queryParams); /** * A convenience class for generating query parameters for the * searchMemberships method in a fluent style. */ public static class SearchMembershipsQueryParams extends HashMap { public SearchMembershipsQueryParams p(final Integer value) { put("p", EncodingUtils.encode(value)); return this; } public SearchMembershipsQueryParams c(final Integer value) { put("c", EncodingUtils.encode(value)); return this; } public SearchMembershipsQueryParams f(final List value) { put("f", EncodingUtils.encodeCollection(value, "multi")); return this; } public SearchMembershipsQueryParams o(final String value) { put("o", EncodingUtils.encode(value)); return this; } public SearchMembershipsQueryParams s(final String value) { put("s", EncodingUtils.encode(value)); return this; } } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy