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

com.amazonaws.services.identitymanagement.model.UserDetail Maven / Gradle / Ivy

Go to download

The AWS Java SDK for AWS IAM module holds the client classes that are used for communicating with AWS Identity and Access Management Service

The newest version!
/*
 * Copyright 2010-2016 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.identitymanagement.model;

import java.io.Serializable;

/**
 * 

* Contains information about an IAM user, including all the user's policies and * all the IAM groups the user is in. *

*

* This data type is used as a response element in the * GetAccountAuthorizationDetails action. *

*/ public class UserDetail implements Serializable, Cloneable { /** *

* The path to the user. For more information about paths, see IAM Identifiers in the Using IAM guide. *

*/ private String path; /** *

* The friendly name identifying the user. *

*/ private String userName; /** *

* The stable and unique string identifying the user. For more information * about IDs, see IAM Identifiers in the Using IAM guide. *

*/ private String userId; private String arn; /** *

* The date and time, in ISO 8601 * date-time format, when the user was created. *

*/ private java.util.Date createDate; /** *

* A list of the inline policies embedded in the user. *

*/ private com.amazonaws.internal.SdkInternalList userPolicyList; /** *

* A list of IAM groups that the user is in. *

*/ private com.amazonaws.internal.SdkInternalList groupList; /** *

* A list of the managed policies attached to the user. *

*/ private com.amazonaws.internal.SdkInternalList attachedManagedPolicies; /** *

* The path to the user. For more information about paths, see IAM Identifiers in the Using IAM guide. *

* * @param path * The path to the user. For more information about paths, see IAM Identifiers in the Using IAM guide. */ public void setPath(String path) { this.path = path; } /** *

* The path to the user. For more information about paths, see IAM Identifiers in the Using IAM guide. *

* * @return The path to the user. For more information about paths, see IAM Identifiers in the Using IAM guide. */ public String getPath() { return this.path; } /** *

* The path to the user. For more information about paths, see IAM Identifiers in the Using IAM guide. *

* * @param path * The path to the user. For more information about paths, see IAM Identifiers in the Using IAM guide. * @return Returns a reference to this object so that method calls can be * chained together. */ public UserDetail withPath(String path) { setPath(path); return this; } /** *

* The friendly name identifying the user. *

* * @param userName * The friendly name identifying the user. */ public void setUserName(String userName) { this.userName = userName; } /** *

* The friendly name identifying the user. *

* * @return The friendly name identifying the user. */ public String getUserName() { return this.userName; } /** *

* The friendly name identifying the user. *

* * @param userName * The friendly name identifying the user. * @return Returns a reference to this object so that method calls can be * chained together. */ public UserDetail withUserName(String userName) { setUserName(userName); return this; } /** *

* The stable and unique string identifying the user. For more information * about IDs, see IAM Identifiers in the Using IAM guide. *

* * @param userId * The stable and unique string identifying the user. For more * information about IDs, see IAM Identifiers in the Using IAM guide. */ public void setUserId(String userId) { this.userId = userId; } /** *

* The stable and unique string identifying the user. For more information * about IDs, see IAM Identifiers in the Using IAM guide. *

* * @return The stable and unique string identifying the user. For more * information about IDs, see IAM Identifiers in the Using IAM guide. */ public String getUserId() { return this.userId; } /** *

* The stable and unique string identifying the user. For more information * about IDs, see IAM Identifiers in the Using IAM guide. *

* * @param userId * The stable and unique string identifying the user. For more * information about IDs, see IAM Identifiers in the Using IAM guide. * @return Returns a reference to this object so that method calls can be * chained together. */ public UserDetail withUserId(String userId) { setUserId(userId); return this; } /** * @param arn */ public void setArn(String arn) { this.arn = arn; } /** * @return */ public String getArn() { return this.arn; } /** * @param arn * @return Returns a reference to this object so that method calls can be * chained together. */ public UserDetail withArn(String arn) { setArn(arn); return this; } /** *

* The date and time, in ISO 8601 * date-time format, when the user was created. *

* * @param createDate * The date and time, in ISO * 8601 date-time format, when the user was created. */ public void setCreateDate(java.util.Date createDate) { this.createDate = createDate; } /** *

* The date and time, in ISO 8601 * date-time format, when the user was created. *

* * @return The date and time, in ISO 8601 date-time * format, when the user was created. */ public java.util.Date getCreateDate() { return this.createDate; } /** *

* The date and time, in ISO 8601 * date-time format, when the user was created. *

* * @param createDate * The date and time, in ISO * 8601 date-time format, when the user was created. * @return Returns a reference to this object so that method calls can be * chained together. */ public UserDetail withCreateDate(java.util.Date createDate) { setCreateDate(createDate); return this; } /** *

* A list of the inline policies embedded in the user. *

* * @return A list of the inline policies embedded in the user. */ public java.util.List getUserPolicyList() { if (userPolicyList == null) { userPolicyList = new com.amazonaws.internal.SdkInternalList(); } return userPolicyList; } /** *

* A list of the inline policies embedded in the user. *

* * @param userPolicyList * A list of the inline policies embedded in the user. */ public void setUserPolicyList( java.util.Collection userPolicyList) { if (userPolicyList == null) { this.userPolicyList = null; return; } this.userPolicyList = new com.amazonaws.internal.SdkInternalList( userPolicyList); } /** *

* A list of the inline policies embedded in the user. *

*

* NOTE: This method appends the values to the existing list (if * any). Use {@link #setUserPolicyList(java.util.Collection)} or * {@link #withUserPolicyList(java.util.Collection)} if you want to override * the existing values. *

* * @param userPolicyList * A list of the inline policies embedded in the user. * @return Returns a reference to this object so that method calls can be * chained together. */ public UserDetail withUserPolicyList(PolicyDetail... userPolicyList) { if (this.userPolicyList == null) { setUserPolicyList(new com.amazonaws.internal.SdkInternalList( userPolicyList.length)); } for (PolicyDetail ele : userPolicyList) { this.userPolicyList.add(ele); } return this; } /** *

* A list of the inline policies embedded in the user. *

* * @param userPolicyList * A list of the inline policies embedded in the user. * @return Returns a reference to this object so that method calls can be * chained together. */ public UserDetail withUserPolicyList( java.util.Collection userPolicyList) { setUserPolicyList(userPolicyList); return this; } /** *

* A list of IAM groups that the user is in. *

* * @return A list of IAM groups that the user is in. */ public java.util.List getGroupList() { if (groupList == null) { groupList = new com.amazonaws.internal.SdkInternalList(); } return groupList; } /** *

* A list of IAM groups that the user is in. *

* * @param groupList * A list of IAM groups that the user is in. */ public void setGroupList(java.util.Collection groupList) { if (groupList == null) { this.groupList = null; return; } this.groupList = new com.amazonaws.internal.SdkInternalList( groupList); } /** *

* A list of IAM groups that the user is in. *

*

* NOTE: This method appends the values to the existing list (if * any). Use {@link #setGroupList(java.util.Collection)} or * {@link #withGroupList(java.util.Collection)} if you want to override the * existing values. *

* * @param groupList * A list of IAM groups that the user is in. * @return Returns a reference to this object so that method calls can be * chained together. */ public UserDetail withGroupList(String... groupList) { if (this.groupList == null) { setGroupList(new com.amazonaws.internal.SdkInternalList( groupList.length)); } for (String ele : groupList) { this.groupList.add(ele); } return this; } /** *

* A list of IAM groups that the user is in. *

* * @param groupList * A list of IAM groups that the user is in. * @return Returns a reference to this object so that method calls can be * chained together. */ public UserDetail withGroupList(java.util.Collection groupList) { setGroupList(groupList); return this; } /** *

* A list of the managed policies attached to the user. *

* * @return A list of the managed policies attached to the user. */ public java.util.List getAttachedManagedPolicies() { if (attachedManagedPolicies == null) { attachedManagedPolicies = new com.amazonaws.internal.SdkInternalList(); } return attachedManagedPolicies; } /** *

* A list of the managed policies attached to the user. *

* * @param attachedManagedPolicies * A list of the managed policies attached to the user. */ public void setAttachedManagedPolicies( java.util.Collection attachedManagedPolicies) { if (attachedManagedPolicies == null) { this.attachedManagedPolicies = null; return; } this.attachedManagedPolicies = new com.amazonaws.internal.SdkInternalList( attachedManagedPolicies); } /** *

* A list of the managed policies attached to the user. *

*

* NOTE: This method appends the values to the existing list (if * any). Use {@link #setAttachedManagedPolicies(java.util.Collection)} or * {@link #withAttachedManagedPolicies(java.util.Collection)} if you want to * override the existing values. *

* * @param attachedManagedPolicies * A list of the managed policies attached to the user. * @return Returns a reference to this object so that method calls can be * chained together. */ public UserDetail withAttachedManagedPolicies( AttachedPolicy... attachedManagedPolicies) { if (this.attachedManagedPolicies == null) { setAttachedManagedPolicies(new com.amazonaws.internal.SdkInternalList( attachedManagedPolicies.length)); } for (AttachedPolicy ele : attachedManagedPolicies) { this.attachedManagedPolicies.add(ele); } return this; } /** *

* A list of the managed policies attached to the user. *

* * @param attachedManagedPolicies * A list of the managed policies attached to the user. * @return Returns a reference to this object so that method calls can be * chained together. */ public UserDetail withAttachedManagedPolicies( java.util.Collection attachedManagedPolicies) { setAttachedManagedPolicies(attachedManagedPolicies); return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getPath() != null) sb.append("Path: " + getPath() + ","); if (getUserName() != null) sb.append("UserName: " + getUserName() + ","); if (getUserId() != null) sb.append("UserId: " + getUserId() + ","); if (getArn() != null) sb.append("Arn: " + getArn() + ","); if (getCreateDate() != null) sb.append("CreateDate: " + getCreateDate() + ","); if (getUserPolicyList() != null) sb.append("UserPolicyList: " + getUserPolicyList() + ","); if (getGroupList() != null) sb.append("GroupList: " + getGroupList() + ","); if (getAttachedManagedPolicies() != null) sb.append("AttachedManagedPolicies: " + getAttachedManagedPolicies()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof UserDetail == false) return false; UserDetail other = (UserDetail) obj; if (other.getPath() == null ^ this.getPath() == null) return false; if (other.getPath() != null && other.getPath().equals(this.getPath()) == false) return false; if (other.getUserName() == null ^ this.getUserName() == null) return false; if (other.getUserName() != null && other.getUserName().equals(this.getUserName()) == false) return false; if (other.getUserId() == null ^ this.getUserId() == null) return false; if (other.getUserId() != null && other.getUserId().equals(this.getUserId()) == false) return false; if (other.getArn() == null ^ this.getArn() == null) return false; if (other.getArn() != null && other.getArn().equals(this.getArn()) == false) return false; if (other.getCreateDate() == null ^ this.getCreateDate() == null) return false; if (other.getCreateDate() != null && other.getCreateDate().equals(this.getCreateDate()) == false) return false; if (other.getUserPolicyList() == null ^ this.getUserPolicyList() == null) return false; if (other.getUserPolicyList() != null && other.getUserPolicyList().equals(this.getUserPolicyList()) == false) return false; if (other.getGroupList() == null ^ this.getGroupList() == null) return false; if (other.getGroupList() != null && other.getGroupList().equals(this.getGroupList()) == false) return false; if (other.getAttachedManagedPolicies() == null ^ this.getAttachedManagedPolicies() == null) return false; if (other.getAttachedManagedPolicies() != null && other.getAttachedManagedPolicies().equals( this.getAttachedManagedPolicies()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getPath() == null) ? 0 : getPath().hashCode()); hashCode = prime * hashCode + ((getUserName() == null) ? 0 : getUserName().hashCode()); hashCode = prime * hashCode + ((getUserId() == null) ? 0 : getUserId().hashCode()); hashCode = prime * hashCode + ((getArn() == null) ? 0 : getArn().hashCode()); hashCode = prime * hashCode + ((getCreateDate() == null) ? 0 : getCreateDate().hashCode()); hashCode = prime * hashCode + ((getUserPolicyList() == null) ? 0 : getUserPolicyList() .hashCode()); hashCode = prime * hashCode + ((getGroupList() == null) ? 0 : getGroupList().hashCode()); hashCode = prime * hashCode + ((getAttachedManagedPolicies() == null) ? 0 : getAttachedManagedPolicies().hashCode()); return hashCode; } @Override public UserDetail clone() { try { return (UserDetail) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException( "Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy