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

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

Go to download

The AWS SDK for Java with support for OSGi. The AWS SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

There is a newer version: 1.11.60
Show newest version
/*
 * Copyright 2011-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 group, including all of the group's * policies. *

*

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

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

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

*/ private String path; /** *

* The friendly name that identifies the group. *

*/ private String groupName; /** *

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

*/ private String groupId; private String arn; /** *

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

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

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

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

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

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

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

* * @param path * The path to the group. 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 group. For more information about paths, see IAM Identifiers in the Using IAM guide. *

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

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

* * @param path * The path to the group. 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 GroupDetail withPath(String path) { setPath(path); return this; } /** *

* The friendly name that identifies the group. *

* * @param groupName * The friendly name that identifies the group. */ public void setGroupName(String groupName) { this.groupName = groupName; } /** *

* The friendly name that identifies the group. *

* * @return The friendly name that identifies the group. */ public String getGroupName() { return this.groupName; } /** *

* The friendly name that identifies the group. *

* * @param groupName * The friendly name that identifies the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public GroupDetail withGroupName(String groupName) { setGroupName(groupName); return this; } /** *

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

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

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

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

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

* * @param groupId * The stable and unique string identifying the group. 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 GroupDetail withGroupId(String groupId) { setGroupId(groupId); 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 GroupDetail withArn(String arn) { setArn(arn); return this; } /** *

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

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

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

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

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

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

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

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

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

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

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

*

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

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

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

* * @param groupPolicyList * A list of the inline policies embedded in the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public GroupDetail withGroupPolicyList( java.util.Collection groupPolicyList) { setGroupPolicyList(groupPolicyList); return this; } /** *

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

* * @return A list of the managed policies attached to the group. */ 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 group. *

* * @param attachedManagedPolicies * A list of the managed policies attached to the group. */ 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 group. *

*

* 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 group. * @return Returns a reference to this object so that method calls can be * chained together. */ public GroupDetail 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 group. *

* * @param attachedManagedPolicies * A list of the managed policies attached to the group. * @return Returns a reference to this object so that method calls can be * chained together. */ public GroupDetail 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 (getGroupName() != null) sb.append("GroupName: " + getGroupName() + ","); if (getGroupId() != null) sb.append("GroupId: " + getGroupId() + ","); if (getArn() != null) sb.append("Arn: " + getArn() + ","); if (getCreateDate() != null) sb.append("CreateDate: " + getCreateDate() + ","); if (getGroupPolicyList() != null) sb.append("GroupPolicyList: " + getGroupPolicyList() + ","); 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 GroupDetail == false) return false; GroupDetail other = (GroupDetail) obj; if (other.getPath() == null ^ this.getPath() == null) return false; if (other.getPath() != null && other.getPath().equals(this.getPath()) == false) return false; if (other.getGroupName() == null ^ this.getGroupName() == null) return false; if (other.getGroupName() != null && other.getGroupName().equals(this.getGroupName()) == false) return false; if (other.getGroupId() == null ^ this.getGroupId() == null) return false; if (other.getGroupId() != null && other.getGroupId().equals(this.getGroupId()) == 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.getGroupPolicyList() == null ^ this.getGroupPolicyList() == null) return false; if (other.getGroupPolicyList() != null && other.getGroupPolicyList().equals(this.getGroupPolicyList()) == 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 + ((getGroupName() == null) ? 0 : getGroupName().hashCode()); hashCode = prime * hashCode + ((getGroupId() == null) ? 0 : getGroupId().hashCode()); hashCode = prime * hashCode + ((getArn() == null) ? 0 : getArn().hashCode()); hashCode = prime * hashCode + ((getCreateDate() == null) ? 0 : getCreateDate().hashCode()); hashCode = prime * hashCode + ((getGroupPolicyList() == null) ? 0 : getGroupPolicyList() .hashCode()); hashCode = prime * hashCode + ((getAttachedManagedPolicies() == null) ? 0 : getAttachedManagedPolicies().hashCode()); return hashCode; } @Override public GroupDetail clone() { try { return (GroupDetail) 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