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

org.cloudfoundry.uaa.groups.Groups Maven / Gradle / Ivy

There is a newer version: 5.12.2.RELEASE
Show newest version
/*
 * Copyright 2013-2021 the original author or authors.
 *
 * 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 org.cloudfoundry.uaa.groups;

import reactor.core.publisher.Mono;

/**
 * Main entry point to the UAA Group Management Client API
 */
public interface Groups {

    /**
     * Makes the Add Member request
     *
     * @param request the Add Member request
     * @return the response from the Add Member request
     */
    Mono addMember(AddMemberRequest request);

    /**
     * Makes the Check Membership request
     *
     * @param request the Check Membership request
     * @return the response from the Check Membership request
     */
    Mono checkMembership(CheckMembershipRequest request);

    /**
     * Makes the Create Group request
     *
     * @param request the Create Group request
     * @return the response from the Create Group request
     */
    Mono create(CreateGroupRequest request);

    /**
     * Makes the Delete a Group request
     *
     * @param request the Delete Group request
     * @return the response from the Delete Group request
     */
    Mono delete(DeleteGroupRequest request);

    /**
     * Makes the Retrieve a Group request
     *
     * @param request the Get Group request
     * @return the response from the Get Group request
     */
    Mono get(GetGroupRequest request);

    /**
     * Makes the List Groups request
     *
     * @param request the List Groups request
     * @return the response from the List Groups request
     */
    Mono list(ListGroupsRequest request);

    /**
     * Makes the List External Group Mappings request
     *
     * @param request the List External Group Mappings request
     * @return the response from the List External Group Mappings request
     */
    Mono listExternalGroupMappings(
            ListExternalGroupMappingsRequest request);

    /**
     * Makes the List Members request
     *
     * @param request the List Members request
     * @return the response from the List Members request
     */
    Mono listMembers(ListMembersRequest request);

    /**
     * Makes the Map External Group request
     *
     * @param request the Map External Group request
     * @return the response from the Map External Group request
     */
    Mono mapExternalGroup(MapExternalGroupRequest request);

    /**
     * Makes the Remove Member request
     *
     * @param request the Remove Member request
     * @return the response from the Remove Member request
     */
    Mono removeMember(RemoveMemberRequest request);

    /**
     * Makes the Unmap External Group By Group Display Name request
     *
     * @param request the Unmap External Group By Group Display Name request
     * @return the response from the Unmap External Group By Group Display Name request
     */
    Mono unmapExternalGroupByGroupDisplayName(
            UnmapExternalGroupByGroupDisplayNameRequest request);

    /**
     * Makes the Unmap External Group By Group Id request
     *
     * @param request the Unmap External Group By Group Id request
     * @return the response from the Unmap External Group By Group Id request
     */
    Mono unmapExternalGroupByGroupId(
            UnmapExternalGroupByGroupIdRequest request);

    /**
     * Makes the Update Group request
     *
     * @param request the Update Group request
     * @return the response from the Update Group request
     */
    Mono update(UpdateGroupRequest request);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy