/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file 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 com.amazonaws.services.quicksight.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.AmazonWebServiceRequest; /** * * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class GenerateEmbedUrlForAnonymousUserRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** *
* The ID for the Amazon Web Services account that contains the dashboard that you're embedding. *
*/ private String awsAccountId; /** ** How many minutes the session is valid. The session lifetime must be in [15-600] minutes range. *
*/ private Long sessionLifetimeInMinutes; /** *
* The Amazon QuickSight namespace that the anonymous user virtually belongs to. If you are not using an Amazon
* QuickSight custom namespace, set this to default
.
*
* The session tags used for row-level security. Before you use this parameter, make sure that you have configured
* the relevant datasets using the DataSet$RowLevelPermissionTagConfiguration
parameter so that session
* tags can be used to provide row-level security.
*
* These are not the tags used for the Amazon Web Services resource tagging feature. For more information, see Using Row-Level Security * (RLS) with Tagsin the Amazon QuickSight User Guide. *
*/ private java.util.List
* The Amazon Resource Names (ARNs) for the Amazon QuickSight resources that the user is authorized to access during
* the lifetime of the session. If you choose Dashboard
embedding experience, pass the list of
* dashboard ARNs in the account that you want the user to be able to view. Currently, you can pass up to 25
* dashboard ARNs in each API call.
*
* The configuration of the experience that you are embedding. *
*/ private AnonymousUserEmbeddingExperienceConfiguration experienceConfiguration; /** ** The domains that you want to add to the allow list for access to the generated URL that is then embedded. This * optional parameter overrides the static domains that are configured in the Manage QuickSight menu in the Amazon * QuickSight console. Instead, it allows only the domains that you include in this parameter. You can list up to * three domains or subdomains in each API call. *
*
* To include all subdomains under a specific domain to the allow list, use *
. For example,
* https://*.sapp.amazon.com
includes all subdomains under https://sapp.amazon.com
.
*
* The ID for the Amazon Web Services account that contains the dashboard that you're embedding. *
* * @param awsAccountId * The ID for the Amazon Web Services account that contains the dashboard that you're embedding. */ public void setAwsAccountId(String awsAccountId) { this.awsAccountId = awsAccountId; } /** ** The ID for the Amazon Web Services account that contains the dashboard that you're embedding. *
* * @return The ID for the Amazon Web Services account that contains the dashboard that you're embedding. */ public String getAwsAccountId() { return this.awsAccountId; } /** ** The ID for the Amazon Web Services account that contains the dashboard that you're embedding. *
* * @param awsAccountId * The ID for the Amazon Web Services account that contains the dashboard that you're embedding. * @return Returns a reference to this object so that method calls can be chained together. */ public GenerateEmbedUrlForAnonymousUserRequest withAwsAccountId(String awsAccountId) { setAwsAccountId(awsAccountId); return this; } /** ** How many minutes the session is valid. The session lifetime must be in [15-600] minutes range. *
* * @param sessionLifetimeInMinutes * How many minutes the session is valid. The session lifetime must be in [15-600] minutes range. */ public void setSessionLifetimeInMinutes(Long sessionLifetimeInMinutes) { this.sessionLifetimeInMinutes = sessionLifetimeInMinutes; } /** ** How many minutes the session is valid. The session lifetime must be in [15-600] minutes range. *
* * @return How many minutes the session is valid. The session lifetime must be in [15-600] minutes range. */ public Long getSessionLifetimeInMinutes() { return this.sessionLifetimeInMinutes; } /** ** How many minutes the session is valid. The session lifetime must be in [15-600] minutes range. *
* * @param sessionLifetimeInMinutes * How many minutes the session is valid. The session lifetime must be in [15-600] minutes range. * @return Returns a reference to this object so that method calls can be chained together. */ public GenerateEmbedUrlForAnonymousUserRequest withSessionLifetimeInMinutes(Long sessionLifetimeInMinutes) { setSessionLifetimeInMinutes(sessionLifetimeInMinutes); return this; } /** *
* The Amazon QuickSight namespace that the anonymous user virtually belongs to. If you are not using an Amazon
* QuickSight custom namespace, set this to default
.
*
default
.
*/
public void setNamespace(String namespace) {
this.namespace = namespace;
}
/**
*
* The Amazon QuickSight namespace that the anonymous user virtually belongs to. If you are not using an Amazon
* QuickSight custom namespace, set this to default
.
*
default
.
*/
public String getNamespace() {
return this.namespace;
}
/**
*
* The Amazon QuickSight namespace that the anonymous user virtually belongs to. If you are not using an Amazon
* QuickSight custom namespace, set this to default
.
*
default
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GenerateEmbedUrlForAnonymousUserRequest withNamespace(String namespace) {
setNamespace(namespace);
return this;
}
/**
*
* The session tags used for row-level security. Before you use this parameter, make sure that you have configured
* the relevant datasets using the DataSet$RowLevelPermissionTagConfiguration
parameter so that session
* tags can be used to provide row-level security.
*
* These are not the tags used for the Amazon Web Services resource tagging feature. For more information, see Using Row-Level Security * (RLS) with Tagsin the Amazon QuickSight User Guide. *
* * @return The session tags used for row-level security. Before you use this parameter, make sure that you have * configured the relevant datasets using theDataSet$RowLevelPermissionTagConfiguration
* parameter so that session tags can be used to provide row-level security.
*
* These are not the tags used for the Amazon Web Services resource tagging feature. For more information,
* see Using
* Row-Level Security (RLS) with Tagsin the Amazon QuickSight User Guide.
*/
public java.util.List
* The session tags used for row-level security. Before you use this parameter, make sure that you have configured
* the relevant datasets using the
* These are not the tags used for the Amazon Web Services resource tagging feature. For more information, see Using Row-Level Security
* (RLS) with Tagsin the Amazon QuickSight User Guide.
* DataSet$RowLevelPermissionTagConfiguration
parameter so that session
* tags can be used to provide row-level security.
* DataSet$RowLevelPermissionTagConfiguration
* parameter so that session tags can be used to provide row-level security.
* These are not the tags used for the Amazon Web Services resource tagging feature. For more information,
* see Using
* Row-Level Security (RLS) with Tagsin the Amazon QuickSight User Guide.
*/
public void setSessionTags(java.util.Collection
* The session tags used for row-level security. Before you use this parameter, make sure that you have configured
* the relevant datasets using the
* These are not the tags used for the Amazon Web Services resource tagging feature. For more information, see Using Row-Level Security
* (RLS) with Tagsin the Amazon QuickSight User Guide.
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setSessionTags(java.util.Collection)} or {@link #withSessionTags(java.util.Collection)} if you want to
* override the existing values.
* DataSet$RowLevelPermissionTagConfiguration
parameter so that session
* tags can be used to provide row-level security.
* DataSet$RowLevelPermissionTagConfiguration
* parameter so that session tags can be used to provide row-level security.
* These are not the tags used for the Amazon Web Services resource tagging feature. For more information,
* see Using
* Row-Level Security (RLS) with Tagsin the Amazon QuickSight User Guide.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GenerateEmbedUrlForAnonymousUserRequest withSessionTags(SessionTag... sessionTags) {
if (this.sessionTags == null) {
setSessionTags(new java.util.ArrayList
* The session tags used for row-level security. Before you use this parameter, make sure that you have configured
* the relevant datasets using the
* These are not the tags used for the Amazon Web Services resource tagging feature. For more information, see Using Row-Level Security
* (RLS) with Tagsin the Amazon QuickSight User Guide.
* DataSet$RowLevelPermissionTagConfiguration
parameter so that session
* tags can be used to provide row-level security.
* DataSet$RowLevelPermissionTagConfiguration
* parameter so that session tags can be used to provide row-level security.
* These are not the tags used for the Amazon Web Services resource tagging feature. For more information,
* see Using
* Row-Level Security (RLS) with Tagsin the Amazon QuickSight User Guide.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GenerateEmbedUrlForAnonymousUserRequest withSessionTags(java.util.Collection
* The Amazon Resource Names (ARNs) for the Amazon QuickSight resources that the user is authorized to access during
* the lifetime of the session. If you choose
* The Amazon Resource Names (ARNs) for the Amazon QuickSight resources that the user is authorized to access during
* the lifetime of the session. If you choose
* The Amazon Resource Names (ARNs) for the Amazon QuickSight resources that the user is authorized to access during
* the lifetime of the session. If you choose
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setAuthorizedResourceArns(java.util.Collection)} or
* {@link #withAuthorizedResourceArns(java.util.Collection)} if you want to override the existing values.
*
* The Amazon Resource Names (ARNs) for the Amazon QuickSight resources that the user is authorized to access during
* the lifetime of the session. If you choose
* The configuration of the experience that you are embedding.
*
* The configuration of the experience that you are embedding.
*
* The configuration of the experience that you are embedding.
*
* The domains that you want to add to the allow list for access to the generated URL that is then embedded. This
* optional parameter overrides the static domains that are configured in the Manage QuickSight menu in the Amazon
* QuickSight console. Instead, it allows only the domains that you include in this parameter. You can list up to
* three domains or subdomains in each API call.
*
* To include all subdomains under a specific domain to the allow list, use Dashboard
embedding experience, pass the list of
* dashboard ARNs in the account that you want the user to be able to view. Currently, you can pass up to 25
* dashboard ARNs in each API call.
* Dashboard
embedding experience,
* pass the list of dashboard ARNs in the account that you want the user to be able to view. Currently, you
* can pass up to 25 dashboard ARNs in each API call.
*/
public java.util.ListDashboard
embedding experience, pass the list of
* dashboard ARNs in the account that you want the user to be able to view. Currently, you can pass up to 25
* dashboard ARNs in each API call.
* Dashboard
embedding experience, pass the
* list of dashboard ARNs in the account that you want the user to be able to view. Currently, you can pass
* up to 25 dashboard ARNs in each API call.
*/
public void setAuthorizedResourceArns(java.util.CollectionDashboard
embedding experience, pass the list of
* dashboard ARNs in the account that you want the user to be able to view. Currently, you can pass up to 25
* dashboard ARNs in each API call.
* Dashboard
embedding experience, pass the
* list of dashboard ARNs in the account that you want the user to be able to view. Currently, you can pass
* up to 25 dashboard ARNs in each API call.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GenerateEmbedUrlForAnonymousUserRequest withAuthorizedResourceArns(String... authorizedResourceArns) {
if (this.authorizedResourceArns == null) {
setAuthorizedResourceArns(new java.util.ArrayListDashboard
embedding experience, pass the list of
* dashboard ARNs in the account that you want the user to be able to view. Currently, you can pass up to 25
* dashboard ARNs in each API call.
* Dashboard
embedding experience, pass the
* list of dashboard ARNs in the account that you want the user to be able to view. Currently, you can pass
* up to 25 dashboard ARNs in each API call.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GenerateEmbedUrlForAnonymousUserRequest withAuthorizedResourceArns(java.util.Collection*
. For example,
* https://*.sapp.amazon.com
includes all subdomains under https://sapp.amazon.com
.
*
* To include all subdomains under a specific domain to the allow list, use
* The domains that you want to add to the allow list for access to the generated URL that is then embedded. This
* optional parameter overrides the static domains that are configured in the Manage QuickSight menu in the Amazon
* QuickSight console. Instead, it allows only the domains that you include in this parameter. You can list up to
* three domains or subdomains in each API call.
*
* To include all subdomains under a specific domain to the allow list, use *
. For example,
* https://*.sapp.amazon.com
includes all subdomains under https://sapp.amazon.com
.
*/
public java.util.List*
. For example,
* https://*.sapp.amazon.com
includes all subdomains under https://sapp.amazon.com
.
*
* To include all subdomains under a specific domain to the allow list, use
* The domains that you want to add to the allow list for access to the generated URL that is then embedded. This
* optional parameter overrides the static domains that are configured in the Manage QuickSight menu in the Amazon
* QuickSight console. Instead, it allows only the domains that you include in this parameter. You can list up to
* three domains or subdomains in each API call.
*
* To include all subdomains under a specific domain to the allow list, use
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setAllowedDomains(java.util.Collection)} or {@link #withAllowedDomains(java.util.Collection)} if you want
* to override the existing values.
* *
. For example,
* https://*.sapp.amazon.com
includes all subdomains under https://sapp.amazon.com
.
*/
public void setAllowedDomains(java.util.Collection*
. For example,
* https://*.sapp.amazon.com
includes all subdomains under https://sapp.amazon.com
.
*
* To include all subdomains under a specific domain to the allow list, use
* The domains that you want to add to the allow list for access to the generated URL that is then embedded. This
* optional parameter overrides the static domains that are configured in the Manage QuickSight menu in the Amazon
* QuickSight console. Instead, it allows only the domains that you include in this parameter. You can list up to
* three domains or subdomains in each API call.
*
* To include all subdomains under a specific domain to the allow list, use *
. For example,
* https://*.sapp.amazon.com
includes all subdomains under https://sapp.amazon.com
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GenerateEmbedUrlForAnonymousUserRequest withAllowedDomains(String... allowedDomains) {
if (this.allowedDomains == null) {
setAllowedDomains(new java.util.ArrayList*
. For example,
* https://*.sapp.amazon.com
includes all subdomains under https://sapp.amazon.com
.
*
* To include all subdomains under a specific domain to the allow list, use *
. For example,
* https://*.sapp.amazon.com
includes all subdomains under https://sapp.amazon.com
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public GenerateEmbedUrlForAnonymousUserRequest withAllowedDomains(java.util.Collection