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

com.amazonaws.services.customerprofiles.model.SearchProfilesRequest Maven / Gradle / Ivy

/*
 * 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.customerprofiles.model;

import java.io.Serializable;
import javax.annotation.Generated;

import com.amazonaws.AmazonWebServiceRequest;

/**
 * 
 * @see AWS
 *      API Documentation
 */
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class SearchProfilesRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {

    /**
     * 

* The pagination token from the previous SearchProfiles API call. *

*/ private String nextToken; /** *

* The maximum number of objects returned per page. *

*

* The default is 20 if this parameter is not included in the request. *

*/ private Integer maxResults; /** *

* The unique name of the domain. *

*/ private String domainName; /** *

* A searchable identifier of a customer profile. The predefined keys you can use to search include: _account, * _profileId, _assetId, _caseId, _orderId, _fullName, _phone, _email, _ctrContactId, _marketoLeadId, * _salesforceAccountId, _salesforceContactId, _salesforceAssetId, _zendeskUserId, _zendeskExternalId, * _zendeskTicketId, _serviceNowSystemId, _serviceNowIncidentId, _segmentUserId, _shopifyCustomerId, * _shopifyOrderId. *

*/ private String keyName; /** *

* A list of key values. *

*/ private java.util.List values; /** *

* A list of AdditionalSearchKey objects that are each searchable identifiers of a profile. Each * AdditionalSearchKey object contains a KeyName and a list of Values * associated with that specific key (i.e., a key-value(s) pair). These additional search keys will be used in * conjunction with the LogicalOperator and the required KeyName and Values * parameters to search for profiles that satisfy the search criteria. *

*/ private java.util.List additionalSearchKeys; /** *

* Relationship between all specified search keys that will be used to search for profiles. This includes the * required KeyName and Values parameters as well as any key-value(s) pairs specified in * the AdditionalSearchKeys list. *

*

* This parameter influences which profiles will be returned in the response in the following manner: *

*
    *
  • *

    * AND - The response only includes profiles that match all of the search keys. *

    *
  • *
  • *

    * OR - The response includes profiles that match at least one of the search keys. *

    *
  • *
*

* The OR relationship is the default behavior if this parameter is not included in the request. *

*/ private String logicalOperator; /** *

* The pagination token from the previous SearchProfiles API call. *

* * @param nextToken * The pagination token from the previous SearchProfiles API call. */ public void setNextToken(String nextToken) { this.nextToken = nextToken; } /** *

* The pagination token from the previous SearchProfiles API call. *

* * @return The pagination token from the previous SearchProfiles API call. */ public String getNextToken() { return this.nextToken; } /** *

* The pagination token from the previous SearchProfiles API call. *

* * @param nextToken * The pagination token from the previous SearchProfiles API call. * @return Returns a reference to this object so that method calls can be chained together. */ public SearchProfilesRequest withNextToken(String nextToken) { setNextToken(nextToken); return this; } /** *

* The maximum number of objects returned per page. *

*

* The default is 20 if this parameter is not included in the request. *

* * @param maxResults * The maximum number of objects returned per page.

*

* The default is 20 if this parameter is not included in the request. */ public void setMaxResults(Integer maxResults) { this.maxResults = maxResults; } /** *

* The maximum number of objects returned per page. *

*

* The default is 20 if this parameter is not included in the request. *

* * @return The maximum number of objects returned per page.

*

* The default is 20 if this parameter is not included in the request. */ public Integer getMaxResults() { return this.maxResults; } /** *

* The maximum number of objects returned per page. *

*

* The default is 20 if this parameter is not included in the request. *

* * @param maxResults * The maximum number of objects returned per page.

*

* The default is 20 if this parameter is not included in the request. * @return Returns a reference to this object so that method calls can be chained together. */ public SearchProfilesRequest withMaxResults(Integer maxResults) { setMaxResults(maxResults); return this; } /** *

* The unique name of the domain. *

* * @param domainName * The unique name of the domain. */ public void setDomainName(String domainName) { this.domainName = domainName; } /** *

* The unique name of the domain. *

* * @return The unique name of the domain. */ public String getDomainName() { return this.domainName; } /** *

* The unique name of the domain. *

* * @param domainName * The unique name of the domain. * @return Returns a reference to this object so that method calls can be chained together. */ public SearchProfilesRequest withDomainName(String domainName) { setDomainName(domainName); return this; } /** *

* A searchable identifier of a customer profile. The predefined keys you can use to search include: _account, * _profileId, _assetId, _caseId, _orderId, _fullName, _phone, _email, _ctrContactId, _marketoLeadId, * _salesforceAccountId, _salesforceContactId, _salesforceAssetId, _zendeskUserId, _zendeskExternalId, * _zendeskTicketId, _serviceNowSystemId, _serviceNowIncidentId, _segmentUserId, _shopifyCustomerId, * _shopifyOrderId. *

* * @param keyName * A searchable identifier of a customer profile. The predefined keys you can use to search include: * _account, _profileId, _assetId, _caseId, _orderId, _fullName, _phone, _email, _ctrContactId, * _marketoLeadId, _salesforceAccountId, _salesforceContactId, _salesforceAssetId, _zendeskUserId, * _zendeskExternalId, _zendeskTicketId, _serviceNowSystemId, _serviceNowIncidentId, _segmentUserId, * _shopifyCustomerId, _shopifyOrderId. */ public void setKeyName(String keyName) { this.keyName = keyName; } /** *

* A searchable identifier of a customer profile. The predefined keys you can use to search include: _account, * _profileId, _assetId, _caseId, _orderId, _fullName, _phone, _email, _ctrContactId, _marketoLeadId, * _salesforceAccountId, _salesforceContactId, _salesforceAssetId, _zendeskUserId, _zendeskExternalId, * _zendeskTicketId, _serviceNowSystemId, _serviceNowIncidentId, _segmentUserId, _shopifyCustomerId, * _shopifyOrderId. *

* * @return A searchable identifier of a customer profile. The predefined keys you can use to search include: * _account, _profileId, _assetId, _caseId, _orderId, _fullName, _phone, _email, _ctrContactId, * _marketoLeadId, _salesforceAccountId, _salesforceContactId, _salesforceAssetId, _zendeskUserId, * _zendeskExternalId, _zendeskTicketId, _serviceNowSystemId, _serviceNowIncidentId, _segmentUserId, * _shopifyCustomerId, _shopifyOrderId. */ public String getKeyName() { return this.keyName; } /** *

* A searchable identifier of a customer profile. The predefined keys you can use to search include: _account, * _profileId, _assetId, _caseId, _orderId, _fullName, _phone, _email, _ctrContactId, _marketoLeadId, * _salesforceAccountId, _salesforceContactId, _salesforceAssetId, _zendeskUserId, _zendeskExternalId, * _zendeskTicketId, _serviceNowSystemId, _serviceNowIncidentId, _segmentUserId, _shopifyCustomerId, * _shopifyOrderId. *

* * @param keyName * A searchable identifier of a customer profile. The predefined keys you can use to search include: * _account, _profileId, _assetId, _caseId, _orderId, _fullName, _phone, _email, _ctrContactId, * _marketoLeadId, _salesforceAccountId, _salesforceContactId, _salesforceAssetId, _zendeskUserId, * _zendeskExternalId, _zendeskTicketId, _serviceNowSystemId, _serviceNowIncidentId, _segmentUserId, * _shopifyCustomerId, _shopifyOrderId. * @return Returns a reference to this object so that method calls can be chained together. */ public SearchProfilesRequest withKeyName(String keyName) { setKeyName(keyName); return this; } /** *

* A list of key values. *

* * @return A list of key values. */ public java.util.List getValues() { return values; } /** *

* A list of key values. *

* * @param values * A list of key values. */ public void setValues(java.util.Collection values) { if (values == null) { this.values = null; return; } this.values = new java.util.ArrayList(values); } /** *

* A list of key values. *

*

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

* * @param values * A list of key values. * @return Returns a reference to this object so that method calls can be chained together. */ public SearchProfilesRequest withValues(String... values) { if (this.values == null) { setValues(new java.util.ArrayList(values.length)); } for (String ele : values) { this.values.add(ele); } return this; } /** *

* A list of key values. *

* * @param values * A list of key values. * @return Returns a reference to this object so that method calls can be chained together. */ public SearchProfilesRequest withValues(java.util.Collection values) { setValues(values); return this; } /** *

* A list of AdditionalSearchKey objects that are each searchable identifiers of a profile. Each * AdditionalSearchKey object contains a KeyName and a list of Values * associated with that specific key (i.e., a key-value(s) pair). These additional search keys will be used in * conjunction with the LogicalOperator and the required KeyName and Values * parameters to search for profiles that satisfy the search criteria. *

* * @return A list of AdditionalSearchKey objects that are each searchable identifiers of a profile. * Each AdditionalSearchKey object contains a KeyName and a list of * Values associated with that specific key (i.e., a key-value(s) pair). These additional * search keys will be used in conjunction with the LogicalOperator and the required * KeyName and Values parameters to search for profiles that satisfy the search * criteria. */ public java.util.List getAdditionalSearchKeys() { return additionalSearchKeys; } /** *

* A list of AdditionalSearchKey objects that are each searchable identifiers of a profile. Each * AdditionalSearchKey object contains a KeyName and a list of Values * associated with that specific key (i.e., a key-value(s) pair). These additional search keys will be used in * conjunction with the LogicalOperator and the required KeyName and Values * parameters to search for profiles that satisfy the search criteria. *

* * @param additionalSearchKeys * A list of AdditionalSearchKey objects that are each searchable identifiers of a profile. Each * AdditionalSearchKey object contains a KeyName and a list of Values * associated with that specific key (i.e., a key-value(s) pair). These additional search keys will be used * in conjunction with the LogicalOperator and the required KeyName and * Values parameters to search for profiles that satisfy the search criteria. */ public void setAdditionalSearchKeys(java.util.Collection additionalSearchKeys) { if (additionalSearchKeys == null) { this.additionalSearchKeys = null; return; } this.additionalSearchKeys = new java.util.ArrayList(additionalSearchKeys); } /** *

* A list of AdditionalSearchKey objects that are each searchable identifiers of a profile. Each * AdditionalSearchKey object contains a KeyName and a list of Values * associated with that specific key (i.e., a key-value(s) pair). These additional search keys will be used in * conjunction with the LogicalOperator and the required KeyName and Values * parameters to search for profiles that satisfy the search criteria. *

*

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

* * @param additionalSearchKeys * A list of AdditionalSearchKey objects that are each searchable identifiers of a profile. Each * AdditionalSearchKey object contains a KeyName and a list of Values * associated with that specific key (i.e., a key-value(s) pair). These additional search keys will be used * in conjunction with the LogicalOperator and the required KeyName and * Values parameters to search for profiles that satisfy the search criteria. * @return Returns a reference to this object so that method calls can be chained together. */ public SearchProfilesRequest withAdditionalSearchKeys(AdditionalSearchKey... additionalSearchKeys) { if (this.additionalSearchKeys == null) { setAdditionalSearchKeys(new java.util.ArrayList(additionalSearchKeys.length)); } for (AdditionalSearchKey ele : additionalSearchKeys) { this.additionalSearchKeys.add(ele); } return this; } /** *

* A list of AdditionalSearchKey objects that are each searchable identifiers of a profile. Each * AdditionalSearchKey object contains a KeyName and a list of Values * associated with that specific key (i.e., a key-value(s) pair). These additional search keys will be used in * conjunction with the LogicalOperator and the required KeyName and Values * parameters to search for profiles that satisfy the search criteria. *

* * @param additionalSearchKeys * A list of AdditionalSearchKey objects that are each searchable identifiers of a profile. Each * AdditionalSearchKey object contains a KeyName and a list of Values * associated with that specific key (i.e., a key-value(s) pair). These additional search keys will be used * in conjunction with the LogicalOperator and the required KeyName and * Values parameters to search for profiles that satisfy the search criteria. * @return Returns a reference to this object so that method calls can be chained together. */ public SearchProfilesRequest withAdditionalSearchKeys(java.util.Collection additionalSearchKeys) { setAdditionalSearchKeys(additionalSearchKeys); return this; } /** *

* Relationship between all specified search keys that will be used to search for profiles. This includes the * required KeyName and Values parameters as well as any key-value(s) pairs specified in * the AdditionalSearchKeys list. *

*

* This parameter influences which profiles will be returned in the response in the following manner: *

*
    *
  • *

    * AND - The response only includes profiles that match all of the search keys. *

    *
  • *
  • *

    * OR - The response includes profiles that match at least one of the search keys. *

    *
  • *
*

* The OR relationship is the default behavior if this parameter is not included in the request. *

* * @param logicalOperator * Relationship between all specified search keys that will be used to search for profiles. This includes the * required KeyName and Values parameters as well as any key-value(s) pairs * specified in the AdditionalSearchKeys list.

*

* This parameter influences which profiles will be returned in the response in the following manner: *

*
    *
  • *

    * AND - The response only includes profiles that match all of the search keys. *

    *
  • *
  • *

    * OR - The response includes profiles that match at least one of the search keys. *

    *
  • *
*

* The OR relationship is the default behavior if this parameter is not included in the request. * @see LogicalOperator */ public void setLogicalOperator(String logicalOperator) { this.logicalOperator = logicalOperator; } /** *

* Relationship between all specified search keys that will be used to search for profiles. This includes the * required KeyName and Values parameters as well as any key-value(s) pairs specified in * the AdditionalSearchKeys list. *

*

* This parameter influences which profiles will be returned in the response in the following manner: *

*
    *
  • *

    * AND - The response only includes profiles that match all of the search keys. *

    *
  • *
  • *

    * OR - The response includes profiles that match at least one of the search keys. *

    *
  • *
*

* The OR relationship is the default behavior if this parameter is not included in the request. *

* * @return Relationship between all specified search keys that will be used to search for profiles. This includes * the required KeyName and Values parameters as well as any key-value(s) pairs * specified in the AdditionalSearchKeys list.

*

* This parameter influences which profiles will be returned in the response in the following manner: *

*
    *
  • *

    * AND - The response only includes profiles that match all of the search keys. *

    *
  • *
  • *

    * OR - The response includes profiles that match at least one of the search keys. *

    *
  • *
*

* The OR relationship is the default behavior if this parameter is not included in the * request. * @see LogicalOperator */ public String getLogicalOperator() { return this.logicalOperator; } /** *

* Relationship between all specified search keys that will be used to search for profiles. This includes the * required KeyName and Values parameters as well as any key-value(s) pairs specified in * the AdditionalSearchKeys list. *

*

* This parameter influences which profiles will be returned in the response in the following manner: *

*
    *
  • *

    * AND - The response only includes profiles that match all of the search keys. *

    *
  • *
  • *

    * OR - The response includes profiles that match at least one of the search keys. *

    *
  • *
*

* The OR relationship is the default behavior if this parameter is not included in the request. *

* * @param logicalOperator * Relationship between all specified search keys that will be used to search for profiles. This includes the * required KeyName and Values parameters as well as any key-value(s) pairs * specified in the AdditionalSearchKeys list.

*

* This parameter influences which profiles will be returned in the response in the following manner: *

*
    *
  • *

    * AND - The response only includes profiles that match all of the search keys. *

    *
  • *
  • *

    * OR - The response includes profiles that match at least one of the search keys. *

    *
  • *
*

* The OR relationship is the default behavior if this parameter is not included in the request. * @return Returns a reference to this object so that method calls can be chained together. * @see LogicalOperator */ public SearchProfilesRequest withLogicalOperator(String logicalOperator) { setLogicalOperator(logicalOperator); return this; } /** *

* Relationship between all specified search keys that will be used to search for profiles. This includes the * required KeyName and Values parameters as well as any key-value(s) pairs specified in * the AdditionalSearchKeys list. *

*

* This parameter influences which profiles will be returned in the response in the following manner: *

*
    *
  • *

    * AND - The response only includes profiles that match all of the search keys. *

    *
  • *
  • *

    * OR - The response includes profiles that match at least one of the search keys. *

    *
  • *
*

* The OR relationship is the default behavior if this parameter is not included in the request. *

* * @param logicalOperator * Relationship between all specified search keys that will be used to search for profiles. This includes the * required KeyName and Values parameters as well as any key-value(s) pairs * specified in the AdditionalSearchKeys list.

*

* This parameter influences which profiles will be returned in the response in the following manner: *

*
    *
  • *

    * AND - The response only includes profiles that match all of the search keys. *

    *
  • *
  • *

    * OR - The response includes profiles that match at least one of the search keys. *

    *
  • *
*

* The OR relationship is the default behavior if this parameter is not included in the request. * @return Returns a reference to this object so that method calls can be chained together. * @see LogicalOperator */ public SearchProfilesRequest withLogicalOperator(LogicalOperator logicalOperator) { this.logicalOperator = logicalOperator.toString(); 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 (getNextToken() != null) sb.append("NextToken: ").append(getNextToken()).append(","); if (getMaxResults() != null) sb.append("MaxResults: ").append(getMaxResults()).append(","); if (getDomainName() != null) sb.append("DomainName: ").append(getDomainName()).append(","); if (getKeyName() != null) sb.append("KeyName: ").append(getKeyName()).append(","); if (getValues() != null) sb.append("Values: ").append(getValues()).append(","); if (getAdditionalSearchKeys() != null) sb.append("AdditionalSearchKeys: ").append(getAdditionalSearchKeys()).append(","); if (getLogicalOperator() != null) sb.append("LogicalOperator: ").append(getLogicalOperator()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof SearchProfilesRequest == false) return false; SearchProfilesRequest other = (SearchProfilesRequest) obj; if (other.getNextToken() == null ^ this.getNextToken() == null) return false; if (other.getNextToken() != null && other.getNextToken().equals(this.getNextToken()) == false) return false; if (other.getMaxResults() == null ^ this.getMaxResults() == null) return false; if (other.getMaxResults() != null && other.getMaxResults().equals(this.getMaxResults()) == false) return false; if (other.getDomainName() == null ^ this.getDomainName() == null) return false; if (other.getDomainName() != null && other.getDomainName().equals(this.getDomainName()) == false) return false; if (other.getKeyName() == null ^ this.getKeyName() == null) return false; if (other.getKeyName() != null && other.getKeyName().equals(this.getKeyName()) == false) return false; if (other.getValues() == null ^ this.getValues() == null) return false; if (other.getValues() != null && other.getValues().equals(this.getValues()) == false) return false; if (other.getAdditionalSearchKeys() == null ^ this.getAdditionalSearchKeys() == null) return false; if (other.getAdditionalSearchKeys() != null && other.getAdditionalSearchKeys().equals(this.getAdditionalSearchKeys()) == false) return false; if (other.getLogicalOperator() == null ^ this.getLogicalOperator() == null) return false; if (other.getLogicalOperator() != null && other.getLogicalOperator().equals(this.getLogicalOperator()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getNextToken() == null) ? 0 : getNextToken().hashCode()); hashCode = prime * hashCode + ((getMaxResults() == null) ? 0 : getMaxResults().hashCode()); hashCode = prime * hashCode + ((getDomainName() == null) ? 0 : getDomainName().hashCode()); hashCode = prime * hashCode + ((getKeyName() == null) ? 0 : getKeyName().hashCode()); hashCode = prime * hashCode + ((getValues() == null) ? 0 : getValues().hashCode()); hashCode = prime * hashCode + ((getAdditionalSearchKeys() == null) ? 0 : getAdditionalSearchKeys().hashCode()); hashCode = prime * hashCode + ((getLogicalOperator() == null) ? 0 : getLogicalOperator().hashCode()); return hashCode; } @Override public SearchProfilesRequest clone() { return (SearchProfilesRequest) super.clone(); } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy