public Document withAccessControlList(Principal... accessControlList) {
        if (this.accessControlList == null) {
            setAccessControlList(new java.util.ArrayList<Principal>(accessControlList.length));
        }
        for (Principal ele : accessControlList) {
            this.accessControlList.add(ele);
        }
        return this;
    }
<p>
Information on principals (users and/or groups) and which documents they should have access to. This is useful
for user context filtering, where search results are filtered based on the user or their group access to
documents.
</p>
<p>
<b>NOTE:</b> This method appends the values to the existing list (if any). Use
{@link #setAccessControlList(java.util.Collection)} or {@link #withAccessControlList(java.util.Collection)} if
you want to override the existing values.
</p>

@param accessControlList
       Information on principals (users and/or groups) and which documents they should have access to. This is
       useful for user context filtering, where search results are filtered based on the user or their group
       access to documents.
@return Returns a reference to this object so that method calls can be chained together.
aws-java-sdk-kendra/src/main/java/com/amazonaws/services/kendra/model/Document.java