/* * 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.finspacedata.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* The details of the user account. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class User implements Serializable, Cloneable, StructuredPojo { /** ** The unique identifier for the user. *
*/ private String userId; /** ** The current status of the user account. *
*
* CREATING
– The user account creation is in progress.
*
* ENABLED
– The user account is created and is currently active.
*
* DISABLED
– The user account is currently inactive.
*
* The first name of the user. *
*/ private String firstName; /** ** The last name of the user. *
*/ private String lastName; /** ** The email address of the user. The email address serves as a uniquer identifier for each user and cannot be * changed after it's created. *
*/ private String emailAddress; /** ** Indicates the type of user. *
*
* SUPER_USER
– A user with permission to all the functionality and data in FinSpace.
*
* APP_USER
– A user with specific permissions in FinSpace. The users are assigned permissions by
* adding them to a permission group.
*
* Indicates whether the user can use the GetProgrammaticAccessCredentials
API to obtain credentials
* that can then be used to access other FinSpace Data API operations.
*
* ENABLED
– The user has permissions to use the APIs.
*
* DISABLED
– The user does not have permissions to use any APIs.
*
* The ARN identifier of an AWS user or role that is allowed to call the
* GetProgrammaticAccessCredentials
API to obtain a credentials token for a specific FinSpace user.
* This must be an IAM role within your FinSpace account.
*
* The timestamp at which the user account was created in FinSpace. The value is determined as epoch time in * milliseconds. *
*/ private Long createTime; /** ** Describes the last time the user account was enabled. The value is determined as epoch time in milliseconds. *
*/ private Long lastEnabledTime; /** ** Describes the last time the user account was disabled. The value is determined as epoch time in milliseconds. *
*/ private Long lastDisabledTime; /** ** Describes the last time the user account was updated. The value is determined as epoch time in milliseconds. *
*/ private Long lastModifiedTime; /** ** Describes the last time that the user logged into their account. The value is determined as epoch time in * milliseconds. *
*/ private Long lastLoginTime; /** ** The unique identifier for the user. *
* * @param userId * The unique identifier for the user. */ public void setUserId(String userId) { this.userId = userId; } /** ** The unique identifier for the user. *
* * @return The unique identifier for the user. */ public String getUserId() { return this.userId; } /** ** The unique identifier for the user. *
* * @param userId * The unique identifier for the user. * @return Returns a reference to this object so that method calls can be chained together. */ public User withUserId(String userId) { setUserId(userId); return this; } /** ** The current status of the user account. *
*
* CREATING
– The user account creation is in progress.
*
* ENABLED
– The user account is created and is currently active.
*
* DISABLED
– The user account is currently inactive.
*
* CREATING
– The user account creation is in progress.
*
* ENABLED
– The user account is created and is currently active.
*
* DISABLED
– The user account is currently inactive.
*
* The current status of the user account. *
*
* CREATING
– The user account creation is in progress.
*
* ENABLED
– The user account is created and is currently active.
*
* DISABLED
– The user account is currently inactive.
*
* CREATING
– The user account creation is in progress.
*
* ENABLED
– The user account is created and is currently active.
*
* DISABLED
– The user account is currently inactive.
*
* The current status of the user account. *
*
* CREATING
– The user account creation is in progress.
*
* ENABLED
– The user account is created and is currently active.
*
* DISABLED
– The user account is currently inactive.
*
* CREATING
– The user account creation is in progress.
*
* ENABLED
– The user account is created and is currently active.
*
* DISABLED
– The user account is currently inactive.
*
* The current status of the user account. *
*
* CREATING
– The user account creation is in progress.
*
* ENABLED
– The user account is created and is currently active.
*
* DISABLED
– The user account is currently inactive.
*
* CREATING
– The user account creation is in progress.
*
* ENABLED
– The user account is created and is currently active.
*
* DISABLED
– The user account is currently inactive.
*
* The first name of the user. *
* * @param firstName * The first name of the user. */ public void setFirstName(String firstName) { this.firstName = firstName; } /** ** The first name of the user. *
* * @return The first name of the user. */ public String getFirstName() { return this.firstName; } /** ** The first name of the user. *
* * @param firstName * The first name of the user. * @return Returns a reference to this object so that method calls can be chained together. */ public User withFirstName(String firstName) { setFirstName(firstName); return this; } /** ** The last name of the user. *
* * @param lastName * The last name of the user. */ public void setLastName(String lastName) { this.lastName = lastName; } /** ** The last name of the user. *
* * @return The last name of the user. */ public String getLastName() { return this.lastName; } /** ** The last name of the user. *
* * @param lastName * The last name of the user. * @return Returns a reference to this object so that method calls can be chained together. */ public User withLastName(String lastName) { setLastName(lastName); return this; } /** ** The email address of the user. The email address serves as a uniquer identifier for each user and cannot be * changed after it's created. *
* * @param emailAddress * The email address of the user. The email address serves as a uniquer identifier for each user and cannot * be changed after it's created. */ public void setEmailAddress(String emailAddress) { this.emailAddress = emailAddress; } /** ** The email address of the user. The email address serves as a uniquer identifier for each user and cannot be * changed after it's created. *
* * @return The email address of the user. The email address serves as a uniquer identifier for each user and cannot * be changed after it's created. */ public String getEmailAddress() { return this.emailAddress; } /** ** The email address of the user. The email address serves as a uniquer identifier for each user and cannot be * changed after it's created. *
* * @param emailAddress * The email address of the user. The email address serves as a uniquer identifier for each user and cannot * be changed after it's created. * @return Returns a reference to this object so that method calls can be chained together. */ public User withEmailAddress(String emailAddress) { setEmailAddress(emailAddress); return this; } /** ** Indicates the type of user. *
*
* SUPER_USER
– A user with permission to all the functionality and data in FinSpace.
*
* APP_USER
– A user with specific permissions in FinSpace. The users are assigned permissions by
* adding them to a permission group.
*
* SUPER_USER
– A user with permission to all the functionality and data in FinSpace.
*
* APP_USER
– A user with specific permissions in FinSpace. The users are assigned permissions
* by adding them to a permission group.
*
* Indicates the type of user. *
*
* SUPER_USER
– A user with permission to all the functionality and data in FinSpace.
*
* APP_USER
– A user with specific permissions in FinSpace. The users are assigned permissions by
* adding them to a permission group.
*
* SUPER_USER
– A user with permission to all the functionality and data in FinSpace.
*
* APP_USER
– A user with specific permissions in FinSpace. The users are assigned permissions
* by adding them to a permission group.
*
* Indicates the type of user. *
*
* SUPER_USER
– A user with permission to all the functionality and data in FinSpace.
*
* APP_USER
– A user with specific permissions in FinSpace. The users are assigned permissions by
* adding them to a permission group.
*
* SUPER_USER
– A user with permission to all the functionality and data in FinSpace.
*
* APP_USER
– A user with specific permissions in FinSpace. The users are assigned permissions
* by adding them to a permission group.
*
* Indicates the type of user. *
*
* SUPER_USER
– A user with permission to all the functionality and data in FinSpace.
*
* APP_USER
– A user with specific permissions in FinSpace. The users are assigned permissions by
* adding them to a permission group.
*
* SUPER_USER
– A user with permission to all the functionality and data in FinSpace.
*
* APP_USER
– A user with specific permissions in FinSpace. The users are assigned permissions
* by adding them to a permission group.
*
* Indicates whether the user can use the GetProgrammaticAccessCredentials
API to obtain credentials
* that can then be used to access other FinSpace Data API operations.
*
* ENABLED
– The user has permissions to use the APIs.
*
* DISABLED
– The user does not have permissions to use any APIs.
*
GetProgrammaticAccessCredentials
API to obtain
* credentials that can then be used to access other FinSpace Data API operations.
*
* ENABLED
– The user has permissions to use the APIs.
*
* DISABLED
– The user does not have permissions to use any APIs.
*
* Indicates whether the user can use the GetProgrammaticAccessCredentials
API to obtain credentials
* that can then be used to access other FinSpace Data API operations.
*
* ENABLED
– The user has permissions to use the APIs.
*
* DISABLED
– The user does not have permissions to use any APIs.
*
GetProgrammaticAccessCredentials
API to obtain
* credentials that can then be used to access other FinSpace Data API operations.
*
* ENABLED
– The user has permissions to use the APIs.
*
* DISABLED
– The user does not have permissions to use any APIs.
*
* Indicates whether the user can use the GetProgrammaticAccessCredentials
API to obtain credentials
* that can then be used to access other FinSpace Data API operations.
*
* ENABLED
– The user has permissions to use the APIs.
*
* DISABLED
– The user does not have permissions to use any APIs.
*
GetProgrammaticAccessCredentials
API to obtain
* credentials that can then be used to access other FinSpace Data API operations.
*
* ENABLED
– The user has permissions to use the APIs.
*
* DISABLED
– The user does not have permissions to use any APIs.
*
* Indicates whether the user can use the GetProgrammaticAccessCredentials
API to obtain credentials
* that can then be used to access other FinSpace Data API operations.
*
* ENABLED
– The user has permissions to use the APIs.
*
* DISABLED
– The user does not have permissions to use any APIs.
*
GetProgrammaticAccessCredentials
API to obtain
* credentials that can then be used to access other FinSpace Data API operations.
*
* ENABLED
– The user has permissions to use the APIs.
*
* DISABLED
– The user does not have permissions to use any APIs.
*
* The ARN identifier of an AWS user or role that is allowed to call the
* GetProgrammaticAccessCredentials
API to obtain a credentials token for a specific FinSpace user.
* This must be an IAM role within your FinSpace account.
*
GetProgrammaticAccessCredentials
API to obtain a credentials token for a specific FinSpace
* user. This must be an IAM role within your FinSpace account.
*/
public void setApiAccessPrincipalArn(String apiAccessPrincipalArn) {
this.apiAccessPrincipalArn = apiAccessPrincipalArn;
}
/**
*
* The ARN identifier of an AWS user or role that is allowed to call the
* GetProgrammaticAccessCredentials
API to obtain a credentials token for a specific FinSpace user.
* This must be an IAM role within your FinSpace account.
*
GetProgrammaticAccessCredentials
API to obtain a credentials token for a specific FinSpace
* user. This must be an IAM role within your FinSpace account.
*/
public String getApiAccessPrincipalArn() {
return this.apiAccessPrincipalArn;
}
/**
*
* The ARN identifier of an AWS user or role that is allowed to call the
* GetProgrammaticAccessCredentials
API to obtain a credentials token for a specific FinSpace user.
* This must be an IAM role within your FinSpace account.
*
GetProgrammaticAccessCredentials
API to obtain a credentials token for a specific FinSpace
* user. This must be an IAM role within your FinSpace account.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public User withApiAccessPrincipalArn(String apiAccessPrincipalArn) {
setApiAccessPrincipalArn(apiAccessPrincipalArn);
return this;
}
/**
* * The timestamp at which the user account was created in FinSpace. The value is determined as epoch time in * milliseconds. *
* * @param createTime * The timestamp at which the user account was created in FinSpace. The value is determined as epoch time in * milliseconds. */ public void setCreateTime(Long createTime) { this.createTime = createTime; } /** ** The timestamp at which the user account was created in FinSpace. The value is determined as epoch time in * milliseconds. *
* * @return The timestamp at which the user account was created in FinSpace. The value is determined as epoch time in * milliseconds. */ public Long getCreateTime() { return this.createTime; } /** ** The timestamp at which the user account was created in FinSpace. The value is determined as epoch time in * milliseconds. *
* * @param createTime * The timestamp at which the user account was created in FinSpace. The value is determined as epoch time in * milliseconds. * @return Returns a reference to this object so that method calls can be chained together. */ public User withCreateTime(Long createTime) { setCreateTime(createTime); return this; } /** ** Describes the last time the user account was enabled. The value is determined as epoch time in milliseconds. *
* * @param lastEnabledTime * Describes the last time the user account was enabled. The value is determined as epoch time in * milliseconds. */ public void setLastEnabledTime(Long lastEnabledTime) { this.lastEnabledTime = lastEnabledTime; } /** ** Describes the last time the user account was enabled. The value is determined as epoch time in milliseconds. *
* * @return Describes the last time the user account was enabled. The value is determined as epoch time in * milliseconds. */ public Long getLastEnabledTime() { return this.lastEnabledTime; } /** ** Describes the last time the user account was enabled. The value is determined as epoch time in milliseconds. *
* * @param lastEnabledTime * Describes the last time the user account was enabled. The value is determined as epoch time in * milliseconds. * @return Returns a reference to this object so that method calls can be chained together. */ public User withLastEnabledTime(Long lastEnabledTime) { setLastEnabledTime(lastEnabledTime); return this; } /** ** Describes the last time the user account was disabled. The value is determined as epoch time in milliseconds. *
* * @param lastDisabledTime * Describes the last time the user account was disabled. The value is determined as epoch time in * milliseconds. */ public void setLastDisabledTime(Long lastDisabledTime) { this.lastDisabledTime = lastDisabledTime; } /** ** Describes the last time the user account was disabled. The value is determined as epoch time in milliseconds. *
* * @return Describes the last time the user account was disabled. The value is determined as epoch time in * milliseconds. */ public Long getLastDisabledTime() { return this.lastDisabledTime; } /** ** Describes the last time the user account was disabled. The value is determined as epoch time in milliseconds. *
* * @param lastDisabledTime * Describes the last time the user account was disabled. The value is determined as epoch time in * milliseconds. * @return Returns a reference to this object so that method calls can be chained together. */ public User withLastDisabledTime(Long lastDisabledTime) { setLastDisabledTime(lastDisabledTime); return this; } /** ** Describes the last time the user account was updated. The value is determined as epoch time in milliseconds. *
* * @param lastModifiedTime * Describes the last time the user account was updated. The value is determined as epoch time in * milliseconds. */ public void setLastModifiedTime(Long lastModifiedTime) { this.lastModifiedTime = lastModifiedTime; } /** ** Describes the last time the user account was updated. The value is determined as epoch time in milliseconds. *
* * @return Describes the last time the user account was updated. The value is determined as epoch time in * milliseconds. */ public Long getLastModifiedTime() { return this.lastModifiedTime; } /** ** Describes the last time the user account was updated. The value is determined as epoch time in milliseconds. *
* * @param lastModifiedTime * Describes the last time the user account was updated. The value is determined as epoch time in * milliseconds. * @return Returns a reference to this object so that method calls can be chained together. */ public User withLastModifiedTime(Long lastModifiedTime) { setLastModifiedTime(lastModifiedTime); return this; } /** ** Describes the last time that the user logged into their account. The value is determined as epoch time in * milliseconds. *
* * @param lastLoginTime * Describes the last time that the user logged into their account. The value is determined as epoch time in * milliseconds. */ public void setLastLoginTime(Long lastLoginTime) { this.lastLoginTime = lastLoginTime; } /** ** Describes the last time that the user logged into their account. The value is determined as epoch time in * milliseconds. *
* * @return Describes the last time that the user logged into their account. The value is determined as epoch time in * milliseconds. */ public Long getLastLoginTime() { return this.lastLoginTime; } /** ** Describes the last time that the user logged into their account. The value is determined as epoch time in * milliseconds. *
* * @param lastLoginTime * Describes the last time that the user logged into their account. The value is determined as epoch time in * milliseconds. * @return Returns a reference to this object so that method calls can be chained together. */ public User withLastLoginTime(Long lastLoginTime) { setLastLoginTime(lastLoginTime); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getUserId() != null) sb.append("UserId: ").append(getUserId()).append(","); if (getStatus() != null) sb.append("Status: ").append(getStatus()).append(","); if (getFirstName() != null) sb.append("FirstName: ").append("***Sensitive Data Redacted***").append(","); if (getLastName() != null) sb.append("LastName: ").append("***Sensitive Data Redacted***").append(","); if (getEmailAddress() != null) sb.append("EmailAddress: ").append("***Sensitive Data Redacted***").append(","); if (getType() != null) sb.append("Type: ").append(getType()).append(","); if (getApiAccess() != null) sb.append("ApiAccess: ").append(getApiAccess()).append(","); if (getApiAccessPrincipalArn() != null) sb.append("ApiAccessPrincipalArn: ").append(getApiAccessPrincipalArn()).append(","); if (getCreateTime() != null) sb.append("CreateTime: ").append(getCreateTime()).append(","); if (getLastEnabledTime() != null) sb.append("LastEnabledTime: ").append(getLastEnabledTime()).append(","); if (getLastDisabledTime() != null) sb.append("LastDisabledTime: ").append(getLastDisabledTime()).append(","); if (getLastModifiedTime() != null) sb.append("LastModifiedTime: ").append(getLastModifiedTime()).append(","); if (getLastLoginTime() != null) sb.append("LastLoginTime: ").append(getLastLoginTime()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof User == false) return false; User other = (User) obj; if (other.getUserId() == null ^ this.getUserId() == null) return false; if (other.getUserId() != null && other.getUserId().equals(this.getUserId()) == false) return false; if (other.getStatus() == null ^ this.getStatus() == null) return false; if (other.getStatus() != null && other.getStatus().equals(this.getStatus()) == false) return false; if (other.getFirstName() == null ^ this.getFirstName() == null) return false; if (other.getFirstName() != null && other.getFirstName().equals(this.getFirstName()) == false) return false; if (other.getLastName() == null ^ this.getLastName() == null) return false; if (other.getLastName() != null && other.getLastName().equals(this.getLastName()) == false) return false; if (other.getEmailAddress() == null ^ this.getEmailAddress() == null) return false; if (other.getEmailAddress() != null && other.getEmailAddress().equals(this.getEmailAddress()) == false) return false; if (other.getType() == null ^ this.getType() == null) return false; if (other.getType() != null && other.getType().equals(this.getType()) == false) return false; if (other.getApiAccess() == null ^ this.getApiAccess() == null) return false; if (other.getApiAccess() != null && other.getApiAccess().equals(this.getApiAccess()) == false) return false; if (other.getApiAccessPrincipalArn() == null ^ this.getApiAccessPrincipalArn() == null) return false; if (other.getApiAccessPrincipalArn() != null && other.getApiAccessPrincipalArn().equals(this.getApiAccessPrincipalArn()) == false) return false; if (other.getCreateTime() == null ^ this.getCreateTime() == null) return false; if (other.getCreateTime() != null && other.getCreateTime().equals(this.getCreateTime()) == false) return false; if (other.getLastEnabledTime() == null ^ this.getLastEnabledTime() == null) return false; if (other.getLastEnabledTime() != null && other.getLastEnabledTime().equals(this.getLastEnabledTime()) == false) return false; if (other.getLastDisabledTime() == null ^ this.getLastDisabledTime() == null) return false; if (other.getLastDisabledTime() != null && other.getLastDisabledTime().equals(this.getLastDisabledTime()) == false) return false; if (other.getLastModifiedTime() == null ^ this.getLastModifiedTime() == null) return false; if (other.getLastModifiedTime() != null && other.getLastModifiedTime().equals(this.getLastModifiedTime()) == false) return false; if (other.getLastLoginTime() == null ^ this.getLastLoginTime() == null) return false; if (other.getLastLoginTime() != null && other.getLastLoginTime().equals(this.getLastLoginTime()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getUserId() == null) ? 0 : getUserId().hashCode()); hashCode = prime * hashCode + ((getStatus() == null) ? 0 : getStatus().hashCode()); hashCode = prime * hashCode + ((getFirstName() == null) ? 0 : getFirstName().hashCode()); hashCode = prime * hashCode + ((getLastName() == null) ? 0 : getLastName().hashCode()); hashCode = prime * hashCode + ((getEmailAddress() == null) ? 0 : getEmailAddress().hashCode()); hashCode = prime * hashCode + ((getType() == null) ? 0 : getType().hashCode()); hashCode = prime * hashCode + ((getApiAccess() == null) ? 0 : getApiAccess().hashCode()); hashCode = prime * hashCode + ((getApiAccessPrincipalArn() == null) ? 0 : getApiAccessPrincipalArn().hashCode()); hashCode = prime * hashCode + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode()); hashCode = prime * hashCode + ((getLastEnabledTime() == null) ? 0 : getLastEnabledTime().hashCode()); hashCode = prime * hashCode + ((getLastDisabledTime() == null) ? 0 : getLastDisabledTime().hashCode()); hashCode = prime * hashCode + ((getLastModifiedTime() == null) ? 0 : getLastModifiedTime().hashCode()); hashCode = prime * hashCode + ((getLastLoginTime() == null) ? 0 : getLastLoginTime().hashCode()); return hashCode; } @Override public User clone() { try { return (User) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.finspacedata.model.transform.UserMarshaller.getInstance().marshall(this, protocolMarshaller); } }