@java.lang.Override
    public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
            return true;
        }
        if (!(obj instanceof QueryResourceUploadInfoRequest other)) {
            return super.equals(obj);
        }

        if (type_ != other.type_) {
            return false;
        }
        if (hasIdNum() != other.hasIdNum()) {
            return false;
        }
        if (hasIdNum()) {
            if (getIdNum() != other.getIdNum()) {
                return false;
            }
        }
        if (hasIdStr() != other.hasIdStr()) {
            return false;
        }
        if (hasIdStr()) {
            if (!getIdStr().equals(other.getIdStr())) {
                return false;
            }
        }
        if (hasName() != other.hasName()) {
            return false;
        }
        if (hasName()) {
            if (!getName().equals(other.getName())) {
                return false;
            }
        }
        if (hasMediaType() != other.hasMediaType()) {
            return false;
        }
        if (hasMediaType()) {
            if (!getMediaType().equals(other.getMediaType())) {
                return false;
            }
        }
        return getCustomAttributesList().equals(other.getCustomAttributesList())
                && getUnknownFields().equals(other.getUnknownFields());
    }
<code>repeated .im.turms.proto.Value custom_attributes = 15;</code>
turms-server-common/src/main/java/im/turms/server/common/access/client/dto/request/storage/QueryResourceUploadInfoRequest.java