public ModifyCacheClusterRequest withCacheSecurityGroupNames(String... cacheSecurityGroupNames) {
        if (this.cacheSecurityGroupNames == null) {
            setCacheSecurityGroupNames(new com.amazonaws.internal.SdkInternalList<String>(cacheSecurityGroupNames.length));
        }
        for (String ele : cacheSecurityGroupNames) {
            this.cacheSecurityGroupNames.add(ele);
        }
        return this;
    }
<p>
A list of cache security group names to authorize on this cluster. This change is asynchronously applied as soon
as possible.
</p>
<p>
You can use this parameter only with clusters that are created outside of an Amazon Virtual Private Cloud (Amazon
VPC).
</p>
<p>
Constraints: Must contain no more than 255 alphanumeric characters. Must not be "Default".
</p>
<p>
<b>NOTE:</b> This method appends the values to the existing list (if any). Use
{@link #setCacheSecurityGroupNames(java.util.Collection)} or
{@link #withCacheSecurityGroupNames(java.util.Collection)} if you want to override the existing values.
</p>

@param cacheSecurityGroupNames
       A list of cache security group names to authorize on this cluster. This change is asynchronously applied
       as soon as possible.</p>
       <p>
       You can use this parameter only with clusters that are created outside of an Amazon Virtual Private Cloud
       (Amazon VPC).
       </p>
       <p>
       Constraints: Must contain no more than 255 alphanumeric characters. Must not be "Default".
@return Returns a reference to this object so that method calls can be chained together.
aws-java-sdk-elasticache/src/main/java/com/amazonaws/services/elasticache/model/ModifyCacheClusterRequest.java