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

odata.msgraph.client.entity.request.ServicePrincipalRequest Maven / Gradle / Ivy

package odata.msgraph.client.entity.request;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonIgnoreType;
import com.github.davidmoten.guavamini.Preconditions;
import com.github.davidmoten.odata.client.ActionRequestNoReturn;
import com.github.davidmoten.odata.client.ActionRequestReturningNonCollectionUnwrapped;
import com.github.davidmoten.odata.client.ContextPath;
import com.github.davidmoten.odata.client.EntityRequest;
import com.github.davidmoten.odata.client.NameValue;
import com.github.davidmoten.odata.client.annotation.Action;
import com.github.davidmoten.odata.client.internal.Checks;
import com.github.davidmoten.odata.client.internal.ParameterMap;
import com.github.davidmoten.odata.client.internal.TypedObject;

import java.lang.Object;
import java.lang.String;
import java.time.OffsetDateTime;
import java.util.Map;
import java.util.Optional;

import odata.msgraph.client.complex.KeyCredential;
import odata.msgraph.client.complex.PasswordCredential;
import odata.msgraph.client.complex.SelfSignedCertificate;
import odata.msgraph.client.entity.ServicePrincipal;
import odata.msgraph.client.entity.collection.request.AppRoleAssignmentCollectionRequest;
import odata.msgraph.client.entity.collection.request.ClaimsMappingPolicyCollectionRequest;
import odata.msgraph.client.entity.collection.request.DelegatedPermissionClassificationCollectionRequest;
import odata.msgraph.client.entity.collection.request.DirectoryObjectCollectionRequest;
import odata.msgraph.client.entity.collection.request.EndpointCollectionRequest;
import odata.msgraph.client.entity.collection.request.FederatedIdentityCredentialCollectionRequest;
import odata.msgraph.client.entity.collection.request.HomeRealmDiscoveryPolicyCollectionRequest;
import odata.msgraph.client.entity.collection.request.OAuth2PermissionGrantCollectionRequest;
import odata.msgraph.client.entity.collection.request.TokenIssuancePolicyCollectionRequest;
import odata.msgraph.client.entity.collection.request.TokenLifetimePolicyCollectionRequest;

@JsonIgnoreType
public class ServicePrincipalRequest extends EntityRequest {

    public ServicePrincipalRequest(ContextPath contextPath, Optional value) {
        super(ServicePrincipal.class, contextPath, value, false);
    }

    public AppRoleAssignmentRequest appRoleAssignedTo(String id) {
        return new AppRoleAssignmentRequest(contextPath.addSegment("appRoleAssignedTo").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public AppRoleAssignmentCollectionRequest appRoleAssignedTo() {
        return new AppRoleAssignmentCollectionRequest(
                        contextPath.addSegment("appRoleAssignedTo"), Optional.empty());
    }

    public AppRoleAssignmentRequest appRoleAssignments(String id) {
        return new AppRoleAssignmentRequest(contextPath.addSegment("appRoleAssignments").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public AppRoleAssignmentCollectionRequest appRoleAssignments() {
        return new AppRoleAssignmentCollectionRequest(
                        contextPath.addSegment("appRoleAssignments"), Optional.empty());
    }

    public ClaimsMappingPolicyRequest claimsMappingPolicies(String id) {
        return new ClaimsMappingPolicyRequest(contextPath.addSegment("claimsMappingPolicies").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public ClaimsMappingPolicyCollectionRequest claimsMappingPolicies() {
        return new ClaimsMappingPolicyCollectionRequest(
                        contextPath.addSegment("claimsMappingPolicies"), Optional.empty());
    }

    public DirectoryObjectRequest createdObjects(String id) {
        return new DirectoryObjectRequest(contextPath.addSegment("createdObjects").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public DirectoryObjectCollectionRequest createdObjects() {
        return new DirectoryObjectCollectionRequest(
                        contextPath.addSegment("createdObjects"), Optional.empty());
    }

    public DelegatedPermissionClassificationRequest delegatedPermissionClassifications(String id) {
        return new DelegatedPermissionClassificationRequest(contextPath.addSegment("delegatedPermissionClassifications").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public DelegatedPermissionClassificationCollectionRequest delegatedPermissionClassifications() {
        return new DelegatedPermissionClassificationCollectionRequest(
                        contextPath.addSegment("delegatedPermissionClassifications"), Optional.empty());
    }

    public EndpointRequest endpoints(String id) {
        return new EndpointRequest(contextPath.addSegment("endpoints").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public EndpointCollectionRequest endpoints() {
        return new EndpointCollectionRequest(
                        contextPath.addSegment("endpoints"), Optional.empty());
    }

    public FederatedIdentityCredentialRequest federatedIdentityCredentials(String id) {
        return new FederatedIdentityCredentialRequest(contextPath.addSegment("federatedIdentityCredentials").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public FederatedIdentityCredentialCollectionRequest federatedIdentityCredentials() {
        return new FederatedIdentityCredentialCollectionRequest(
                        contextPath.addSegment("federatedIdentityCredentials"), Optional.empty());
    }

    public HomeRealmDiscoveryPolicyRequest homeRealmDiscoveryPolicies(String id) {
        return new HomeRealmDiscoveryPolicyRequest(contextPath.addSegment("homeRealmDiscoveryPolicies").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public HomeRealmDiscoveryPolicyCollectionRequest homeRealmDiscoveryPolicies() {
        return new HomeRealmDiscoveryPolicyCollectionRequest(
                        contextPath.addSegment("homeRealmDiscoveryPolicies"), Optional.empty());
    }

    public DirectoryObjectRequest memberOf(String id) {
        return new DirectoryObjectRequest(contextPath.addSegment("memberOf").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public DirectoryObjectCollectionRequest memberOf() {
        return new DirectoryObjectCollectionRequest(
                        contextPath.addSegment("memberOf"), Optional.empty());
    }

    public OAuth2PermissionGrantRequest oauth2PermissionGrants(String id) {
        return new OAuth2PermissionGrantRequest(contextPath.addSegment("oauth2PermissionGrants").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public OAuth2PermissionGrantCollectionRequest oauth2PermissionGrants() {
        return new OAuth2PermissionGrantCollectionRequest(
                        contextPath.addSegment("oauth2PermissionGrants"), Optional.empty());
    }

    public DirectoryObjectRequest ownedObjects(String id) {
        return new DirectoryObjectRequest(contextPath.addSegment("ownedObjects").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public DirectoryObjectCollectionRequest ownedObjects() {
        return new DirectoryObjectCollectionRequest(
                        contextPath.addSegment("ownedObjects"), Optional.empty());
    }

    public DirectoryObjectRequest owners(String id) {
        return new DirectoryObjectRequest(contextPath.addSegment("owners").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public DirectoryObjectCollectionRequest owners() {
        return new DirectoryObjectCollectionRequest(
                        contextPath.addSegment("owners"), Optional.empty());
    }

    public TokenIssuancePolicyRequest tokenIssuancePolicies(String id) {
        return new TokenIssuancePolicyRequest(contextPath.addSegment("tokenIssuancePolicies").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public TokenIssuancePolicyCollectionRequest tokenIssuancePolicies() {
        return new TokenIssuancePolicyCollectionRequest(
                        contextPath.addSegment("tokenIssuancePolicies"), Optional.empty());
    }

    public TokenLifetimePolicyRequest tokenLifetimePolicies(String id) {
        return new TokenLifetimePolicyRequest(contextPath.addSegment("tokenLifetimePolicies").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public TokenLifetimePolicyCollectionRequest tokenLifetimePolicies() {
        return new TokenLifetimePolicyCollectionRequest(
                        contextPath.addSegment("tokenLifetimePolicies"), Optional.empty());
    }

    public DirectoryObjectRequest transitiveMemberOf(String id) {
        return new DirectoryObjectRequest(contextPath.addSegment("transitiveMemberOf").addKeys(new NameValue(id.toString())), Optional.empty());
    }

    public DirectoryObjectCollectionRequest transitiveMemberOf() {
        return new DirectoryObjectCollectionRequest(
                        contextPath.addSegment("transitiveMemberOf"), Optional.empty());
    }

    @Action(name = "addKey")
    @JsonIgnore
    public ActionRequestReturningNonCollectionUnwrapped addKey(KeyCredential keyCredential, PasswordCredential passwordCredential, String proof) {
        Preconditions.checkNotNull(keyCredential, "keyCredential cannot be null");
        Preconditions.checkNotNull(proof, "proof cannot be null");
        Map _parameters = ParameterMap
            .put("keyCredential", "microsoft.graph.keyCredential", keyCredential)
            .put("passwordCredential", "microsoft.graph.passwordCredential", passwordCredential)
            .put("proof", "Edm.String", Checks.checkIsAscii(proof))
            .build();
        return new ActionRequestReturningNonCollectionUnwrapped(this.contextPath.addActionOrFunctionSegment("microsoft.graph.addKey"), KeyCredential.class, _parameters);
    }

    @Action(name = "addPassword")
    @JsonIgnore
    public ActionRequestReturningNonCollectionUnwrapped addPassword(PasswordCredential passwordCredential) {
        Map _parameters = ParameterMap
            .put("passwordCredential", "microsoft.graph.passwordCredential", passwordCredential)
            .build();
        return new ActionRequestReturningNonCollectionUnwrapped(this.contextPath.addActionOrFunctionSegment("microsoft.graph.addPassword"), PasswordCredential.class, _parameters);
    }

    @Action(name = "removeKey")
    @JsonIgnore
    public ActionRequestNoReturn removeKey(String keyId, String proof) {
        Preconditions.checkNotNull(keyId, "keyId cannot be null");
        Preconditions.checkNotNull(proof, "proof cannot be null");
        Map _parameters = ParameterMap
            .put("keyId", "Edm.Guid", keyId)
            .put("proof", "Edm.String", Checks.checkIsAscii(proof))
            .build();
        return new ActionRequestNoReturn(this.contextPath.addActionOrFunctionSegment("microsoft.graph.removeKey"), _parameters);
    }

    @Action(name = "removePassword")
    @JsonIgnore
    public ActionRequestNoReturn removePassword(String keyId) {
        Preconditions.checkNotNull(keyId, "keyId cannot be null");
        Map _parameters = ParameterMap
            .put("keyId", "Edm.Guid", keyId)
            .build();
        return new ActionRequestNoReturn(this.contextPath.addActionOrFunctionSegment("microsoft.graph.removePassword"), _parameters);
    }

    @Action(name = "addTokenSigningCertificate")
    @JsonIgnore
    public ActionRequestReturningNonCollectionUnwrapped addTokenSigningCertificate(String displayName, OffsetDateTime endDateTime) {
        Map _parameters = ParameterMap
            .put("displayName", "Edm.String", Checks.checkIsAscii(displayName))
            .put("endDateTime", "Edm.DateTimeOffset", endDateTime)
            .build();
        return new ActionRequestReturningNonCollectionUnwrapped(this.contextPath.addActionOrFunctionSegment("microsoft.graph.addTokenSigningCertificate"), SelfSignedCertificate.class, _parameters);
    }

}