Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the MIT License. See License.txt in the project root for
license information.
/**
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*/
package com.microsoft.azure.management.graphrbac;
import com.microsoft.azure.management.apigeneration.Fluent;
import com.microsoft.azure.management.graphrbac.implementation.ADGroupInner;
import com.microsoft.azure.management.resources.fluentcore.model.Appliable;
import com.microsoft.azure.management.resources.fluentcore.model.Creatable;
import com.microsoft.azure.management.resources.fluentcore.model.HasInner;
import com.microsoft.azure.management.resources.fluentcore.model.Updatable;
import rx.Observable;
import java.util.Set;
An immutable client-side representation of an Azure AD group.
/**
* An immutable client-side representation of an Azure AD group.
*/
@Fluent(ContainerName = "/Microsoft.Azure.Management.Graph.RBAC.Fluent")
public interface ActiveDirectoryGroup extends
ActiveDirectoryObject,
HasInner<ADGroupInner>,
Updatable<ActiveDirectoryGroup.Update> {
Returns: security enabled field.
/**
* @return security enabled field.
*/
boolean securityEnabled();
Returns: mail field.
/**
* @return mail field.
*/
String mail();
Lists the members in the group.
Returns: an unmodifiable set of the members
/**
* Lists the members in the group.
* @return an unmodifiable set of the members
*/
Set<ActiveDirectoryObject> listMembers();
Lists the members in the group.
Returns: an unmodifiable set of the members
/**
* Lists the members in the group.
* @return an unmodifiable set of the members
*/
Observable<ActiveDirectoryObject> listMembersAsync();
Container interface for all the definitions that need to be implemented.
/**
* Container interface for all the definitions that need to be implemented.
*/
interface Definition extends
DefinitionStages.Blank,
DefinitionStages.WithEmailAlias,
DefinitionStages.WithCreate {
}
Grouping of all the AD group definition stages.
/**
* Grouping of all the AD group definition stages.
*/
interface DefinitionStages {
The first stage of the AD group definition.
/**
* The first stage of the AD group definition.
*/
interface Blank extends WithEmailAlias {
}
An AD Group definition allowing mail nickname to be specified.
/**
* An AD Group definition allowing mail nickname to be specified.
*/
interface WithEmailAlias {
WithCreate withEmailAlias(String mailNickname);
}
An AD Group definition allowing members to be added.
/**
* An AD Group definition allowing members to be added.
*/
interface WithMember {
Add a member based on its object id. The member can be a user, a group, a service principal, or an application.
Params: - objectId – the Active Directory object's id
Returns: the next AD Group definition stage
/**
* Add a member based on its object id. The member can be a user, a group, a service principal, or an application.
* @param objectId the Active Directory object's id
* @return the next AD Group definition stage
*/
WithCreate withMember(String objectId);
Adds a user as a member in the group.
Params: - user – the Active Directory user to add
Returns: the next AD group definition stage
/**
* Adds a user as a member in the group.
* @param user the Active Directory user to add
* @return the next AD group definition stage
*/
WithCreate withMember(ActiveDirectoryUser user);
Adds a group as a member in the group.
Params: - group – the Active Directory group to add
Returns: the next AD group definition stage
/**
* Adds a group as a member in the group.
* @param group the Active Directory group to add
* @return the next AD group definition stage
*/
WithCreate withMember(ActiveDirectoryGroup group);
Adds a service principal as a member in the group.
Params: - servicePrincipal – the service principal to add
Returns: the next AD group definition stage
/**
* Adds a service principal as a member in the group.
* @param servicePrincipal the service principal to add
* @return the next AD group definition stage
*/
WithCreate withMember(ServicePrincipal servicePrincipal);
}
An AD group definition with sufficient inputs to create a new
group in the cloud, but exposing additional optional inputs to
specify.
/**
* An AD group definition with sufficient inputs to create a new
* group in the cloud, but exposing additional optional inputs to
* specify.
*/
interface WithCreate extends
Creatable<ActiveDirectoryGroup>,
WithMember {
}
}
Grouping of all the AD group update stages.
/**
* Grouping of all the AD group update stages.
*/
interface UpdateStages {
An AD Group definition allowing members to be added or removed.
/**
* An AD Group definition allowing members to be added or removed.
*/
interface WithMember {
Adds a member based on its object id. The member can be a user, a group, a service principal, or an application.
Params: - objectId – the Active Directory object's id
Returns: the next AD Group update stage
/**
* Adds a member based on its object id. The member can be a user, a group, a service principal, or an application.
* @param objectId the Active Directory object's id
* @return the next AD Group update stage
*/
Update withMember(String objectId);
Adds a user as a member in the group.
Params: - user – the Active Directory user to add
Returns: the next AD group update stage
/**
* Adds a user as a member in the group.
* @param user the Active Directory user to add
* @return the next AD group update stage
*/
Update withMember(ActiveDirectoryUser user);
Adds a group as a member in the group.
Params: - group – the Active Directory group to add
Returns: the next AD group update stage
/**
* Adds a group as a member in the group.
* @param group the Active Directory group to add
* @return the next AD group update stage
*/
Update withMember(ActiveDirectoryGroup group);
Adds a service principal as a member in the group.
Params: - servicePrincipal – the service principal to add
Returns: the next AD group update stage
/**
* Adds a service principal as a member in the group.
* @param servicePrincipal the service principal to add
* @return the next AD group update stage
*/
Update withMember(ServicePrincipal servicePrincipal);
Removes a member based on its object id.
Params: - objectId – the Active Directory object's id
Returns: the next AD Group update stage
/**
* Removes a member based on its object id.
* @param objectId the Active Directory object's id
* @return the next AD Group update stage
*/
Update withoutMember(String objectId);
Removes a user as a member in the group.
Params: - user – the Active Directory user to remove
Returns: the next AD group update stage
/**
* Removes a user as a member in the group.
* @param user the Active Directory user to remove
* @return the next AD group update stage
*/
Update withoutMember(ActiveDirectoryUser user);
Removes a group as a member in the group.
Params: - group – the Active Directory group to remove
Returns: the next AD group update stage
/**
* Removes a group as a member in the group.
* @param group the Active Directory group to remove
* @return the next AD group update stage
*/
Update withoutMember(ActiveDirectoryGroup group);
Removes a service principal as a member in the group.
Params: - servicePrincipal – the service principal to remove
Returns: the next AD group update stage
/**
* Removes a service principal as a member in the group.
* @param servicePrincipal the service principal to remove
* @return the next AD group update stage
*/
Update withoutMember(ServicePrincipal servicePrincipal);
}
}
The template for a group update operation, containing all the settings that can be modified.
/**
* The template for a group update operation, containing all the settings that can be modified.
*/
interface Update extends
Appliable<ActiveDirectoryGroup>,
UpdateStages.WithMember {
}
}