// Copyright 2017 Google Inc. 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. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License 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. /** * MutateMembersOperand.java * * This file was auto-generated from WSDL * by the Apache Axis 1.4 Mar 02, 2009 (07:08:06 PST) WSDL2Java emitter. */ package com.google.api.ads.adwords.axis.v201702.rm; /** * Operand containing user list id and members to be added or removed. */ public class MutateMembersOperand implements java.io.Serializable { /* The id of the user list. * <span class="constraint Required">This field is required * and should not be {@code null}.</span> */ private java.lang.Long userListId; /* The data type indicating the type of member data entity in * {@code members} list. If it's not specified, it'll * default to * {@link DataType#EMAIL_SHA256}. */ private com.google.api.ads.adwords.axis.v201702.rm.MutateMembersOperandDataType dataType; /* Set to indicate a remove-all operation which will remove all * members from the user list. * Can only be set with {@code Operator#REMOVE} and * when set to true {@link #members} must be null or * empty. */ private java.lang.Boolean removeAll; /* A list of members to be added or removed. * * <p>If {@link #removeAll} is {@code true}, this list * must be {@code null} or empty. Otherwise, * this field is required and there must be at least * one member. * * <p>Each element in members list should be in format * according to the specified * {@code dataType}. * <span class="constraint CollectionSize">The maximum * size of this collection is 1000000.</span> * <span class="constraint ContentsNotNull">This field * must not contain {@code null} elements.</span> */ private java.lang.String[] members; public MutateMembersOperand() { } public MutateMembersOperand( java.lang.Long userListId, com.google.api.ads.adwords.axis.v201702.rm.MutateMembersOperandDataType dataType, java.lang.Boolean removeAll, java.lang.String[] members) { this.userListId = userListId; this.dataType = dataType; this.removeAll = removeAll; this.members = members; } /** * Gets the userListId value for this MutateMembersOperand. * * @return userListId * The id of the user list. * <span class="constraint Required">This field is required * and should not be {@code null}.</span> */ public java.lang.Long getUserListId() { return userListId; } /** * Sets the userListId value for this MutateMembersOperand. * * @param userListId * The id of the user list. * <span class="constraint Required">This field is required * and should not be {@code null}.</span> */ public void setUserListId(java.lang.Long userListId) { this.userListId = userListId; } /** * Gets the dataType value for this MutateMembersOperand. * * @return dataType * The data type indicating the type of member data entity in * {@code members} list. If it's not specified, it'll * default to * {@link DataType#EMAIL_SHA256}. */ public com.google.api.ads.adwords.axis.v201702.rm.MutateMembersOperandDataType getDataType() { return dataType; } /** * Sets the dataType value for this MutateMembersOperand. * * @param dataType * The data type indicating the type of member data entity in * {@code members} list. If it's not specified, it'll * default to * {@link DataType#EMAIL_SHA256}. */ public void setDataType(com.google.api.ads.adwords.axis.v201702.rm.MutateMembersOperandDataType dataType) { this.dataType = dataType; } /** * Gets the removeAll value for this MutateMembersOperand. * * @return removeAll * Set to indicate a remove-all operation which will remove all * members from the user list. * Can only be set with {@code Operator#REMOVE} and * when set to true {@link #members} must be null or * empty. */ public java.lang.Boolean getRemoveAll() { return removeAll; } /** * Sets the removeAll value for this MutateMembersOperand. * * @param removeAll * Set to indicate a remove-all operation which will remove all * members from the user list. * Can only be set with {@code Operator#REMOVE} and * when set to true {@link #members} must be null or * empty. */ public void setRemoveAll(java.lang.Boolean removeAll) { this.removeAll = removeAll; } /** * Gets the members value for this MutateMembersOperand. * * @return members * A list of members to be added or removed. * * <p>If {@link #removeAll} is {@code true}, this list * must be {@code null} or empty. Otherwise, * this field is required and there must be at least * one member. * * <p>Each element in members list should be in format * according to the specified * {@code dataType}. * <span class="constraint CollectionSize">The maximum * size of this collection is 1000000.</span> * <span class="constraint ContentsNotNull">This field * must not contain {@code null} elements.</span> */ public java.lang.String[] getMembers() { return members; } /** * Sets the members value for this MutateMembersOperand. * * @param members * A list of members to be added or removed. * * <p>If {@link #removeAll} is {@code true}, this list * must be {@code null} or empty. Otherwise, * this field is required and there must be at least * one member. * * <p>Each element in members list should be in format * according to the specified * {@code dataType}. * <span class="constraint CollectionSize">The maximum * size of this collection is 1000000.</span> * <span class="constraint ContentsNotNull">This field * must not contain {@code null} elements.</span> */ public void setMembers(java.lang.String[] members) { this.members = members; } public java.lang.String getMembers(int i) { return this.members[i]; } public void setMembers(int i, java.lang.String _value) { this.members[i] = _value; } private java.lang.Object __equalsCalc = null; public synchronized boolean equals(java.lang.Object obj) { if (!(obj instanceof MutateMembersOperand)) return false; MutateMembersOperand other = (MutateMembersOperand) obj; if (obj == null) return false; if (this == obj) return true; if (__equalsCalc != null) { return (__equalsCalc == obj); } __equalsCalc = obj; boolean _equals; _equals = true && ((this.userListId==null && other.getUserListId()==null) || (this.userListId!=null && this.userListId.equals(other.getUserListId()))) && ((this.dataType==null && other.getDataType()==null) || (this.dataType!=null && this.dataType.equals(other.getDataType()))) && ((this.removeAll==null && other.getRemoveAll()==null) || (this.removeAll!=null && this.removeAll.equals(other.getRemoveAll()))) && ((this.members==null && other.getMembers()==null) || (this.members!=null && java.util.Arrays.equals(this.members, other.getMembers()))); __equalsCalc = null; return _equals; } private boolean __hashCodeCalc = false; public synchronized int hashCode() { if (__hashCodeCalc) { return 0; } __hashCodeCalc = true; int _hashCode = 1; if (getUserListId() != null) { _hashCode += getUserListId().hashCode(); } if (getDataType() != null) { _hashCode += getDataType().hashCode(); } if (getRemoveAll() != null) { _hashCode += getRemoveAll().hashCode(); } if (getMembers() != null) { for (int i=0; i<java.lang.reflect.Array.getLength(getMembers()); i++) { java.lang.Object obj = java.lang.reflect.Array.get(getMembers(), i); if (obj != null && !obj.getClass().isArray()) { _hashCode += obj.hashCode(); } } } __hashCodeCalc = false; return _hashCode; } // Type metadata private static org.apache.axis.description.TypeDesc typeDesc = new org.apache.axis.description.TypeDesc(MutateMembersOperand.class, true); static { typeDesc.setXmlType(new javax.xml.namespace.QName("https://adwords.google.com/api/adwords/rm/v201702", "MutateMembersOperand")); org.apache.axis.description.ElementDesc elemField = new org.apache.axis.description.ElementDesc(); elemField.setFieldName("userListId"); elemField.setXmlName(new javax.xml.namespace.QName("https://adwords.google.com/api/adwords/rm/v201702", "userListId")); elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "long")); elemField.setMinOccurs(0); elemField.setNillable(false); typeDesc.addFieldDesc(elemField); elemField = new org.apache.axis.description.ElementDesc(); elemField.setFieldName("dataType"); elemField.setXmlName(new javax.xml.namespace.QName("https://adwords.google.com/api/adwords/rm/v201702", "dataType")); elemField.setXmlType(new javax.xml.namespace.QName("https://adwords.google.com/api/adwords/rm/v201702", "MutateMembersOperand.DataType")); elemField.setMinOccurs(0); elemField.setNillable(false); typeDesc.addFieldDesc(elemField); elemField = new org.apache.axis.description.ElementDesc(); elemField.setFieldName("removeAll"); elemField.setXmlName(new javax.xml.namespace.QName("https://adwords.google.com/api/adwords/rm/v201702", "removeAll")); elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "boolean")); elemField.setMinOccurs(0); elemField.setNillable(false); typeDesc.addFieldDesc(elemField); elemField = new org.apache.axis.description.ElementDesc(); elemField.setFieldName("members"); elemField.setXmlName(new javax.xml.namespace.QName("https://adwords.google.com/api/adwords/rm/v201702", "members")); elemField.setXmlType(new javax.xml.namespace.QName("http://www.w3.org/2001/XMLSchema", "string")); elemField.setMinOccurs(0); elemField.setNillable(false); elemField.setMaxOccursUnbounded(true); typeDesc.addFieldDesc(elemField); } /** * Return type metadata object */ public static org.apache.axis.description.TypeDesc getTypeDesc() { return typeDesc; } /** * Get Custom Serializer */ public static org.apache.axis.encoding.Serializer getSerializer( java.lang.String mechType, java.lang.Class _javaType, javax.xml.namespace.QName _xmlType) { return new org.apache.axis.encoding.ser.BeanSerializer( _javaType, _xmlType, typeDesc); } /** * Get Custom Deserializer */ public static org.apache.axis.encoding.Deserializer getDeserializer( java.lang.String mechType, java.lang.Class _javaType, javax.xml.namespace.QName _xmlType) { return new org.apache.axis.encoding.ser.BeanDeserializer( _javaType, _xmlType, typeDesc); } }