diff --git a/.gitignore b/.gitignore
index ab29ea055a62..9754c6ac4df9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -27,4 +27,7 @@ kafka-handler/src/test/gen
dependency-reduced-pom.xml
**/.mvn/.develocity*
packaging/cache
-standalone-metastore/packaging/cache
\ No newline at end of file
+standalone-metastore/packaging/cache
+
+**/fb303.thrift
+apache*.tar.gz
diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt
index c64f5cf07b3a..344e2246da0c 100644
--- a/RELEASE_NOTES.txt
+++ b/RELEASE_NOTES.txt
@@ -1,3 +1,335 @@
+Release Notes - Hive - Version 4.0.0-beta-1
+
+** Sub-task
+ * [HIVE-23693] - HiveKafkaProducerTest.resumeTransaction is flaky
+ * [HIVE-25205] - Reduce overhead of adding write notification log during batch loading of partition..
+ * [HIVE-26400] - Provide docker images for Hive
+ * [HIVE-26484] - Introduce gRPC Proto Definition
+ * [HIVE-26585] - Revamp Apache Hive website
+ * [HIVE-26586] - Create a Basic Apache Hive website with HUGO
+ * [HIVE-26587] - Create a custom hive-theme in HUGO
+ * [HIVE-26588] - Move the markdown files from old website and add content to the homepage.
+ * [HIVE-26589] - Add GitHub Action workflow to build and deploy site to gh-pages
+ * [HIVE-26590] - Hive website: Fix JS, broken links, add license text and section header, and updates images
+ * [HIVE-26655] - VectorUDAFBloomFilterMerge should take care of safe batch handling when working in parallel
+ * [HIVE-26694] - Populate file row position information during vectorized Iceberg reads
+ * [HIVE-26696] - Implement row iterator for VectorizedRowBatch
+ * [HIVE-26697] - Create vectorized Hive DeleteFilter for Iceberg tables
+ * [HIVE-26716] - Query based Rebalance compaction on full acid tables
+ * [HIVE-26719] - Ability to set number of buckets manually
+ * [HIVE-26744] - Add array_max and array_min UDFs
+ * [HIVE-26754] - Implement array_distinct UDF to return an array after removing duplicates in it
+ * [HIVE-26757] - Add sfs+ofs support
+ * [HIVE-26774] - Implement array_slice UDF to get the subset of elements from an array (subarray)
+ * [HIVE-26848] - Ozone: LOAD data fails in case of move across buckets
+ * [HIVE-26889] - Implement array_join udf to concatenate the elements of an array with a specified delimiter
+ * [HIVE-26968] - Wrong results when shared work optimizer merges TS operator with different DPP edges
+ * [HIVE-27019] - Split Cleaner into separate manageable modular entities
+ * [HIVE-27020] - Implement a separate handler to handle aborted transaction cleanup
+ * [HIVE-27031] - Iceberg: Implement Copy-On-Write for Delete Queries
+ * [HIVE-27081] - Revert HIVE-26717 and HIVE-26718
+ * [HIVE-27112] - implement array_except UDF in Hive
+ * [HIVE-27118] - implement array_intersect UDF in Hive
+ * [HIVE-27197] - Iceberg: Support Iceberg version travel by reference name
+ * [HIVE-27234] - Iceberg: CREATE BRANCH SQL implementation
+ * [HIVE-27235] - Iceberg: CREATE TAG SQL implementation
+ * [HIVE-27236] - Iceberg: DROP BRANCH SQL implementation
+ * [HIVE-27243] - Iceberg: Implement Load data via temp table
+ * [HIVE-27244] - Iceberg: Implement LOAD data for unpartitioned table via Append API
+ * [HIVE-27245] - Iceberg: Implement LOAD data for partitioned tables via Append API
+ * [HIVE-27302] - Iceberg: Suport write to iceberg branch
+ * [HIVE-27329] - Document usage of the image
+ * [HIVE-27332] - Add retry backoff mechanism for abort cleanup
+ * [HIVE-27440] - Improve data connector cache
+ * [HIVE-27482] - Minor issues in array_intersect udf
+ * [HIVE-27503] - Iceberg: Support query iceberg tag
+
+** Bug
+ * [HIVE-22173] - Query with multiple lateral views hangs during compilation
+ * [HIVE-22383] - `alterPartitions` is invoked twice during dynamic partition load causing runtime delay
+ * [HIVE-22813] - Hive query fails if table location is in remote EZ and it's readonly
+ * [HIVE-23935] - Fetching primaryKey through beeline fails with NPE
+ * [HIVE-24404] - Hive getUserName close db makes client operations lost metaStoreClient connection
+ * [HIVE-25707] - SchemaTool may leave the metastore in-between upgrade steps
+ * [HIVE-26035] - Explore moving to directsql for ObjectStore::addPartitions
+ * [HIVE-26065] - Fix incorrect metric active_calls_alter_partitions and active_calls_alter_partition
+ * [HIVE-26522] - Test for HIVE-22033 and backport to 3.1 and 2.3
+ * [HIVE-26575] - Fix missing Copy Serde Description when Alter Table's Serde Description
+ * [HIVE-26628] - Iceberg table is created when running explain ctas command
+ * [HIVE-26632] - Update DelegationTokenSecretManager current key ID to prevent erroneous database updates.
+ * [HIVE-26658] - INT64 Parquet timestamps cannot be mapped to most Hive numeric types
+ * [HIVE-26684] - Upgrade maven-shade-plugin from 3.4.1 for bug fixes.
+ * [HIVE-26701] - Enable metrics for Database connection pools(1 & 2) used by ObjectStore in HMS
+ * [HIVE-26707] - Iceberg: Write failing due to Ranger Authorization failure
+ * [HIVE-26709] - Iceberg: Count(*) fails for V2 tables with delete files.
+ * [HIVE-26712] - HCatMapReduceTest writes test files in project base directory instead of build directory.
+ * [HIVE-26724] - Mask UDF failing with NPE
+ * [HIVE-26736] - Authorization failure for nested Views having WITH clause
+ * [HIVE-26740] - HS2 makes direct connections to HMS backend DB due to Compaction/StatsUpdater
+ * [HIVE-26742] - Iceberg: Vectorization fails incase of multiple tables in queries
+ * [HIVE-26745] - HPL unable to handle Decimal or null values in hplsql mode
+ * [HIVE-26756] - Iceberg: Fetch format version from metadata file to avoid conflicts with spark
+ * [HIVE-26759] - ERROR: column "CC_START" does not exist, when Postgres is used as Hive metastore
+ * [HIVE-26765] - Hive Ranger URL policy for insert overwrite directory denies access when fully qualified paths are passed
+ * [HIVE-26767] - Support for custom RDBMS is broken
+ * [HIVE-26768] - HPLSQL UDF is not working if it is applied on a column of type varchar/char/decimal in a table.
+ * [HIVE-26786] - Iceberg: Read queries with copy-on-write failing
+ * [HIVE-26796] - All tests in hive-unit module are skipped silently
+ * [HIVE-26811] - SharedWorkOptimizer: take the union of virtual columns in mergeable TableScans
+ * [HIVE-26812] - Compile error in hive-it-util module when itests are built separately
+ * [HIVE-26821] - Fetch task caching should only depend on fetch task conversion
+ * [HIVE-26849] - Nightly build fails in master from build 1533 onwards
+ * [HIVE-26850] - ColumnInfo of the source table should not be null for the alter view as query
+ * [HIVE-26860] - Appropriate rows in HMS datastore tables(SDS, SERDES, SERDE_PARAMS, SKEWED_COL_NAMES, SKEWED_COL_VALUE_LOC_MAP, SKEWED_VALUES) are not deleted upon drop partition table with skewed columns
+ * [HIVE-26884] - Iceberg: V2 Vectorization returns wrong results with deletes
+ * [HIVE-26885] - Iceberg: Parquet Vectorized V2 reads fails with NPE
+ * [HIVE-26904] - QueryCompactor failed in commitCompaction if the tmp table dir is already removed
+ * [HIVE-26911] - Renaming a translated external table with a specified location fails with 'location already exists' exception
+ * [HIVE-26947] - Hive compactor.Worker can respawn connections to HMS at extremely high frequency
+ * [HIVE-26955] - Select query fails when decimal column data type is changed to string/char/varchar in Parquet
+ * [HIVE-26976] - Failure in direct SQL processing do not undo the changes made to database before fallback to JDO resulting in stale entries in database forever
+ * [HIVE-26983] - 404 Error when clicking the "Getting Started Guide" link in the website
+ * [HIVE-26988] - Broken website links when opening results from search engines
+ * [HIVE-27004] - DateTimeFormatterBuilder cannot parse 'UTC+' in Java versions higher than 8
+ * [HIVE-27029] - hive query fails with Filesystem closed error
+ * [HIVE-27060] - Exception in add partitions with SQL Server when number of parameters exceed 2100
+ * [HIVE-27061] - Website deployment GitHub action should not trigger on pull requests
+ * [HIVE-27063] - LDAP+JWT auth forms not supported
+ * [HIVE-27065] - Exception in partition column statistics update with SQL Server db when histogram statistics is not enabled
+ * [HIVE-27071] - Select query with LIMIT clause can fail if there are marker files like "_SUCCESS" and "_MANIFEST"
+ * [HIVE-27085] - Revert Manual constructor from AbortCompactionResponseElement
+ * [HIVE-27091] - Add double quotes for tables in PartitionProjectionEvaluator
+ * [HIVE-27103] - Thrift compilation warnings on drop_dataconnector()
+ * [HIVE-27105] - Querying parquet table with zstd encryption is failing
+ * [HIVE-27116] - HS2 need to send owner info for UDFs in the HivePrivilegeObject for authorization
+ * [HIVE-27128] - Exception "Can't finish byte read from uncompressed stream DATA position" when querying ORC table
+ * [HIVE-27135] - AcidUtils#getHdfsDirSnapshots() throws FNFE when a directory is removed in HDFS
+ * [HIVE-27140] - Set HADOOP_PROXY_USER cause hiveMetaStoreClient close everytime
+ * [HIVE-27147] - HS2 is not accessible to clients via zookeeper when hostname used is not FQDN
+ * [HIVE-27157] - AssertionError when inferring return type for unix_timestamp function
+ * [HIVE-27163] - Column stats are not getting published after an insert query into an external table with custom location
+ * [HIVE-27168] - Use basename of the datatype when fetching partition metadata using partition filters
+ * [HIVE-27179] - HS2 WebUI throws NPE when JspFactory loaded from jetty-runner
+ * [HIVE-27195] - Add database authorization for drop table command
+ * [HIVE-27201] - Inconsistency between session Hive and thread-local Hive may cause HS2 deadlock
+ * [HIVE-27217] - addWriteNotificationLogInBatch can silently fail
+ * [HIVE-27223] - Show Compactions failing with NPE
+ * [HIVE-27228] - Add missing upgrade SQL statements after CQ_NUMBER_OF_BUCKETS column being introduced in HIVE-26719
+ * [HIVE-27268] - Hive.getPartitionsByNames should not enforce SessionState to be available
+ * [HIVE-27271] - Client connection to HS2 fails when transportMode=http, ssl=true, sslTrustStore specified without trustStorePassword in the JDBC URL
+ * [HIVE-27272] - Limit query causes error at qtests
+ * [HIVE-27278] - Simplify correlated queries with empty inputs
+ * [HIVE-27289] - Check for proxy hosts with subnet in IP results in exception
+ * [HIVE-27292] - Upgrade Zookeeper to 3.7.1
+ * [HIVE-27316] - Select query on table with remote database returns NULL values with postgreSQL and Redshift data connectors
+ * [HIVE-27327] - Iceberg basic stats: Incorrect row count in snapshot summary leading to unoptimized plans
+ * [HIVE-27338] - JDBC drivers are transitively inherited although declared optional
+ * [HIVE-27340] - ThreadPool in HS2 over HTTP should respect the customized ThreadFactory
+ * [HIVE-27344] - ORC RecordReaderImpl throws NPE when close() is called from the constructor
+ * [HIVE-27374] - Exception while getting kafka delegation tokens in Kerberos/SSL enabled clusters
+ * [HIVE-27375] - SharedWorkOptimizer assigns a common cache key to MapJoin operators that should not share MapJoin tables
+ * [HIVE-27392] - Iceberg: Use String instead of Long for file length in HadoopInputFile
+ * [HIVE-27398] - SHOW CREATE TABLE doesn't output backticks for CLUSTERED by Col names
+ * [HIVE-27408] - Parquet file opened for reading stats is never closed
+ * [HIVE-27413] - Bump jettison from 1.5.3 to 1.5.4
+ * [HIVE-27438] - Audit leader election event failed in non-appendable filesystems
+ * [HIVE-27439] - Support space in Decimal(precision, scale) format
+ * [HIVE-27441] - Iceberg: CTLT with source table as Hive managed table fails with "The table must be stored using an ACID compliant format"
+ * [HIVE-27447] - Iceberg: Queries failing due to FileSystem close errors due to column statistics
+ * [HIVE-27449] - Fix flaky test KafkaRecordIteratorTest
+ * [HIVE-27452] - Fix possible FNFE in HiveQueryLifeTimeHook::checkAndRollbackCTAS
+ * [HIVE-27466] - Remove obsolete reference to category-X JSON license from NOTICE
+ * [HIVE-27467] - NOTICE files use incorrect wording "developed by" instead of "developed at"
+ * [HIVE-27488] - Incorrect escaping of quotes in HPL/SQL literals
+ * [HIVE-27494] - Deduplicate the task result that generated by more branches in union all
+ * [HIVE-27502] - Fix flaky test HiveKafkaProducerTest
+ * [HIVE-27565] - Fix NPE when dropping table in HiveQueryLifeTimeHook::checkAndRollbackCTAS
+
+** New Feature
+ * [HIVE-25699] - Optimise Bootstrap incase of Failovers
+ * [HIVE-26509] - Introduce dynamic leader election in HMS
+ * [HIVE-26636] - Hyperbolic functions
+ * [HIVE-26758] - Allow use scratchdir for staging final job
+ * [HIVE-26799] - Make authorizations on custom UDFs involved in tables/view configurable.
+ * [HIVE-26804] - Cancel Compactions in initiated state
+ * [HIVE-26832] - Implement SHOW PARTITIONS for Iceberg
+ * [HIVE-26838] - Add a new event to improve cache performance in external systems that communicates with HMS.
+ * [HIVE-26908] - Provide configs to selectively enable/disable Initiator/Cleaner threads
+
+** Improvement
+ * [HIVE-11495] - Add aborted reason to transaction information.
+ * [HIVE-21599] - Wrong results for partitioned Parquet table when files contain partition column
+ * [HIVE-22628] - Add locks and transactions tables from sys db to information_schema
+ * [HIVE-22977] - Merge delta files instead of running a query in major/minor compaction
+ * [HIVE-23831] - Make auto reducer parallelism min threshold configurable.
+ * [HIVE-24286] - Render date and time with progress of Hive on Tez
+ * [HIVE-24485] - Make the slow-start behavior tunable
+ * [HIVE-25032] - Optimise PartitionManagementTask
+ * [HIVE-25366] - Reduce number of Table calls in updatePartitonColStatsInternal
+ * [HIVE-25497] - Bump ORC to 1.7.2
+ * [HIVE-25585] - Put dagId to MDC once it's available in HS2
+ * [HIVE-25723] - Found some typos
+ * [HIVE-26221] - Add histogram-based column statistics
+ * [HIVE-26243] - Add vectorized implementation of the 'ds_kll_sketch' UDAF
+ * [HIVE-26565] - Revamp Apache Hive website
+ * [HIVE-26572] - Support constant expressions in vectorization
+ * [HIVE-26578] - Enable Iceberg storage format for materialized views
+ * [HIVE-26631] - Remove unused Thrift config parameters login.timeout and exponential.backoff.slot.length
+ * [HIVE-26661] - Support partition filter for char and varchar types on Hive metastore
+ * [HIVE-26666] - Filter out compactions by id to minimise expense of db operations
+ * [HIVE-26674] - REBALANCE type compaction
+ * [HIVE-26675] - Update Iceberg from 0.14.1 to 1.0.0
+ * [HIVE-26680] - Make CMV use Direct Insert Semantics
+ * [HIVE-26685] - Improve Path name escaping / unescaping performance
+ * [HIVE-26699] - Iceberg: S3 fadvise can hurt JSON parsing significantly
+ * [HIVE-26705] - Fix Typo in hive-kudu-handler
+ * [HIVE-26734] - Iceberg: Add an option to allow positional delete files without actual row data
+ * [HIVE-26763] - Upgrade Zookeeper to latest 3.6.3 and curator to 5.2.0
+ * [HIVE-26773] - Update Avro version to 1.10.2
+ * [HIVE-26788] - Update stats of table/partition using noscan operation when stats autogather is enabled
+ * [HIVE-26789] - Add UserName in CallerContext for queries
+ * [HIVE-26793] - Create a new configuration to override "no compaction" for tables
+ * [HIVE-26794] - Explore retiring TxnHandler#connPoolMutex idle connections
+ * [HIVE-26802] - Create qtest running QB compaction queries
+ * [HIVE-26809] - Upgrade ORC to 1.8.3
+ * [HIVE-26813] - Upgrade HikariCP from 2.6.1 to 4.0.3.
+ * [HIVE-26825] - Compactor: Cleaner shouldn't fetch table details again and again for partitioned tables
+ * [HIVE-26827] - Add configs in error message to workaround predicate issue with Parquet on TIMESTAMP data type
+ * [HIVE-26843] - Filter all dependency module descriptors from shaded jars.
+ * [HIVE-26845] - Upgrade htmlunit from 2.45.0 to 2.67.0
+ * [HIVE-26868] - Iceberg: Allow IOW on empty table with Partition Evolution
+ * [HIVE-26882] - Allow transactional check of Table parameter before altering the Table
+ * [HIVE-26903] - Compactor threads should gracefully shutdown
+ * [HIVE-26912] - Publish SBOM artifacts
+ * [HIVE-26913] - Iceberg: HiveVectorizedReader::parquetRecordReader should reuse footer information
+ * [HIVE-26917] - Upgrade parquet to 1.12.3
+ * [HIVE-26927] - Iceberg: Add support for set_current_snapshotid
+ * [HIVE-26929] - Iceberg: Allow creating iceberg tables without column definition when 'metadata_location' tblproperties is set.
+ * [HIVE-26935] - Expose root cause of MetaException in RetryingHMSHandler
+ * [HIVE-26944] - FileSinkOperator shouldn't check for compactiontable for every row being processed
+ * [HIVE-26950] - Iceberg: (CTLT) Create external table like V2 table is not preserving table properties
+ * [HIVE-26952] - set the value of metastore.storage.schema.reader.impl
to org.apache.hadoop.hive.metastore.SerDeStorageSchemaReader as default
+ * [HIVE-26954] - Upgrade Avro to 1.11.1
+ * [HIVE-26974] - Iceberg: CTL from iceberg table should copy partition fields correctly
+ * [HIVE-26990] - Upgrade Iceberg to 1.1.0
+ * [HIVE-26997] - Iceberg: Vectorization gets disabled at runtime in merge-into statements
+ * [HIVE-27000] - Improve the modularity of the *ColumnStatsMerger classes
+ * [HIVE-27011] - Default value of PartitionManagementTask frequency should be set to higher value
+ * [HIVE-27013] - Iceberg: Provide an option to enable iceberg manifest caching for all catalogs
+ * [HIVE-27015] - Add support to accept client connections with X-CSRF-TOKEN as part of header in http transport mode
+ * [HIVE-27018] - Move aborted transaction cleanup outside compaction process
+ * [HIVE-27049] - Iceberg: Provide current snapshot version in show-create-table
+ * [HIVE-27050] - Iceberg: MOR: Restrict reducer extrapolation to contain number of small files being created
+ * [HIVE-27055] - hive-exec typos part 3
+ * [HIVE-27074] - Make IMetaStoreClient interface extends AutoCloseable
+ * [HIVE-27097] - Improve the retry strategy for Metastore client and server
+ * [HIVE-27120] - Warn when Authorizer V2 is configured
+ * [HIVE-27122] - Use Caffeine for caching metadata objects in Compactor threads
+ * [HIVE-27124] - Disable ANTI join transformation by default
+ * [HIVE-27137] - Remove HIVE_IN_TEST_ICEBERG flag
+ * [HIVE-27139] - Log details when hiveserver2.sh doing sanity check with the process id
+ * [HIVE-27141] - Iceberg: Add more iceberg table metadata
+ * [HIVE-27143] - Optimize HCatStorer move task
+ * [HIVE-27150] - Drop single partition can also support direct sql
+ * [HIVE-27158] - Store hive columns stats in puffin files for iceberg tables
+ * [HIVE-27165] - PART_COL_STATS metastore query not hitting the index
+ * [HIVE-27167] - Upgrade guava version in standalone-metastore and storage-api module
+ * [HIVE-27173] - Add method for Spark to be able to trigger DML events
+ * [HIVE-27177] - Iceberg: Add alter table...Convert to Iceberg command
+ * [HIVE-27184] - Add class name profiling option in ProfileServlet
+ * [HIVE-27185] - Iceberg: Cache iceberg table while loading for stats
+ * [HIVE-27186] - A persistent property store
+ * [HIVE-27192] - Forbid imports from shaded/relocated libraries in Hive modules
+ * [HIVE-27198] - Delete directly aborted transactions instead of select and loading ids
+ * [HIVE-27199] - Read TIMESTAMP WITH LOCAL TIME ZONE columns from text files using custom formats
+ * [HIVE-27208] - Iceberg: Add support for rename table
+ * [HIVE-27213] - parquet logical decimal type to INT32 is not working while compute statastics
+ * [HIVE-27225] - Speedup build by skipping SBOM generation by default
+ * [HIVE-27266] - Retrieve only partNames if not need drop data in HMSHandler.dropPartitionsAndGetLocations
+ * [HIVE-27273] - Iceberg: Upgrade iceberg to 1.2.1
+ * [HIVE-27284] - Make HMSHandler proxy pluggable
+ * [HIVE-27287] - Upgrade Commons-text to 1.10.0 to fix CVE
+ * [HIVE-27294] - Remove redundant qt_database_all.q for memory consumption reasons
+ * [HIVE-27295] - Improve docker logging in AbstractExternalDB and DatabaseRule
+ * [HIVE-27300] - Upgrade to Parquet 1.13.0
+ * [HIVE-27306] - Iceberg: Upgrade to 1.3.0 and port catalog and handler changes
+ * [HIVE-27308] - Exposing client keystore and truststore passwords in the JDBC URL can be a security concern
+ * [HIVE-27311] - Improve LDAP auth to support generic search bind authentication
+ * [HIVE-27317] - Temporary (local) session files cleanup improvements
+ * [HIVE-27325] - Iceberg: Expiring old snapshots deletes files with DirectExecutorService causing runtime delays
+ * [HIVE-27330] - Compaction entry dequeue order
+ * [HIVE-27339] - Hive Website: Add links to the new hive dockerhub
+ * [HIVE-27343] - Fix flaky tests: TestHiveMetaStoreTimeout#testResetTimeout
+ * [HIVE-27345] - Upgrade commons-dbcp2 to 2.9.0 to fix CVE
+ * [HIVE-27352] - Support both LDAP and Kerberos Auth in HS2
+ * [HIVE-27355] - Iceberg: Create table can be slow due to file listing for stats
+ * [HIVE-27358] - Add test cases for HIVE-22816 (view result caching w/ transactional tables)
+ * [HIVE-27360] - Iceberg: Don't create the redundant MANAGED location when creating table without EXTERNAL keyword
+ * [HIVE-27363] - Typo in the description of hive.tez.bucket.pruning
+ * [HIVE-27393] - Upgrade ant to 1.10.13 to fix CVE's
+ * [HIVE-27394] - Upgrade commons dependency to fix CVE
+ * [HIVE-27402] - Refactor Kafka credential handling into kafka-handler module
+ * [HIVE-27409] - Iceberg: table with EXTERNAL type can not use statistics to optimize the query
+ * [HIVE-27419] - Update PR template for dependency upgrade changes
+ * [HIVE-27444] - Limit items processed by Initiator/Cleaner
+ * [HIVE-27448] - Iceberg: Merge Iceberg column stats
+ * [HIVE-27454] - Iceberg: Allow expire snapshots by id
+ * [HIVE-27455] - Iceberg: Set COLUMN_STATS_ACCURATE after writing stats for Iceberg tables
+ * [HIVE-27474] - Deprecate registerUDF with function resources as param for in Registry
+ * [HIVE-27500] - Normalize add_partitions related api in HMS
+ * [HIVE-27504] - Automate inclusion of 3-party licenses in binary distribution
+ * [HIVE-27505] - Added batching with retry mechanism in Hive.getAllPartitionsOf API
+ * [HIVE-27513] - Iceberg: Fetch task returns wrong results for Timestamp with local time zone datatype for Iceberg tables
+ * [HIVE-27516] - Add programatically added DAG scoped properties to DAG Configuration
+
+** Test
+ * [HIVE-26392] - Move StringableMap tests into a dedicated test class
+ * [HIVE-26677] - Constrain available processors to Jetty during test runs to prevent thread exhaustion.
+ * [HIVE-26820] - Disable hybridgrace_hashjoin_2.q flaky test
+ * [HIVE-27203] - Add compaction pending Qtest for Insert-only, Partitioned, Clustered ACID, and combination Tables
+
+** Task
+ * [HIVE-26640] - Upgrade JUnit to 4.13.2 due to medium CVEs
+ * [HIVE-26681] - Upgrade dom4j: flexible XML framework for Java to safe version due to critical CVEs
+ * [HIVE-26690] - Redirect hive-site notifications to the appropriate mailing lists
+ * [HIVE-26692] - Check for the expected thrift version before compiling
+ * [HIVE-26704] - Cleaner shouldn't be blocked by global min open txnId
+ * [HIVE-26753] - Upgrade Apache Ivy to 2.5.1 due to CVE-2022-37865, CVE-2022-37866
+ * [HIVE-26762] - Remove operand pruning in HiveFilterSetOpTransposeRule
+ * [HIVE-26785] - Remove explicit protobuf-java dependency from blobstore and minikdc modules
+ * [HIVE-26790] - Upgrade to protobuf 3.21.7 / grpc 1.51.0; build on Apple M1
+ * [HIVE-26810] - Replace HiveFilterSetOpTransposeRule onMatch method with Calcite's built-in implementation
+ * [HIVE-26873] - Whiltelist iceberg configs for sql std authorization
+ * [HIVE-26914] - Upgrade postgresql to 42.5.1 due to CVE-2022-41946
+ * [HIVE-26995] - Iceberg: Enhance time travel syntax with expressions
+ * [HIVE-26999] - Upgrade MySQL Connector Java due to security CVEs
+ * [HIVE-27012] - Remove JavaEWAH dependency from HIVE to fix CVEs.
+ * [HIVE-27075] - removeDuplicateCompletedTxnComponents() task must start only if compactions are enabled.
+ * [HIVE-27100] - Remove unused data/files from repo
+ * [HIVE-27110] - Upgrade com.esotericsoftware:Kyro version to 5.2.0
+ * [HIVE-27117] - Fix compaction related flaky tests
+ * [HIVE-27131] - Remove empty module shims/scheduler
+ * [HIVE-27155] - Iceberg: Vectorize virtual columns
+ * [HIVE-27160] - Iceberg: Optimise delete (entire) data from table
+ * [HIVE-27172] - Add the HMS client connection timeout config
+ * [HIVE-27263] - Upgrade cyclonedx-maven-plugin to 2.7.6
+ * [HIVE-27310] - Upgrade jQuery to 3.5.1 in HIVE in hive/llap-server/src/main/resources/hive-webapps/llap/js/
+ * [HIVE-27341] - Disable JIRA worklog notifications for GitHub PRs
+ * [HIVE-27347] - Iceberg: count(*) should be using Iceberg basic stats if present
+ * [HIVE-27367] - Iceberg: Encode partition key values to avoid unnecessary partition keys split in DataFiles.fillFromPath
+ * [HIVE-27401] - Upgrade arrow to 12.0.0
+ * [HIVE-27416] - Vectorization: ClassCastException for string to decimal64 conversion
+ * [HIVE-27425] - Upgrade Nimbus-JOSE-JWT to 9.24+ due to CVEs coming from json-smart
+ * [HIVE-27434] - Preparing for 4.0.0-beta-1 development
+ * [HIVE-27436] - Iceberg: Alter table schema fails when partition spec contains columns not in the lower registry
+ * [HIVE-27437] - Vectorization: VectorizedOrcRecordReader does not reset VectorizedRowBatch after processing
+ * [HIVE-27450] - Upgrade snappy version to 1.1.10.1 for CVE-2023-34455
+ * [HIVE-27472] - Iceberg: Disallow creation of temporary tables
+ * [HIVE-27475] - Downgrade Kafka version to 2.5.0 to stabilise Kafka handler
+ * [HIVE-27478] - Remove re2j, SQLLine, ClassNameCompleter entries from LICENSE file
+ * [HIVE-27501] - CVE-2022-45868: Upgrade h2database version to 2.2.220
+ * [HIVE-27522] - Iceberg: Bucket partition transformation date type support
+
Release Notes - Hive - Version 3.1.0
** Sub-task
diff --git a/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java b/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
index 662ece1c907b..a94f7a4c15ec 100644
--- a/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
+++ b/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
@@ -5528,6 +5528,8 @@ public static enum ConfVars {
"hive.security.authenticator.manager,hive.security.authorization.manager," +
"hive.security.metastore.authorization.manager,hive.security.metastore.authenticator.manager," +
"hive.users.in.admin.role,hive.server2.xsrf.filter.enabled,hive.server2.csrf.filter.enabled,hive.security.authorization.enabled," +
+ "anon.policy.enforce.privileges," +
+ "anon.policy.grant.admin.users," +
"hive.distcp.privileged.doAs," +
"hive.server2.authentication.ldap.baseDN," +
"hive.server2.authentication.ldap.url," +
diff --git a/dae/pom.xml b/dae/pom.xml
new file mode 100644
index 000000000000..0c2ac9238827
--- /dev/null
+++ b/dae/pom.xml
@@ -0,0 +1,71 @@
+
+
+
+ * Performs both syntactic and semantic checks. Syntactic errors are surfaced + * via the ANTLR parser's error listener; semantic errors are produced by this + * class. + *
+ * The four semantic checks correspond to the validation requirements stated in + * Section 5.2.2 of the accompanying paper, plus one additional check for + * replace-rule literal types: + *
+ * Conflict classes (C1)--(C4): + *
Parser-level tests (as opposed to {@code BaseTest}-based end-to-end
+ * tests) so that the §4.8 grammar contract is locked in without
+ * depending on the in-process driver, embedded Derby Metastore, or the
+ * stats-annotation pipeline downstream.
+ */
+public class TestParseExtractAndInverseAudit {
+ private final ParseDriver parseDriver = new ParseDriver();
+
+ // ---------------------------------------------------------------- EXTRACT
+
+ @Test
+ public void extractFromTableProducesExtractFromTableToken() throws Exception {
+ final ASTNode tree = parseDriver.parse(
+ "EXTRACT FROM TABLE user_info COLUMN body FOR IDENTITY VALUES (42)").getTree();
+ Assert.assertTrue(
+ "EXTRACT FROM TABLE ... should produce TOK_EXTRACT_FROM_TABLE, got: "
+ + tree.toStringTree(),
+ tree.toStringTree().contains("tok_extract_from_table"));
+ }
+
+ @Test
+ public void extractFromTableCarriesColumnAndIdentityList() throws Exception {
+ final ASTNode tree = parseDriver.parse(
+ "EXTRACT FROM TABLE user_info COLUMN body FOR IDENTITY VALUES (42, 99, 'alice')")
+ .getTree();
+ final ASTNode extract = findFirst(tree, HiveParser.TOK_EXTRACT_FROM_TABLE);
+ Assert.assertNotNull("parser must produce TOK_EXTRACT_FROM_TABLE", extract);
+
+ // Three children: (tableName, columnName, TOK_AT_PL) — same shape
+ // ERASE produces, with the addition of an explicit COLUMN child
+ // between the table name and the identity-value list.
+ Assert.assertEquals(
+ "TOK_EXTRACT_FROM_TABLE must carry exactly three children "
+ + "(tableName, columnName, TOK_AT_PL)",
+ 3, extract.getChildCount());
+
+ // Identity-value list is the third child and is a TOK_AT_PL with
+ // one child per supplied value — same shape ERASE uses.
+ final ASTNode atpl = (ASTNode) extract.getChild(2);
+ Assert.assertEquals("third child must be TOK_AT_PL",
+ HiveParser.TOK_AT_PL, atpl.getType());
+ Assert.assertEquals("identity-value list size must equal the number of supplied values",
+ 3, atpl.getChildCount());
+ }
+
+ @Test
+ public void extractFromTableRequiresIdentityValueList() {
+ // Empty parentheses must fail at parse time: the pidList rule
+ // requires at least one pidValue token.
+ boolean threw = false;
+ try {
+ parseDriver.parse(
+ "EXTRACT FROM TABLE user_info COLUMN body FOR IDENTITY VALUES ()").getTree();
+ } catch (Exception expected) {
+ threw = true;
+ }
+ Assert.assertTrue("EXTRACT FROM TABLE with an empty identity list must fail to parse",
+ threw);
+ }
+
+ @Test
+ public void extractFromTableRejectsMissingColumnKeyword() {
+ // The COLUMN keyword is mandatory: removing it must produce a
+ // parse error. This pins the §4.8 contract that an EXTRACT names
+ // the bound column explicitly rather than relying on legacy
+ // table-only binding (the ERASE shape).
+ boolean threw = false;
+ try {
+ parseDriver.parse(
+ "EXTRACT FROM TABLE user_info FOR IDENTITY VALUES (42)").getTree();
+ } catch (Exception expected) {
+ threw = true;
+ }
+ Assert.assertTrue("EXTRACT FROM TABLE without COLUMN must fail to parse", threw);
+ }
+
+ // ------------------------------------------------- AUDIT BY IDENTITY VALUES
+
+ @Test
+ public void auditByIdentityProducesAuditByIdentityToken() throws Exception {
+ final ASTNode tree = parseDriver.parse("AUDIT BY IDENTITY VALUES (42)").getTree();
+ Assert.assertTrue(
+ "AUDIT BY IDENTITY VALUES (...) should produce TOK_AUDIT_BY_IDENTITY, got: "
+ + tree.toStringTree(),
+ tree.toStringTree().contains("tok_audit_by_identity"));
+ }
+
+ @Test
+ public void auditByIdentityCarriesIdentityList() throws Exception {
+ final ASTNode tree = parseDriver.parse(
+ "AUDIT BY IDENTITY VALUES (1, 42, 'alice', 99)").getTree();
+ final ASTNode audit = findFirst(tree, HiveParser.TOK_AUDIT_BY_IDENTITY);
+ Assert.assertNotNull("parser must produce TOK_AUDIT_BY_IDENTITY", audit);
+
+ // Single child: TOK_AT_PL with one entry per supplied value.
+ Assert.assertEquals("TOK_AUDIT_BY_IDENTITY must carry exactly one child (TOK_AT_PL)",
+ 1, audit.getChildCount());
+ final ASTNode atpl = (ASTNode) audit.getChild(0);
+ Assert.assertEquals("only child must be TOK_AT_PL",
+ HiveParser.TOK_AT_PL, atpl.getType());
+ Assert.assertEquals(4, atpl.getChildCount());
+ }
+
+ @Test
+ public void auditByIdentityDoesNotCollideWithAuditErasureExecutions() throws Exception {
+ // AUDIT ERASURE EXECUTIONS is a different verb in the same family
+ // and shares the AUDIT prefix. The parser must keep the two paths
+ // distinct: AUDIT BY ... produces TOK_AUDIT_BY_IDENTITY whereas
+ // AUDIT ERASURE EXECUTIONS produces TOK_AUDIT_EXEC.
+ final ASTNode byIdentity = parseDriver.parse(
+ "AUDIT BY IDENTITY VALUES (42)").getTree();
+ Assert.assertNotNull(findFirst(byIdentity, HiveParser.TOK_AUDIT_BY_IDENTITY));
+ Assert.assertNull("AUDIT BY IDENTITY must not also emit TOK_AUDIT_EXEC",
+ findFirst(byIdentity, HiveParser.TOK_AUDIT_EXEC));
+
+ final ASTNode auditExec = parseDriver.parse(
+ "AUDIT ERASURE EXECUTIONS ON TABLE user_info").getTree();
+ Assert.assertNotNull(findFirst(auditExec, HiveParser.TOK_AUDIT_EXEC));
+ Assert.assertNull("AUDIT ERASURE EXECUTIONS must not also emit TOK_AUDIT_BY_IDENTITY",
+ findFirst(auditExec, HiveParser.TOK_AUDIT_BY_IDENTITY));
+ }
+
+ // --------------------------------------------- backward compatibility guard
+
+ @Test
+ public void existingLoadErasurePolicyShapeIsUnchanged() throws Exception {
+ // Regression guard. Adding the §4.8 productions must not perturb
+ // the existing §4.4 lifecycle grammar: LOAD ERASURE POLICY still
+ // emits TOK_LEP, ACTIVATE still emits TOK_AEP, etc.
+ final ASTNode loadTree = parseDriver.parse(
+ "LOAD ERASURE POLICY player_pii FROM '/policies/player_pii.erp'").getTree();
+ Assert.assertNotNull("LOAD ERASURE POLICY must still emit TOK_LEP",
+ findFirst(loadTree, HiveParser.TOK_LEP));
+ Assert.assertNull("LOAD ERASURE POLICY must not also emit TOK_EXTRACT_FROM_TABLE",
+ findFirst(loadTree, HiveParser.TOK_EXTRACT_FROM_TABLE));
+ }
+
+ @Test
+ public void existingEraseFromTableShapeIsUnchanged() throws Exception {
+ final ASTNode eraseTree = parseDriver.parse(
+ "ERASE FROM TABLE user_info FOR IDENTITY VALUES (42)").getTree();
+ final ASTNode erase = findFirst(eraseTree, HiveParser.TOK_AT);
+ Assert.assertNotNull("ERASE FROM TABLE must still emit TOK_AT", erase);
+ // ERASE produces (tableName, TOK_AT_PL) — two children, no COLUMN.
+ Assert.assertEquals("ERASE TOK_AT shape must be (tableName, TOK_AT_PL); 2 children",
+ 2, erase.getChildCount());
+ }
+
+ // ----------------------------------------------------------------- helpers
+
+ private static ASTNode findFirst(ASTNode n, int tokenType) {
+ if (n.getType() == tokenType) {
+ return n;
+ }
+ for (int i = 0; i < n.getChildCount(); i++) {
+ final ASTNode r = findFirst((ASTNode) n.getChild(i), tokenType);
+ if (r != null) {
+ return r;
+ }
+ }
+ return null;
+ }
+}
diff --git a/parser/src/test/org/apache/hadoop/hive/ql/parse/TestParseReleaseErasureLock.java b/parser/src/test/org/apache/hadoop/hive/ql/parse/TestParseReleaseErasureLock.java
new file mode 100644
index 000000000000..17790ce619de
--- /dev/null
+++ b/parser/src/test/org/apache/hadoop/hive/ql/parse/TestParseReleaseErasureLock.java
@@ -0,0 +1,150 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ */
+package org.apache.hadoop.hive.ql.parse;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+/**
+ * AST-shape tests for {@code RELEASE ERASURE LOCK ON TABLE t [FORCE]
+ * [WITH REASON ' The grammar (in AnonParser.g and ShowStatementParser.g) treats
+ * FORCE and WITH REASON as independently optional. The semantic
+ * constraint that FORCE requires WITH REASON is enforced by
+ * {@code AnonStatementAnalyzer.analyzeReleaseErasureLock} on the AST
+ * shape exercised below: the analyzer rejects the command whenever a
+ * TOK_FORCE_RELEASE child is present but no TOK_RELEASE_REASON sibling
+ * is, exactly the shape produced by
+ * {@link #releaseForceWithoutReasonProducesForceWithoutReasonChild()}.
+ */
+public class TestParseReleaseErasureLock {
+ private final ParseDriver parseDriver = new ParseDriver();
+
+ @Test
+ public void loadErasurePolicyProducesLepToken() throws Exception {
+ final ASTNode tree = parseDriver.parse(
+ "LOAD ERASURE POLICY player_pii FROM '/policies/player_pii.erp'").getTree();
+ Assert.assertTrue("LOAD ERASURE POLICY ... FROM '...' should produce TOK_LEP, got: "
+ + tree.toStringTree(),
+ tree.toStringTree().contains("tok_lep"));
+ }
+
+ @Test
+ public void showErasureLocksProducesGlobalToken() throws Exception {
+ final ASTNode tree = parseDriver.parse("SHOW ERASURE LOCKS").getTree();
+ Assert.assertTrue("SHOW ERASURE LOCKS should produce TOK_SHOW_ERASURE_LOCKS, got: "
+ + tree.toStringTree(),
+ tree.toStringTree().contains("tok_show_erasure_locks"));
+ }
+
+ @Test
+ public void softReleaseWithoutReason() throws Exception {
+ final ASTNode tree = parseDriver.parse(
+ "RELEASE ERASURE LOCK ON TABLE user_info").getTree();
+ final ASTNode rel = findReleaseRoot(tree);
+ Assert.assertNotNull("parser must produce TOK_RELEASE_ERASURE_LOCK", rel);
+ Assert.assertFalse("soft release without WITH REASON must not carry TOK_FORCE_RELEASE",
+ hasChild(rel, HiveParser.TOK_FORCE_RELEASE));
+ Assert.assertFalse("soft release without WITH REASON must not carry TOK_RELEASE_REASON",
+ hasChild(rel, HiveParser.TOK_RELEASE_REASON));
+ }
+
+ @Test
+ public void softReleaseWithReason() throws Exception {
+ final ASTNode tree = parseDriver.parse(
+ "RELEASE ERASURE LOCK ON TABLE user_info WITH REASON 'ops ticket 4711'")
+ .getTree();
+ final ASTNode rel = findReleaseRoot(tree);
+ Assert.assertNotNull(rel);
+ Assert.assertFalse(hasChild(rel, HiveParser.TOK_FORCE_RELEASE));
+ final ASTNode reason = findChild(rel, HiveParser.TOK_RELEASE_REASON);
+ Assert.assertNotNull("WITH REASON must produce TOK_RELEASE_REASON", reason);
+ Assert.assertEquals("'ops ticket 4711'", reason.getChild(0).getText());
+ }
+
+ @Test
+ public void forceReleaseWithReason() throws Exception {
+ final ASTNode tree = parseDriver.parse(
+ "RELEASE ERASURE LOCK ON TABLE user_info FORCE WITH REASON 'cluster restart'")
+ .getTree();
+ final ASTNode rel = findReleaseRoot(tree);
+ Assert.assertNotNull(rel);
+ Assert.assertTrue("FORCE must produce TOK_FORCE_RELEASE",
+ hasChild(rel, HiveParser.TOK_FORCE_RELEASE));
+ final ASTNode reason = findChild(rel, HiveParser.TOK_RELEASE_REASON);
+ Assert.assertNotNull("WITH REASON must produce TOK_RELEASE_REASON", reason);
+ Assert.assertEquals("'cluster restart'", reason.getChild(0).getText());
+ }
+
+ /**
+ * The parser accepts {@code FORCE} without {@code WITH REASON}: both
+ * tokens are independently optional at the grammar level. The AST
+ * carries TOK_FORCE_RELEASE without a sibling TOK_RELEASE_REASON,
+ * which is the exact shape the analyzer's force-vs-reason check
+ * refuses (see AnonStatementAnalyzer.analyzeReleaseErasureLock).
+ *
+ * This test fixes the contract between parser and analyzer: if the
+ * AST shape produced here changes, the analyzer's rejection logic
+ * needs to be revisited at the same time.
+ */
+ @Test
+ public void releaseForceWithoutReasonProducesForceWithoutReasonChild() throws Exception {
+ final ASTNode tree = parseDriver.parse(
+ "RELEASE ERASURE LOCK ON TABLE user_info FORCE").getTree();
+ final ASTNode rel = findReleaseRoot(tree);
+ Assert.assertNotNull("parser must accept FORCE without WITH REASON at the grammar "
+ + "level (analyzer rejects later)", rel);
+ Assert.assertTrue("FORCE must produce TOK_FORCE_RELEASE",
+ hasChild(rel, HiveParser.TOK_FORCE_RELEASE));
+ Assert.assertFalse("FORCE without WITH REASON must NOT produce TOK_RELEASE_REASON; "
+ + "the analyzer detects this missing-child shape and refuses the command",
+ hasChild(rel, HiveParser.TOK_RELEASE_REASON));
+ }
+
+ // -------------------------------------------------------------------------
+ // Helpers
+ // -------------------------------------------------------------------------
+
+ private static ASTNode findReleaseRoot(ASTNode n) {
+ if (n.getType() == HiveParser.TOK_RELEASE_ERASURE_LOCK) {
+ return n;
+ }
+ for (int i = 0; i < n.getChildCount(); i++) {
+ final ASTNode r = findReleaseRoot((ASTNode) n.getChild(i));
+ if (r != null) {
+ return r;
+ }
+ }
+ return null;
+ }
+
+ private static boolean hasChild(ASTNode parent, int tokenType) {
+ return findChild(parent, tokenType) != null;
+ }
+
+ private static ASTNode findChild(ASTNode parent, int tokenType) {
+ for (int i = 0; i < parent.getChildCount(); i++) {
+ final ASTNode c = (ASTNode) parent.getChild(i);
+ if (c.getType() == tokenType) {
+ return c;
+ }
+ }
+ return null;
+ }
+}
diff --git a/pom.xml b/pom.xml
index 4481607165db..f4fee45bd4fe 100644
--- a/pom.xml
+++ b/pom.xml
@@ -61,6 +61,7 @@
newBuilder().
+ */
+ public Address() {}
+
+ /**
+ * All-args constructor.
+ * @param country The new value for country
+ * @param street The new value for street
+ */
+ public Address(java.lang.String country, java.lang.String street) {
+ this.country = country;
+ this.street = street;
+ }
+
+ @Override
+ public org.apache.avro.specific.SpecificData getSpecificData() { return MODEL$; }
+
+ @Override
+ public org.apache.avro.Schema getSchema() { return SCHEMA$; }
+
+ // Used by DatumWriter. Applications should not call.
+ @Override
+ public java.lang.Object get(int field$) {
+ switch (field$) {
+ case 0: return country;
+ case 1: return street;
+ default: throw new IndexOutOfBoundsException("Invalid index: " + field$);
+ }
+ }
+
+ // Used by DatumReader. Applications should not call.
+ @Override
+ @SuppressWarnings(value="unchecked")
+ public void put(int field$, java.lang.Object value$) {
+ switch (field$) {
+ case 0: country = value$ != null ? value$.toString() : null; break;
+ case 1: street = value$ != null ? value$.toString() : null; break;
+ default: throw new IndexOutOfBoundsException("Invalid index: " + field$);
+ }
+ }
+
+ /**
+ * Gets the value of the 'country' field.
+ * @return The value of the 'country' field.
+ */
+ public java.lang.String getCountry() {
+ return country;
+ }
+
+
+ /**
+ * Sets the value of the 'country' field.
+ * @param value the value to set.
+ */
+ public void setCountry(java.lang.String value) {
+ this.country = value;
+ }
+
+ /**
+ * Gets the value of the 'street' field.
+ * @return The value of the 'street' field.
+ */
+ public java.lang.String getStreet() {
+ return street;
+ }
+
+
+ /**
+ * Sets the value of the 'street' field.
+ * @param value the value to set.
+ */
+ public void setStreet(java.lang.String value) {
+ this.street = value;
+ }
+
+ /**
+ * Creates a new Address RecordBuilder.
+ * @return A new Address RecordBuilder
+ */
+ public static org.apache.hadoop.hive.ql.anon.avro.Address.Builder newBuilder() {
+ return new org.apache.hadoop.hive.ql.anon.avro.Address.Builder();
+ }
+
+ /**
+ * Creates a new Address RecordBuilder by copying an existing Builder.
+ * @param other The existing builder to copy.
+ * @return A new Address RecordBuilder
+ */
+ public static org.apache.hadoop.hive.ql.anon.avro.Address.Builder newBuilder(org.apache.hadoop.hive.ql.anon.avro.Address.Builder other) {
+ if (other == null) {
+ return new org.apache.hadoop.hive.ql.anon.avro.Address.Builder();
+ } else {
+ return new org.apache.hadoop.hive.ql.anon.avro.Address.Builder(other);
+ }
+ }
+
+ /**
+ * Creates a new Address RecordBuilder by copying an existing Address instance.
+ * @param other The existing instance to copy.
+ * @return A new Address RecordBuilder
+ */
+ public static org.apache.hadoop.hive.ql.anon.avro.Address.Builder newBuilder(org.apache.hadoop.hive.ql.anon.avro.Address other) {
+ if (other == null) {
+ return new org.apache.hadoop.hive.ql.anon.avro.Address.Builder();
+ } else {
+ return new org.apache.hadoop.hive.ql.anon.avro.Address.Builder(other);
+ }
+ }
+
+ /**
+ * RecordBuilder for Address instances.
+ */
+ @org.apache.avro.specific.AvroGenerated
+ public static class Builder extends org.apache.avro.specific.SpecificRecordBuilderBase
+ implements org.apache.avro.data.RecordBuilder {
+
+ private java.lang.String country;
+ private java.lang.String street;
+
+ /** Creates a new Builder */
+ private Builder() {
+ super(SCHEMA$, MODEL$);
+ }
+
+ /**
+ * Creates a Builder by copying an existing Builder.
+ * @param other The existing Builder to copy.
+ */
+ private Builder(org.apache.hadoop.hive.ql.anon.avro.Address.Builder other) {
+ super(other);
+ if (isValidValue(fields()[0], other.country)) {
+ this.country = data().deepCopy(fields()[0].schema(), other.country);
+ fieldSetFlags()[0] = other.fieldSetFlags()[0];
+ }
+ if (isValidValue(fields()[1], other.street)) {
+ this.street = data().deepCopy(fields()[1].schema(), other.street);
+ fieldSetFlags()[1] = other.fieldSetFlags()[1];
+ }
+ }
+
+ /**
+ * Creates a Builder by copying an existing Address instance
+ * @param other The existing instance to copy.
+ */
+ private Builder(org.apache.hadoop.hive.ql.anon.avro.Address other) {
+ super(SCHEMA$, MODEL$);
+ if (isValidValue(fields()[0], other.country)) {
+ this.country = data().deepCopy(fields()[0].schema(), other.country);
+ fieldSetFlags()[0] = true;
+ }
+ if (isValidValue(fields()[1], other.street)) {
+ this.street = data().deepCopy(fields()[1].schema(), other.street);
+ fieldSetFlags()[1] = true;
+ }
+ }
+
+ /**
+ * Gets the value of the 'country' field.
+ * @return The value.
+ */
+ public java.lang.String getCountry() {
+ return country;
+ }
+
+
+ /**
+ * Sets the value of the 'country' field.
+ * @param value The value of 'country'.
+ * @return This builder.
+ */
+ public org.apache.hadoop.hive.ql.anon.avro.Address.Builder setCountry(java.lang.String value) {
+ validate(fields()[0], value);
+ this.country = value;
+ fieldSetFlags()[0] = true;
+ return this;
+ }
+
+ /**
+ * Checks whether the 'country' field has been set.
+ * @return True if the 'country' field has been set, false otherwise.
+ */
+ public boolean hasCountry() {
+ return fieldSetFlags()[0];
+ }
+
+
+ /**
+ * Clears the value of the 'country' field.
+ * @return This builder.
+ */
+ public org.apache.hadoop.hive.ql.anon.avro.Address.Builder clearCountry() {
+ country = null;
+ fieldSetFlags()[0] = false;
+ return this;
+ }
+
+ /**
+ * Gets the value of the 'street' field.
+ * @return The value.
+ */
+ public java.lang.String getStreet() {
+ return street;
+ }
+
+
+ /**
+ * Sets the value of the 'street' field.
+ * @param value The value of 'street'.
+ * @return This builder.
+ */
+ public org.apache.hadoop.hive.ql.anon.avro.Address.Builder setStreet(java.lang.String value) {
+ validate(fields()[1], value);
+ this.street = value;
+ fieldSetFlags()[1] = true;
+ return this;
+ }
+
+ /**
+ * Checks whether the 'street' field has been set.
+ * @return True if the 'street' field has been set, false otherwise.
+ */
+ public boolean hasStreet() {
+ return fieldSetFlags()[1];
+ }
+
+
+ /**
+ * Clears the value of the 'street' field.
+ * @return This builder.
+ */
+ public org.apache.hadoop.hive.ql.anon.avro.Address.Builder clearStreet() {
+ street = null;
+ fieldSetFlags()[1] = false;
+ return this;
+ }
+
+ @Override
+ @SuppressWarnings("unchecked")
+ public Address build() {
+ try {
+ Address record = new Address();
+ record.country = fieldSetFlags()[0] ? this.country : (java.lang.String) defaultValue(fields()[0]);
+ record.street = fieldSetFlags()[1] ? this.street : (java.lang.String) defaultValue(fields()[1]);
+ return record;
+ } catch (org.apache.avro.AvroMissingFieldException e) {
+ throw e;
+ } catch (java.lang.Exception e) {
+ throw new org.apache.avro.AvroRuntimeException(e);
+ }
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ private static final org.apache.avro.io.DatumWriter
+ WRITER$ = (org.apache.avro.io.DatumWriter)MODEL$.createDatumWriter(SCHEMA$);
+
+ @Override public void writeExternal(java.io.ObjectOutput out)
+ throws java.io.IOException {
+ WRITER$.write(this, SpecificData.getEncoder(out));
+ }
+
+ @SuppressWarnings("unchecked")
+ private static final org.apache.avro.io.DatumReader
+ READER$ = (org.apache.avro.io.DatumReader)MODEL$.createDatumReader(SCHEMA$);
+
+ @Override public void readExternal(java.io.ObjectInput in)
+ throws java.io.IOException {
+ READER$.read(this, SpecificData.getDecoder(in));
+ }
+
+ @Override protected boolean hasCustomCoders() { return true; }
+
+ @Override public void customEncode(org.apache.avro.io.Encoder out)
+ throws java.io.IOException
+ {
+ out.writeString(this.country);
+
+ out.writeString(this.street);
+
+ }
+
+ @Override public void customDecode(org.apache.avro.io.ResolvingDecoder in)
+ throws java.io.IOException
+ {
+ org.apache.avro.Schema.Field[] fieldOrder = in.readFieldOrderIfDiff();
+ if (fieldOrder == null) {
+ this.country = in.readString();
+
+ this.street = in.readString();
+
+ } else {
+ for (int i = 0; i < 2; i++) {
+ switch (fieldOrder[i].pos()) {
+ case 0:
+ this.country = in.readString();
+ break;
+
+ case 1:
+ this.street = in.readString();
+ break;
+
+ default:
+ throw new java.io.IOException("Corrupt ResolvingDecoder.");
+ }
+ }
+ }
+ }
+}
+
+
+
+
+
+
+
+
+
+
diff --git a/ql/src/gen/avro/gen-java/org/apache/hadoop/hive/ql/anon/avro/BankDetails.java b/ql/src/gen/avro/gen-java/org/apache/hadoop/hive/ql/anon/avro/BankDetails.java
new file mode 100644
index 000000000000..37daf19936a5
--- /dev/null
+++ b/ql/src/gen/avro/gen-java/org/apache/hadoop/hive/ql/anon/avro/BankDetails.java
@@ -0,0 +1,479 @@
+/**
+ * Autogenerated by Avro
+ *
+ * DO NOT EDIT DIRECTLY
+ */
+package org.apache.hadoop.hive.ql.anon.avro;
+
+import org.apache.avro.generic.GenericArray;
+import org.apache.avro.specific.SpecificData;
+import org.apache.avro.util.Utf8;
+import org.apache.avro.message.BinaryMessageEncoder;
+import org.apache.avro.message.BinaryMessageDecoder;
+import org.apache.avro.message.SchemaStore;
+
+@org.apache.avro.specific.AvroGenerated
+public class BankDetails extends org.apache.avro.specific.SpecificRecordBase implements org.apache.avro.specific.SpecificRecord {
+ private static final long serialVersionUID = -4134304727053662259L;
+
+
+ public static final org.apache.avro.Schema SCHEMA$ = new org.apache.avro.Schema.Parser().parse("{\"type\":\"record\",\"name\":\"BankDetails\",\"namespace\":\"org.apache.hadoop.hive.ql.anon.avro\",\"fields\":[{\"name\":\"bankName\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"}},{\"name\":\"cardNum\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"}},{\"name\":\"pinCode\",\"type\":{\"type\":\"string\",\"avro.java.string\":\"String\"}}]}");
+ public static org.apache.avro.Schema getClassSchema() { return SCHEMA$; }
+
+ private static final SpecificData MODEL$ = new SpecificData();
+
+ private static final BinaryMessageEncodernewBuilder().
+ */
+ public BankDetails() {}
+
+ /**
+ * All-args constructor.
+ * @param bankName The new value for bankName
+ * @param cardNum The new value for cardNum
+ * @param pinCode The new value for pinCode
+ */
+ public BankDetails(java.lang.String bankName, java.lang.String cardNum, java.lang.String pinCode) {
+ this.bankName = bankName;
+ this.cardNum = cardNum;
+ this.pinCode = pinCode;
+ }
+
+ @Override
+ public org.apache.avro.specific.SpecificData getSpecificData() { return MODEL$; }
+
+ @Override
+ public org.apache.avro.Schema getSchema() { return SCHEMA$; }
+
+ // Used by DatumWriter. Applications should not call.
+ @Override
+ public java.lang.Object get(int field$) {
+ switch (field$) {
+ case 0: return bankName;
+ case 1: return cardNum;
+ case 2: return pinCode;
+ default: throw new IndexOutOfBoundsException("Invalid index: " + field$);
+ }
+ }
+
+ // Used by DatumReader. Applications should not call.
+ @Override
+ @SuppressWarnings(value="unchecked")
+ public void put(int field$, java.lang.Object value$) {
+ switch (field$) {
+ case 0: bankName = value$ != null ? value$.toString() : null; break;
+ case 1: cardNum = value$ != null ? value$.toString() : null; break;
+ case 2: pinCode = value$ != null ? value$.toString() : null; break;
+ default: throw new IndexOutOfBoundsException("Invalid index: " + field$);
+ }
+ }
+
+ /**
+ * Gets the value of the 'bankName' field.
+ * @return The value of the 'bankName' field.
+ */
+ public java.lang.String getBankName() {
+ return bankName;
+ }
+
+
+ /**
+ * Sets the value of the 'bankName' field.
+ * @param value the value to set.
+ */
+ public void setBankName(java.lang.String value) {
+ this.bankName = value;
+ }
+
+ /**
+ * Gets the value of the 'cardNum' field.
+ * @return The value of the 'cardNum' field.
+ */
+ public java.lang.String getCardNum() {
+ return cardNum;
+ }
+
+
+ /**
+ * Sets the value of the 'cardNum' field.
+ * @param value the value to set.
+ */
+ public void setCardNum(java.lang.String value) {
+ this.cardNum = value;
+ }
+
+ /**
+ * Gets the value of the 'pinCode' field.
+ * @return The value of the 'pinCode' field.
+ */
+ public java.lang.String getPinCode() {
+ return pinCode;
+ }
+
+
+ /**
+ * Sets the value of the 'pinCode' field.
+ * @param value the value to set.
+ */
+ public void setPinCode(java.lang.String value) {
+ this.pinCode = value;
+ }
+
+ /**
+ * Creates a new BankDetails RecordBuilder.
+ * @return A new BankDetails RecordBuilder
+ */
+ public static org.apache.hadoop.hive.ql.anon.avro.BankDetails.Builder newBuilder() {
+ return new org.apache.hadoop.hive.ql.anon.avro.BankDetails.Builder();
+ }
+
+ /**
+ * Creates a new BankDetails RecordBuilder by copying an existing Builder.
+ * @param other The existing builder to copy.
+ * @return A new BankDetails RecordBuilder
+ */
+ public static org.apache.hadoop.hive.ql.anon.avro.BankDetails.Builder newBuilder(org.apache.hadoop.hive.ql.anon.avro.BankDetails.Builder other) {
+ if (other == null) {
+ return new org.apache.hadoop.hive.ql.anon.avro.BankDetails.Builder();
+ } else {
+ return new org.apache.hadoop.hive.ql.anon.avro.BankDetails.Builder(other);
+ }
+ }
+
+ /**
+ * Creates a new BankDetails RecordBuilder by copying an existing BankDetails instance.
+ * @param other The existing instance to copy.
+ * @return A new BankDetails RecordBuilder
+ */
+ public static org.apache.hadoop.hive.ql.anon.avro.BankDetails.Builder newBuilder(org.apache.hadoop.hive.ql.anon.avro.BankDetails other) {
+ if (other == null) {
+ return new org.apache.hadoop.hive.ql.anon.avro.BankDetails.Builder();
+ } else {
+ return new org.apache.hadoop.hive.ql.anon.avro.BankDetails.Builder(other);
+ }
+ }
+
+ /**
+ * RecordBuilder for BankDetails instances.
+ */
+ @org.apache.avro.specific.AvroGenerated
+ public static class Builder extends org.apache.avro.specific.SpecificRecordBuilderBasenewBuilder().
+ */
+ public Msg1() {}
+
+ /**
+ * All-args constructor.
+ * @param txnId The new value for txnId
+ * @param value1 The new value for value1
+ * @param value2 The new value for value2
+ * @param value3 The new value for value3
+ */
+ public Msg1(java.lang.Long txnId, java.lang.String value1, java.lang.String value2, java.lang.String value3) {
+ this.txnId = txnId;
+ this.value1 = value1;
+ this.value2 = value2;
+ this.value3 = value3;
+ }
+
+ @Override
+ public org.apache.avro.specific.SpecificData getSpecificData() { return MODEL$; }
+
+ @Override
+ public org.apache.avro.Schema getSchema() { return SCHEMA$; }
+
+ // Used by DatumWriter. Applications should not call.
+ @Override
+ public java.lang.Object get(int field$) {
+ switch (field$) {
+ case 0: return txnId;
+ case 1: return value1;
+ case 2: return value2;
+ case 3: return value3;
+ default: throw new IndexOutOfBoundsException("Invalid index: " + field$);
+ }
+ }
+
+ // Used by DatumReader. Applications should not call.
+ @Override
+ @SuppressWarnings(value="unchecked")
+ public void put(int field$, java.lang.Object value$) {
+ switch (field$) {
+ case 0: txnId = (java.lang.Long)value$; break;
+ case 1: value1 = value$ != null ? value$.toString() : null; break;
+ case 2: value2 = value$ != null ? value$.toString() : null; break;
+ case 3: value3 = value$ != null ? value$.toString() : null; break;
+ default: throw new IndexOutOfBoundsException("Invalid index: " + field$);
+ }
+ }
+
+ /**
+ * Gets the value of the 'txnId' field.
+ * @return The value of the 'txnId' field.
+ */
+ public long getTxnId() {
+ return txnId;
+ }
+
+
+ /**
+ * Sets the value of the 'txnId' field.
+ * @param value the value to set.
+ */
+ public void setTxnId(long value) {
+ this.txnId = value;
+ }
+
+ /**
+ * Gets the value of the 'value1' field.
+ * @return The value of the 'value1' field.
+ */
+ public java.lang.String getValue1() {
+ return value1;
+ }
+
+
+ /**
+ * Sets the value of the 'value1' field.
+ * @param value the value to set.
+ */
+ public void setValue1(java.lang.String value) {
+ this.value1 = value;
+ }
+
+ /**
+ * Gets the value of the 'value2' field.
+ * @return The value of the 'value2' field.
+ */
+ public java.lang.String getValue2() {
+ return value2;
+ }
+
+
+ /**
+ * Sets the value of the 'value2' field.
+ * @param value the value to set.
+ */
+ public void setValue2(java.lang.String value) {
+ this.value2 = value;
+ }
+
+ /**
+ * Gets the value of the 'value3' field.
+ * @return The value of the 'value3' field.
+ */
+ public java.lang.String getValue3() {
+ return value3;
+ }
+
+
+ /**
+ * Sets the value of the 'value3' field.
+ * @param value the value to set.
+ */
+ public void setValue3(java.lang.String value) {
+ this.value3 = value;
+ }
+
+ /**
+ * Creates a new Msg1 RecordBuilder.
+ * @return A new Msg1 RecordBuilder
+ */
+ public static org.apache.hadoop.hive.ql.anon.avro.Msg1.Builder newBuilder() {
+ return new org.apache.hadoop.hive.ql.anon.avro.Msg1.Builder();
+ }
+
+ /**
+ * Creates a new Msg1 RecordBuilder by copying an existing Builder.
+ * @param other The existing builder to copy.
+ * @return A new Msg1 RecordBuilder
+ */
+ public static org.apache.hadoop.hive.ql.anon.avro.Msg1.Builder newBuilder(org.apache.hadoop.hive.ql.anon.avro.Msg1.Builder other) {
+ if (other == null) {
+ return new org.apache.hadoop.hive.ql.anon.avro.Msg1.Builder();
+ } else {
+ return new org.apache.hadoop.hive.ql.anon.avro.Msg1.Builder(other);
+ }
+ }
+
+ /**
+ * Creates a new Msg1 RecordBuilder by copying an existing Msg1 instance.
+ * @param other The existing instance to copy.
+ * @return A new Msg1 RecordBuilder
+ */
+ public static org.apache.hadoop.hive.ql.anon.avro.Msg1.Builder newBuilder(org.apache.hadoop.hive.ql.anon.avro.Msg1 other) {
+ if (other == null) {
+ return new org.apache.hadoop.hive.ql.anon.avro.Msg1.Builder();
+ } else {
+ return new org.apache.hadoop.hive.ql.anon.avro.Msg1.Builder(other);
+ }
+ }
+
+ /**
+ * RecordBuilder for Msg1 instances.
+ */
+ @org.apache.avro.specific.AvroGenerated
+ public static class Builder extends org.apache.avro.specific.SpecificRecordBuilderBasenewBuilder().
+ */
+ public Msg2() {}
+
+ /**
+ * All-args constructor.
+ * @param userId The new value for userId
+ * @param value1 The new value for value1
+ * @param value2 The new value for value2
+ * @param value3 The new value for value3
+ */
+ public Msg2(java.lang.Integer userId, java.lang.String value1, java.lang.String value2, java.lang.String value3) {
+ this.userId = userId;
+ this.value1 = value1;
+ this.value2 = value2;
+ this.value3 = value3;
+ }
+
+ @Override
+ public org.apache.avro.specific.SpecificData getSpecificData() { return MODEL$; }
+
+ @Override
+ public org.apache.avro.Schema getSchema() { return SCHEMA$; }
+
+ // Used by DatumWriter. Applications should not call.
+ @Override
+ public java.lang.Object get(int field$) {
+ switch (field$) {
+ case 0: return userId;
+ case 1: return value1;
+ case 2: return value2;
+ case 3: return value3;
+ default: throw new IndexOutOfBoundsException("Invalid index: " + field$);
+ }
+ }
+
+ // Used by DatumReader. Applications should not call.
+ @Override
+ @SuppressWarnings(value="unchecked")
+ public void put(int field$, java.lang.Object value$) {
+ switch (field$) {
+ case 0: userId = (java.lang.Integer)value$; break;
+ case 1: value1 = value$ != null ? value$.toString() : null; break;
+ case 2: value2 = value$ != null ? value$.toString() : null; break;
+ case 3: value3 = value$ != null ? value$.toString() : null; break;
+ default: throw new IndexOutOfBoundsException("Invalid index: " + field$);
+ }
+ }
+
+ /**
+ * Gets the value of the 'userId' field.
+ * @return The value of the 'userId' field.
+ */
+ public int getUserId() {
+ return userId;
+ }
+
+
+ /**
+ * Sets the value of the 'userId' field.
+ * @param value the value to set.
+ */
+ public void setUserId(int value) {
+ this.userId = value;
+ }
+
+ /**
+ * Gets the value of the 'value1' field.
+ * @return The value of the 'value1' field.
+ */
+ public java.lang.String getValue1() {
+ return value1;
+ }
+
+
+ /**
+ * Sets the value of the 'value1' field.
+ * @param value the value to set.
+ */
+ public void setValue1(java.lang.String value) {
+ this.value1 = value;
+ }
+
+ /**
+ * Gets the value of the 'value2' field.
+ * @return The value of the 'value2' field.
+ */
+ public java.lang.String getValue2() {
+ return value2;
+ }
+
+
+ /**
+ * Sets the value of the 'value2' field.
+ * @param value the value to set.
+ */
+ public void setValue2(java.lang.String value) {
+ this.value2 = value;
+ }
+
+ /**
+ * Gets the value of the 'value3' field.
+ * @return The value of the 'value3' field.
+ */
+ public java.lang.String getValue3() {
+ return value3;
+ }
+
+
+ /**
+ * Sets the value of the 'value3' field.
+ * @param value the value to set.
+ */
+ public void setValue3(java.lang.String value) {
+ this.value3 = value;
+ }
+
+ /**
+ * Creates a new Msg2 RecordBuilder.
+ * @return A new Msg2 RecordBuilder
+ */
+ public static org.apache.hadoop.hive.ql.anon.avro.Msg2.Builder newBuilder() {
+ return new org.apache.hadoop.hive.ql.anon.avro.Msg2.Builder();
+ }
+
+ /**
+ * Creates a new Msg2 RecordBuilder by copying an existing Builder.
+ * @param other The existing builder to copy.
+ * @return A new Msg2 RecordBuilder
+ */
+ public static org.apache.hadoop.hive.ql.anon.avro.Msg2.Builder newBuilder(org.apache.hadoop.hive.ql.anon.avro.Msg2.Builder other) {
+ if (other == null) {
+ return new org.apache.hadoop.hive.ql.anon.avro.Msg2.Builder();
+ } else {
+ return new org.apache.hadoop.hive.ql.anon.avro.Msg2.Builder(other);
+ }
+ }
+
+ /**
+ * Creates a new Msg2 RecordBuilder by copying an existing Msg2 instance.
+ * @param other The existing instance to copy.
+ * @return A new Msg2 RecordBuilder
+ */
+ public static org.apache.hadoop.hive.ql.anon.avro.Msg2.Builder newBuilder(org.apache.hadoop.hive.ql.anon.avro.Msg2 other) {
+ if (other == null) {
+ return new org.apache.hadoop.hive.ql.anon.avro.Msg2.Builder();
+ } else {
+ return new org.apache.hadoop.hive.ql.anon.avro.Msg2.Builder(other);
+ }
+ }
+
+ /**
+ * RecordBuilder for Msg2 instances.
+ */
+ @org.apache.avro.specific.AvroGenerated
+ public static class Builder extends org.apache.avro.specific.SpecificRecordBuilderBasenewBuilder().
+ */
+ public Msg3() {}
+
+ /**
+ * All-args constructor.
+ * @param userId The new value for userId
+ * @param firstName The new value for firstName
+ * @param lastName The new value for lastName
+ * @param address The new value for address
+ * @param city The new value for city
+ * @param country The new value for country
+ * @param email The new value for email
+ * @param telephone The new value for telephone
+ * @param birthDate The new value for birthDate
+ * @param value The new value for value
+ * @param ipList The new value for ipList
+ * @param bankDetails The new value for bankDetails
+ */
+ public Msg3(java.lang.Integer userId, java.lang.String firstName, java.lang.String lastName, java.lang.String address, java.lang.String city, java.lang.String country, java.lang.String email, java.lang.String telephone, java.lang.String birthDate, java.lang.String value, java.util.ListnewBuilder().
+ */
+ public Msg4() {}
+
+ /**
+ * All-args constructor.
+ * @param userId The new value for userId
+ * @param addressBookList The new value for addressBookList
+ */
+ public Msg4(java.lang.Integer userId, java.util.Listrequired int64 txnId = 1;
+ * @return Whether the txnId field is set.
+ */
+ boolean hasTxnId();
+ /**
+ * required int64 txnId = 1;
+ * @return The txnId.
+ */
+ long getTxnId();
+
+ /**
+ * required string value1 = 2;
+ * @return Whether the value1 field is set.
+ */
+ boolean hasValue1();
+ /**
+ * required string value1 = 2;
+ * @return The value1.
+ */
+ java.lang.String getValue1();
+ /**
+ * required string value1 = 2;
+ * @return The bytes for value1.
+ */
+ com.google.protobuf.ByteString
+ getValue1Bytes();
+
+ /**
+ * required string value2 = 3;
+ * @return Whether the value2 field is set.
+ */
+ boolean hasValue2();
+ /**
+ * required string value2 = 3;
+ * @return The value2.
+ */
+ java.lang.String getValue2();
+ /**
+ * required string value2 = 3;
+ * @return The bytes for value2.
+ */
+ com.google.protobuf.ByteString
+ getValue2Bytes();
+
+ /**
+ * required string value3 = 4;
+ * @return Whether the value3 field is set.
+ */
+ boolean hasValue3();
+ /**
+ * required string value3 = 4;
+ * @return The value3.
+ */
+ java.lang.String getValue3();
+ /**
+ * required string value3 = 4;
+ * @return The bytes for value3.
+ */
+ com.google.protobuf.ByteString
+ getValue3Bytes();
+ }
+ /**
+ * Protobuf type {@code Msg1}
+ */
+ public static final class Msg1 extends
+ com.google.protobuf.GeneratedMessageV3 implements
+ // @@protoc_insertion_point(message_implements:Msg1)
+ Msg1OrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use Msg1.newBuilder() to construct.
+ private Msg1(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+ private Msg1() {
+ value1_ = "";
+ value2_ = "";
+ value3_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(
+ UnusedPrivateParameter unused) {
+ return new Msg1();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor
+ getDescriptor() {
+ return org.apache.hadoop.hive.ql.anon.proto.TestMessages.internal_static_Msg1_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return org.apache.hadoop.hive.ql.anon.proto.TestMessages.internal_static_Msg1_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1.class, org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1.Builder.class);
+ }
+
+ private int bitField0_;
+ public static final int TXNID_FIELD_NUMBER = 1;
+ private long txnId_ = 0L;
+ /**
+ * required int64 txnId = 1;
+ * @return Whether the txnId field is set.
+ */
+ @java.lang.Override
+ public boolean hasTxnId() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * required int64 txnId = 1;
+ * @return The txnId.
+ */
+ @java.lang.Override
+ public long getTxnId() {
+ return txnId_;
+ }
+
+ public static final int VALUE1_FIELD_NUMBER = 2;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object value1_ = "";
+ /**
+ * required string value1 = 2;
+ * @return Whether the value1 field is set.
+ */
+ @java.lang.Override
+ public boolean hasValue1() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * required string value1 = 2;
+ * @return The value1.
+ */
+ @java.lang.Override
+ public java.lang.String getValue1() {
+ java.lang.Object ref = value1_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ value1_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string value1 = 2;
+ * @return The bytes for value1.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getValue1Bytes() {
+ java.lang.Object ref = value1_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ value1_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int VALUE2_FIELD_NUMBER = 3;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object value2_ = "";
+ /**
+ * required string value2 = 3;
+ * @return Whether the value2 field is set.
+ */
+ @java.lang.Override
+ public boolean hasValue2() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * required string value2 = 3;
+ * @return The value2.
+ */
+ @java.lang.Override
+ public java.lang.String getValue2() {
+ java.lang.Object ref = value2_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ value2_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string value2 = 3;
+ * @return The bytes for value2.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getValue2Bytes() {
+ java.lang.Object ref = value2_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ value2_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int VALUE3_FIELD_NUMBER = 4;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object value3_ = "";
+ /**
+ * required string value3 = 4;
+ * @return Whether the value3 field is set.
+ */
+ @java.lang.Override
+ public boolean hasValue3() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ * required string value3 = 4;
+ * @return The value3.
+ */
+ @java.lang.Override
+ public java.lang.String getValue3() {
+ java.lang.Object ref = value3_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ value3_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string value3 = 4;
+ * @return The bytes for value3.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getValue3Bytes() {
+ java.lang.Object ref = value3_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ value3_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ if (!hasTxnId()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasValue1()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasValue2()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasValue3()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output)
+ throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeInt64(1, txnId_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 2, value1_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 3, value2_);
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 4, value3_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeInt64Size(1, txnId_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, value1_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, value2_);
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, value3_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1)) {
+ return super.equals(obj);
+ }
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 other = (org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1) obj;
+
+ if (hasTxnId() != other.hasTxnId()) return false;
+ if (hasTxnId()) {
+ if (getTxnId()
+ != other.getTxnId()) return false;
+ }
+ if (hasValue1() != other.hasValue1()) return false;
+ if (hasValue1()) {
+ if (!getValue1()
+ .equals(other.getValue1())) return false;
+ }
+ if (hasValue2() != other.hasValue2()) return false;
+ if (hasValue2()) {
+ if (!getValue2()
+ .equals(other.getValue2())) return false;
+ }
+ if (hasValue3() != other.hasValue3()) return false;
+ if (hasValue3()) {
+ if (!getValue3()
+ .equals(other.getValue3())) return false;
+ }
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (hasTxnId()) {
+ hash = (37 * hash) + TXNID_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
+ getTxnId());
+ }
+ if (hasValue1()) {
+ hash = (37 * hash) + VALUE1_FIELD_NUMBER;
+ hash = (53 * hash) + getValue1().hashCode();
+ }
+ if (hasValue2()) {
+ hash = (37 * hash) + VALUE2_FIELD_NUMBER;
+ hash = (53 * hash) + getValue2().hashCode();
+ }
+ if (hasValue3()) {
+ hash = (37 * hash) + VALUE3_FIELD_NUMBER;
+ hash = (53 * hash) + getValue3().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 parseFrom(
+ java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 parseFrom(
+ java.nio.ByteBuffer data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 parseFrom(
+ byte[] data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 parseFrom(
+ com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() { return newBuilder(); }
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+ public static Builder newBuilder(org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE
+ ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ * Protobuf type {@code Msg1}
+ */
+ public static final class Builder extends
+ com.google.protobuf.GeneratedMessageV3.Builderrequired int64 txnId = 1;
+ * @return Whether the txnId field is set.
+ */
+ @java.lang.Override
+ public boolean hasTxnId() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * required int64 txnId = 1;
+ * @return The txnId.
+ */
+ @java.lang.Override
+ public long getTxnId() {
+ return txnId_;
+ }
+ /**
+ * required int64 txnId = 1;
+ * @param value The txnId to set.
+ * @return This builder for chaining.
+ */
+ public Builder setTxnId(long value) {
+
+ txnId_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ * required int64 txnId = 1;
+ * @return This builder for chaining.
+ */
+ public Builder clearTxnId() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ txnId_ = 0L;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object value1_ = "";
+ /**
+ * required string value1 = 2;
+ * @return Whether the value1 field is set.
+ */
+ public boolean hasValue1() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * required string value1 = 2;
+ * @return The value1.
+ */
+ public java.lang.String getValue1() {
+ java.lang.Object ref = value1_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ value1_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string value1 = 2;
+ * @return The bytes for value1.
+ */
+ public com.google.protobuf.ByteString
+ getValue1Bytes() {
+ java.lang.Object ref = value1_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ value1_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string value1 = 2;
+ * @param value The value1 to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValue1(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ value1_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string value1 = 2;
+ * @return This builder for chaining.
+ */
+ public Builder clearValue1() {
+ value1_ = getDefaultInstance().getValue1();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string value1 = 2;
+ * @param value The bytes for value1 to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValue1Bytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ value1_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object value2_ = "";
+ /**
+ * required string value2 = 3;
+ * @return Whether the value2 field is set.
+ */
+ public boolean hasValue2() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * required string value2 = 3;
+ * @return The value2.
+ */
+ public java.lang.String getValue2() {
+ java.lang.Object ref = value2_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ value2_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string value2 = 3;
+ * @return The bytes for value2.
+ */
+ public com.google.protobuf.ByteString
+ getValue2Bytes() {
+ java.lang.Object ref = value2_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ value2_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string value2 = 3;
+ * @param value The value2 to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValue2(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ value2_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string value2 = 3;
+ * @return This builder for chaining.
+ */
+ public Builder clearValue2() {
+ value2_ = getDefaultInstance().getValue2();
+ bitField0_ = (bitField0_ & ~0x00000004);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string value2 = 3;
+ * @param value The bytes for value2 to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValue2Bytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ value2_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object value3_ = "";
+ /**
+ * required string value3 = 4;
+ * @return Whether the value3 field is set.
+ */
+ public boolean hasValue3() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ * required string value3 = 4;
+ * @return The value3.
+ */
+ public java.lang.String getValue3() {
+ java.lang.Object ref = value3_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ value3_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string value3 = 4;
+ * @return The bytes for value3.
+ */
+ public com.google.protobuf.ByteString
+ getValue3Bytes() {
+ java.lang.Object ref = value3_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ value3_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string value3 = 4;
+ * @param value The value3 to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValue3(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ value3_ = value;
+ bitField0_ |= 0x00000008;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string value3 = 4;
+ * @return This builder for chaining.
+ */
+ public Builder clearValue3() {
+ value3_ = getDefaultInstance().getValue3();
+ bitField0_ = (bitField0_ & ~0x00000008);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string value3 = 4;
+ * @param value The bytes for value3 to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValue3Bytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ value3_ = value;
+ bitField0_ |= 0x00000008;
+ onChanged();
+ return this;
+ }
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+
+ // @@protoc_insertion_point(builder_scope:Msg1)
+ }
+
+ // @@protoc_insertion_point(class_scope:Msg1)
+ private static final org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 DEFAULT_INSTANCE;
+ static {
+ DEFAULT_INSTANCE = new org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1();
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg1 getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ @java.lang.Deprecated public static final com.google.protobuf.Parserrequired int32 userId = 1;
+ * @return Whether the userId field is set.
+ */
+ boolean hasUserId();
+ /**
+ * required int32 userId = 1;
+ * @return The userId.
+ */
+ int getUserId();
+
+ /**
+ * required string value1 = 2;
+ * @return Whether the value1 field is set.
+ */
+ boolean hasValue1();
+ /**
+ * required string value1 = 2;
+ * @return The value1.
+ */
+ java.lang.String getValue1();
+ /**
+ * required string value1 = 2;
+ * @return The bytes for value1.
+ */
+ com.google.protobuf.ByteString
+ getValue1Bytes();
+
+ /**
+ * required string value2 = 3;
+ * @return Whether the value2 field is set.
+ */
+ boolean hasValue2();
+ /**
+ * required string value2 = 3;
+ * @return The value2.
+ */
+ java.lang.String getValue2();
+ /**
+ * required string value2 = 3;
+ * @return The bytes for value2.
+ */
+ com.google.protobuf.ByteString
+ getValue2Bytes();
+
+ /**
+ * required string value3 = 4;
+ * @return Whether the value3 field is set.
+ */
+ boolean hasValue3();
+ /**
+ * required string value3 = 4;
+ * @return The value3.
+ */
+ java.lang.String getValue3();
+ /**
+ * required string value3 = 4;
+ * @return The bytes for value3.
+ */
+ com.google.protobuf.ByteString
+ getValue3Bytes();
+ }
+ /**
+ * Protobuf type {@code Msg2}
+ */
+ public static final class Msg2 extends
+ com.google.protobuf.GeneratedMessageV3 implements
+ // @@protoc_insertion_point(message_implements:Msg2)
+ Msg2OrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use Msg2.newBuilder() to construct.
+ private Msg2(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+ private Msg2() {
+ value1_ = "";
+ value2_ = "";
+ value3_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(
+ UnusedPrivateParameter unused) {
+ return new Msg2();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor
+ getDescriptor() {
+ return org.apache.hadoop.hive.ql.anon.proto.TestMessages.internal_static_Msg2_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return org.apache.hadoop.hive.ql.anon.proto.TestMessages.internal_static_Msg2_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2.class, org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2.Builder.class);
+ }
+
+ private int bitField0_;
+ public static final int USERID_FIELD_NUMBER = 1;
+ private int userId_ = 0;
+ /**
+ * required int32 userId = 1;
+ * @return Whether the userId field is set.
+ */
+ @java.lang.Override
+ public boolean hasUserId() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * required int32 userId = 1;
+ * @return The userId.
+ */
+ @java.lang.Override
+ public int getUserId() {
+ return userId_;
+ }
+
+ public static final int VALUE1_FIELD_NUMBER = 2;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object value1_ = "";
+ /**
+ * required string value1 = 2;
+ * @return Whether the value1 field is set.
+ */
+ @java.lang.Override
+ public boolean hasValue1() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * required string value1 = 2;
+ * @return The value1.
+ */
+ @java.lang.Override
+ public java.lang.String getValue1() {
+ java.lang.Object ref = value1_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ value1_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string value1 = 2;
+ * @return The bytes for value1.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getValue1Bytes() {
+ java.lang.Object ref = value1_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ value1_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int VALUE2_FIELD_NUMBER = 3;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object value2_ = "";
+ /**
+ * required string value2 = 3;
+ * @return Whether the value2 field is set.
+ */
+ @java.lang.Override
+ public boolean hasValue2() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * required string value2 = 3;
+ * @return The value2.
+ */
+ @java.lang.Override
+ public java.lang.String getValue2() {
+ java.lang.Object ref = value2_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ value2_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string value2 = 3;
+ * @return The bytes for value2.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getValue2Bytes() {
+ java.lang.Object ref = value2_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ value2_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int VALUE3_FIELD_NUMBER = 4;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object value3_ = "";
+ /**
+ * required string value3 = 4;
+ * @return Whether the value3 field is set.
+ */
+ @java.lang.Override
+ public boolean hasValue3() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ * required string value3 = 4;
+ * @return The value3.
+ */
+ @java.lang.Override
+ public java.lang.String getValue3() {
+ java.lang.Object ref = value3_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ value3_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string value3 = 4;
+ * @return The bytes for value3.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getValue3Bytes() {
+ java.lang.Object ref = value3_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ value3_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ if (!hasUserId()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasValue1()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasValue2()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasValue3()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output)
+ throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeInt32(1, userId_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 2, value1_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 3, value2_);
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 4, value3_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeInt32Size(1, userId_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, value1_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, value2_);
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, value3_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2)) {
+ return super.equals(obj);
+ }
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 other = (org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2) obj;
+
+ if (hasUserId() != other.hasUserId()) return false;
+ if (hasUserId()) {
+ if (getUserId()
+ != other.getUserId()) return false;
+ }
+ if (hasValue1() != other.hasValue1()) return false;
+ if (hasValue1()) {
+ if (!getValue1()
+ .equals(other.getValue1())) return false;
+ }
+ if (hasValue2() != other.hasValue2()) return false;
+ if (hasValue2()) {
+ if (!getValue2()
+ .equals(other.getValue2())) return false;
+ }
+ if (hasValue3() != other.hasValue3()) return false;
+ if (hasValue3()) {
+ if (!getValue3()
+ .equals(other.getValue3())) return false;
+ }
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (hasUserId()) {
+ hash = (37 * hash) + USERID_FIELD_NUMBER;
+ hash = (53 * hash) + getUserId();
+ }
+ if (hasValue1()) {
+ hash = (37 * hash) + VALUE1_FIELD_NUMBER;
+ hash = (53 * hash) + getValue1().hashCode();
+ }
+ if (hasValue2()) {
+ hash = (37 * hash) + VALUE2_FIELD_NUMBER;
+ hash = (53 * hash) + getValue2().hashCode();
+ }
+ if (hasValue3()) {
+ hash = (37 * hash) + VALUE3_FIELD_NUMBER;
+ hash = (53 * hash) + getValue3().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 parseFrom(
+ java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 parseFrom(
+ java.nio.ByteBuffer data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 parseFrom(
+ byte[] data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 parseFrom(
+ com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() { return newBuilder(); }
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+ public static Builder newBuilder(org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE
+ ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ * Protobuf type {@code Msg2}
+ */
+ public static final class Builder extends
+ com.google.protobuf.GeneratedMessageV3.Builderrequired int32 userId = 1;
+ * @return Whether the userId field is set.
+ */
+ @java.lang.Override
+ public boolean hasUserId() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * required int32 userId = 1;
+ * @return The userId.
+ */
+ @java.lang.Override
+ public int getUserId() {
+ return userId_;
+ }
+ /**
+ * required int32 userId = 1;
+ * @param value The userId to set.
+ * @return This builder for chaining.
+ */
+ public Builder setUserId(int value) {
+
+ userId_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ * required int32 userId = 1;
+ * @return This builder for chaining.
+ */
+ public Builder clearUserId() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ userId_ = 0;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object value1_ = "";
+ /**
+ * required string value1 = 2;
+ * @return Whether the value1 field is set.
+ */
+ public boolean hasValue1() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * required string value1 = 2;
+ * @return The value1.
+ */
+ public java.lang.String getValue1() {
+ java.lang.Object ref = value1_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ value1_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string value1 = 2;
+ * @return The bytes for value1.
+ */
+ public com.google.protobuf.ByteString
+ getValue1Bytes() {
+ java.lang.Object ref = value1_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ value1_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string value1 = 2;
+ * @param value The value1 to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValue1(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ value1_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string value1 = 2;
+ * @return This builder for chaining.
+ */
+ public Builder clearValue1() {
+ value1_ = getDefaultInstance().getValue1();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string value1 = 2;
+ * @param value The bytes for value1 to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValue1Bytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ value1_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object value2_ = "";
+ /**
+ * required string value2 = 3;
+ * @return Whether the value2 field is set.
+ */
+ public boolean hasValue2() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * required string value2 = 3;
+ * @return The value2.
+ */
+ public java.lang.String getValue2() {
+ java.lang.Object ref = value2_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ value2_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string value2 = 3;
+ * @return The bytes for value2.
+ */
+ public com.google.protobuf.ByteString
+ getValue2Bytes() {
+ java.lang.Object ref = value2_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ value2_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string value2 = 3;
+ * @param value The value2 to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValue2(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ value2_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string value2 = 3;
+ * @return This builder for chaining.
+ */
+ public Builder clearValue2() {
+ value2_ = getDefaultInstance().getValue2();
+ bitField0_ = (bitField0_ & ~0x00000004);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string value2 = 3;
+ * @param value The bytes for value2 to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValue2Bytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ value2_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object value3_ = "";
+ /**
+ * required string value3 = 4;
+ * @return Whether the value3 field is set.
+ */
+ public boolean hasValue3() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ * required string value3 = 4;
+ * @return The value3.
+ */
+ public java.lang.String getValue3() {
+ java.lang.Object ref = value3_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ value3_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string value3 = 4;
+ * @return The bytes for value3.
+ */
+ public com.google.protobuf.ByteString
+ getValue3Bytes() {
+ java.lang.Object ref = value3_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ value3_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string value3 = 4;
+ * @param value The value3 to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValue3(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ value3_ = value;
+ bitField0_ |= 0x00000008;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string value3 = 4;
+ * @return This builder for chaining.
+ */
+ public Builder clearValue3() {
+ value3_ = getDefaultInstance().getValue3();
+ bitField0_ = (bitField0_ & ~0x00000008);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string value3 = 4;
+ * @param value The bytes for value3 to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValue3Bytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ value3_ = value;
+ bitField0_ |= 0x00000008;
+ onChanged();
+ return this;
+ }
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+
+ // @@protoc_insertion_point(builder_scope:Msg2)
+ }
+
+ // @@protoc_insertion_point(class_scope:Msg2)
+ private static final org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 DEFAULT_INSTANCE;
+ static {
+ DEFAULT_INSTANCE = new org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2();
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg2 getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ @java.lang.Deprecated public static final com.google.protobuf.Parserrequired int32 userId = 1;
+ * @return Whether the userId field is set.
+ */
+ boolean hasUserId();
+ /**
+ * required int32 userId = 1;
+ * @return The userId.
+ */
+ int getUserId();
+
+ /**
+ * required string firstName = 2;
+ * @return Whether the firstName field is set.
+ */
+ boolean hasFirstName();
+ /**
+ * required string firstName = 2;
+ * @return The firstName.
+ */
+ java.lang.String getFirstName();
+ /**
+ * required string firstName = 2;
+ * @return The bytes for firstName.
+ */
+ com.google.protobuf.ByteString
+ getFirstNameBytes();
+
+ /**
+ * required string lastName = 3;
+ * @return Whether the lastName field is set.
+ */
+ boolean hasLastName();
+ /**
+ * required string lastName = 3;
+ * @return The lastName.
+ */
+ java.lang.String getLastName();
+ /**
+ * required string lastName = 3;
+ * @return The bytes for lastName.
+ */
+ com.google.protobuf.ByteString
+ getLastNameBytes();
+
+ /**
+ * required string address = 4;
+ * @return Whether the address field is set.
+ */
+ boolean hasAddress();
+ /**
+ * required string address = 4;
+ * @return The address.
+ */
+ java.lang.String getAddress();
+ /**
+ * required string address = 4;
+ * @return The bytes for address.
+ */
+ com.google.protobuf.ByteString
+ getAddressBytes();
+
+ /**
+ * required string city = 5;
+ * @return Whether the city field is set.
+ */
+ boolean hasCity();
+ /**
+ * required string city = 5;
+ * @return The city.
+ */
+ java.lang.String getCity();
+ /**
+ * required string city = 5;
+ * @return The bytes for city.
+ */
+ com.google.protobuf.ByteString
+ getCityBytes();
+
+ /**
+ * required string country = 6;
+ * @return Whether the country field is set.
+ */
+ boolean hasCountry();
+ /**
+ * required string country = 6;
+ * @return The country.
+ */
+ java.lang.String getCountry();
+ /**
+ * required string country = 6;
+ * @return The bytes for country.
+ */
+ com.google.protobuf.ByteString
+ getCountryBytes();
+
+ /**
+ * required string email = 7;
+ * @return Whether the email field is set.
+ */
+ boolean hasEmail();
+ /**
+ * required string email = 7;
+ * @return The email.
+ */
+ java.lang.String getEmail();
+ /**
+ * required string email = 7;
+ * @return The bytes for email.
+ */
+ com.google.protobuf.ByteString
+ getEmailBytes();
+
+ /**
+ * required string telephone = 8;
+ * @return Whether the telephone field is set.
+ */
+ boolean hasTelephone();
+ /**
+ * required string telephone = 8;
+ * @return The telephone.
+ */
+ java.lang.String getTelephone();
+ /**
+ * required string telephone = 8;
+ * @return The bytes for telephone.
+ */
+ com.google.protobuf.ByteString
+ getTelephoneBytes();
+
+ /**
+ * required string birthDate = 9;
+ * @return Whether the birthDate field is set.
+ */
+ boolean hasBirthDate();
+ /**
+ * required string birthDate = 9;
+ * @return The birthDate.
+ */
+ java.lang.String getBirthDate();
+ /**
+ * required string birthDate = 9;
+ * @return The bytes for birthDate.
+ */
+ com.google.protobuf.ByteString
+ getBirthDateBytes();
+
+ /**
+ * required string value = 10;
+ * @return Whether the value field is set.
+ */
+ boolean hasValue();
+ /**
+ * required string value = 10;
+ * @return The value.
+ */
+ java.lang.String getValue();
+ /**
+ * required string value = 10;
+ * @return The bytes for value.
+ */
+ com.google.protobuf.ByteString
+ getValueBytes();
+
+ /**
+ * repeated string ip = 11;
+ * @return A list containing the ip.
+ */
+ java.util.Listrepeated string ip = 11;
+ * @return The count of ip.
+ */
+ int getIpCount();
+ /**
+ * repeated string ip = 11;
+ * @param index The index of the element to return.
+ * @return The ip at the given index.
+ */
+ java.lang.String getIp(int index);
+ /**
+ * repeated string ip = 11;
+ * @param index The index of the value to return.
+ * @return The bytes of the ip at the given index.
+ */
+ com.google.protobuf.ByteString
+ getIpBytes(int index);
+
+ /**
+ * required .BankDetails bankDetails = 12;
+ * @return Whether the bankDetails field is set.
+ */
+ boolean hasBankDetails();
+ /**
+ * required .BankDetails bankDetails = 12;
+ * @return The bankDetails.
+ */
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails getBankDetails();
+ /**
+ * required .BankDetails bankDetails = 12;
+ */
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetailsOrBuilder getBankDetailsOrBuilder();
+ }
+ /**
+ * Protobuf type {@code Msg3}
+ */
+ public static final class Msg3 extends
+ com.google.protobuf.GeneratedMessageV3 implements
+ // @@protoc_insertion_point(message_implements:Msg3)
+ Msg3OrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use Msg3.newBuilder() to construct.
+ private Msg3(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+ private Msg3() {
+ firstName_ = "";
+ lastName_ = "";
+ address_ = "";
+ city_ = "";
+ country_ = "";
+ email_ = "";
+ telephone_ = "";
+ birthDate_ = "";
+ value_ = "";
+ ip_ =
+ com.google.protobuf.LazyStringArrayList.emptyList();
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(
+ UnusedPrivateParameter unused) {
+ return new Msg3();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor
+ getDescriptor() {
+ return org.apache.hadoop.hive.ql.anon.proto.TestMessages.internal_static_Msg3_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return org.apache.hadoop.hive.ql.anon.proto.TestMessages.internal_static_Msg3_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3.class, org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3.Builder.class);
+ }
+
+ private int bitField0_;
+ public static final int USERID_FIELD_NUMBER = 1;
+ private int userId_ = 0;
+ /**
+ * required int32 userId = 1;
+ * @return Whether the userId field is set.
+ */
+ @java.lang.Override
+ public boolean hasUserId() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * required int32 userId = 1;
+ * @return The userId.
+ */
+ @java.lang.Override
+ public int getUserId() {
+ return userId_;
+ }
+
+ public static final int FIRSTNAME_FIELD_NUMBER = 2;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object firstName_ = "";
+ /**
+ * required string firstName = 2;
+ * @return Whether the firstName field is set.
+ */
+ @java.lang.Override
+ public boolean hasFirstName() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * required string firstName = 2;
+ * @return The firstName.
+ */
+ @java.lang.Override
+ public java.lang.String getFirstName() {
+ java.lang.Object ref = firstName_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ firstName_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string firstName = 2;
+ * @return The bytes for firstName.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getFirstNameBytes() {
+ java.lang.Object ref = firstName_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ firstName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int LASTNAME_FIELD_NUMBER = 3;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object lastName_ = "";
+ /**
+ * required string lastName = 3;
+ * @return Whether the lastName field is set.
+ */
+ @java.lang.Override
+ public boolean hasLastName() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * required string lastName = 3;
+ * @return The lastName.
+ */
+ @java.lang.Override
+ public java.lang.String getLastName() {
+ java.lang.Object ref = lastName_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ lastName_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string lastName = 3;
+ * @return The bytes for lastName.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getLastNameBytes() {
+ java.lang.Object ref = lastName_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ lastName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int ADDRESS_FIELD_NUMBER = 4;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object address_ = "";
+ /**
+ * required string address = 4;
+ * @return Whether the address field is set.
+ */
+ @java.lang.Override
+ public boolean hasAddress() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ * required string address = 4;
+ * @return The address.
+ */
+ @java.lang.Override
+ public java.lang.String getAddress() {
+ java.lang.Object ref = address_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ address_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string address = 4;
+ * @return The bytes for address.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getAddressBytes() {
+ java.lang.Object ref = address_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ address_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int CITY_FIELD_NUMBER = 5;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object city_ = "";
+ /**
+ * required string city = 5;
+ * @return Whether the city field is set.
+ */
+ @java.lang.Override
+ public boolean hasCity() {
+ return ((bitField0_ & 0x00000010) != 0);
+ }
+ /**
+ * required string city = 5;
+ * @return The city.
+ */
+ @java.lang.Override
+ public java.lang.String getCity() {
+ java.lang.Object ref = city_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ city_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string city = 5;
+ * @return The bytes for city.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getCityBytes() {
+ java.lang.Object ref = city_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ city_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int COUNTRY_FIELD_NUMBER = 6;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object country_ = "";
+ /**
+ * required string country = 6;
+ * @return Whether the country field is set.
+ */
+ @java.lang.Override
+ public boolean hasCountry() {
+ return ((bitField0_ & 0x00000020) != 0);
+ }
+ /**
+ * required string country = 6;
+ * @return The country.
+ */
+ @java.lang.Override
+ public java.lang.String getCountry() {
+ java.lang.Object ref = country_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ country_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string country = 6;
+ * @return The bytes for country.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getCountryBytes() {
+ java.lang.Object ref = country_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ country_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int EMAIL_FIELD_NUMBER = 7;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object email_ = "";
+ /**
+ * required string email = 7;
+ * @return Whether the email field is set.
+ */
+ @java.lang.Override
+ public boolean hasEmail() {
+ return ((bitField0_ & 0x00000040) != 0);
+ }
+ /**
+ * required string email = 7;
+ * @return The email.
+ */
+ @java.lang.Override
+ public java.lang.String getEmail() {
+ java.lang.Object ref = email_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ email_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string email = 7;
+ * @return The bytes for email.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getEmailBytes() {
+ java.lang.Object ref = email_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ email_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int TELEPHONE_FIELD_NUMBER = 8;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object telephone_ = "";
+ /**
+ * required string telephone = 8;
+ * @return Whether the telephone field is set.
+ */
+ @java.lang.Override
+ public boolean hasTelephone() {
+ return ((bitField0_ & 0x00000080) != 0);
+ }
+ /**
+ * required string telephone = 8;
+ * @return The telephone.
+ */
+ @java.lang.Override
+ public java.lang.String getTelephone() {
+ java.lang.Object ref = telephone_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ telephone_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string telephone = 8;
+ * @return The bytes for telephone.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getTelephoneBytes() {
+ java.lang.Object ref = telephone_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ telephone_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int BIRTHDATE_FIELD_NUMBER = 9;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object birthDate_ = "";
+ /**
+ * required string birthDate = 9;
+ * @return Whether the birthDate field is set.
+ */
+ @java.lang.Override
+ public boolean hasBirthDate() {
+ return ((bitField0_ & 0x00000100) != 0);
+ }
+ /**
+ * required string birthDate = 9;
+ * @return The birthDate.
+ */
+ @java.lang.Override
+ public java.lang.String getBirthDate() {
+ java.lang.Object ref = birthDate_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ birthDate_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string birthDate = 9;
+ * @return The bytes for birthDate.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getBirthDateBytes() {
+ java.lang.Object ref = birthDate_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ birthDate_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int VALUE_FIELD_NUMBER = 10;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object value_ = "";
+ /**
+ * required string value = 10;
+ * @return Whether the value field is set.
+ */
+ @java.lang.Override
+ public boolean hasValue() {
+ return ((bitField0_ & 0x00000200) != 0);
+ }
+ /**
+ * required string value = 10;
+ * @return The value.
+ */
+ @java.lang.Override
+ public java.lang.String getValue() {
+ java.lang.Object ref = value_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ value_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string value = 10;
+ * @return The bytes for value.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getValueBytes() {
+ java.lang.Object ref = value_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ value_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int IP_FIELD_NUMBER = 11;
+ @SuppressWarnings("serial")
+ private com.google.protobuf.LazyStringArrayList ip_ =
+ com.google.protobuf.LazyStringArrayList.emptyList();
+ /**
+ * repeated string ip = 11;
+ * @return A list containing the ip.
+ */
+ public com.google.protobuf.ProtocolStringList
+ getIpList() {
+ return ip_;
+ }
+ /**
+ * repeated string ip = 11;
+ * @return The count of ip.
+ */
+ public int getIpCount() {
+ return ip_.size();
+ }
+ /**
+ * repeated string ip = 11;
+ * @param index The index of the element to return.
+ * @return The ip at the given index.
+ */
+ public java.lang.String getIp(int index) {
+ return ip_.get(index);
+ }
+ /**
+ * repeated string ip = 11;
+ * @param index The index of the value to return.
+ * @return The bytes of the ip at the given index.
+ */
+ public com.google.protobuf.ByteString
+ getIpBytes(int index) {
+ return ip_.getByteString(index);
+ }
+
+ public static final int BANKDETAILS_FIELD_NUMBER = 12;
+ private org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails bankDetails_;
+ /**
+ * required .BankDetails bankDetails = 12;
+ * @return Whether the bankDetails field is set.
+ */
+ @java.lang.Override
+ public boolean hasBankDetails() {
+ return ((bitField0_ & 0x00000400) != 0);
+ }
+ /**
+ * required .BankDetails bankDetails = 12;
+ * @return The bankDetails.
+ */
+ @java.lang.Override
+ public org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails getBankDetails() {
+ return bankDetails_ == null ? org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails.getDefaultInstance() : bankDetails_;
+ }
+ /**
+ * required .BankDetails bankDetails = 12;
+ */
+ @java.lang.Override
+ public org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetailsOrBuilder getBankDetailsOrBuilder() {
+ return bankDetails_ == null ? org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails.getDefaultInstance() : bankDetails_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ if (!hasUserId()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasFirstName()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasLastName()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasAddress()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasCity()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasCountry()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasEmail()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasTelephone()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasBirthDate()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasValue()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasBankDetails()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!getBankDetails().isInitialized()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output)
+ throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeInt32(1, userId_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 2, firstName_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 3, lastName_);
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 4, address_);
+ }
+ if (((bitField0_ & 0x00000010) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 5, city_);
+ }
+ if (((bitField0_ & 0x00000020) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 6, country_);
+ }
+ if (((bitField0_ & 0x00000040) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 7, email_);
+ }
+ if (((bitField0_ & 0x00000080) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 8, telephone_);
+ }
+ if (((bitField0_ & 0x00000100) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 9, birthDate_);
+ }
+ if (((bitField0_ & 0x00000200) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 10, value_);
+ }
+ for (int i = 0; i < ip_.size(); i++) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 11, ip_.getRaw(i));
+ }
+ if (((bitField0_ & 0x00000400) != 0)) {
+ output.writeMessage(12, getBankDetails());
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeInt32Size(1, userId_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, firstName_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, lastName_);
+ }
+ if (((bitField0_ & 0x00000008) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, address_);
+ }
+ if (((bitField0_ & 0x00000010) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, city_);
+ }
+ if (((bitField0_ & 0x00000020) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, country_);
+ }
+ if (((bitField0_ & 0x00000040) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, email_);
+ }
+ if (((bitField0_ & 0x00000080) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(8, telephone_);
+ }
+ if (((bitField0_ & 0x00000100) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, birthDate_);
+ }
+ if (((bitField0_ & 0x00000200) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(10, value_);
+ }
+ {
+ int dataSize = 0;
+ for (int i = 0; i < ip_.size(); i++) {
+ dataSize += computeStringSizeNoTag(ip_.getRaw(i));
+ }
+ size += dataSize;
+ size += 1 * getIpList().size();
+ }
+ if (((bitField0_ & 0x00000400) != 0)) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeMessageSize(12, getBankDetails());
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3)) {
+ return super.equals(obj);
+ }
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 other = (org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3) obj;
+
+ if (hasUserId() != other.hasUserId()) return false;
+ if (hasUserId()) {
+ if (getUserId()
+ != other.getUserId()) return false;
+ }
+ if (hasFirstName() != other.hasFirstName()) return false;
+ if (hasFirstName()) {
+ if (!getFirstName()
+ .equals(other.getFirstName())) return false;
+ }
+ if (hasLastName() != other.hasLastName()) return false;
+ if (hasLastName()) {
+ if (!getLastName()
+ .equals(other.getLastName())) return false;
+ }
+ if (hasAddress() != other.hasAddress()) return false;
+ if (hasAddress()) {
+ if (!getAddress()
+ .equals(other.getAddress())) return false;
+ }
+ if (hasCity() != other.hasCity()) return false;
+ if (hasCity()) {
+ if (!getCity()
+ .equals(other.getCity())) return false;
+ }
+ if (hasCountry() != other.hasCountry()) return false;
+ if (hasCountry()) {
+ if (!getCountry()
+ .equals(other.getCountry())) return false;
+ }
+ if (hasEmail() != other.hasEmail()) return false;
+ if (hasEmail()) {
+ if (!getEmail()
+ .equals(other.getEmail())) return false;
+ }
+ if (hasTelephone() != other.hasTelephone()) return false;
+ if (hasTelephone()) {
+ if (!getTelephone()
+ .equals(other.getTelephone())) return false;
+ }
+ if (hasBirthDate() != other.hasBirthDate()) return false;
+ if (hasBirthDate()) {
+ if (!getBirthDate()
+ .equals(other.getBirthDate())) return false;
+ }
+ if (hasValue() != other.hasValue()) return false;
+ if (hasValue()) {
+ if (!getValue()
+ .equals(other.getValue())) return false;
+ }
+ if (!getIpList()
+ .equals(other.getIpList())) return false;
+ if (hasBankDetails() != other.hasBankDetails()) return false;
+ if (hasBankDetails()) {
+ if (!getBankDetails()
+ .equals(other.getBankDetails())) return false;
+ }
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (hasUserId()) {
+ hash = (37 * hash) + USERID_FIELD_NUMBER;
+ hash = (53 * hash) + getUserId();
+ }
+ if (hasFirstName()) {
+ hash = (37 * hash) + FIRSTNAME_FIELD_NUMBER;
+ hash = (53 * hash) + getFirstName().hashCode();
+ }
+ if (hasLastName()) {
+ hash = (37 * hash) + LASTNAME_FIELD_NUMBER;
+ hash = (53 * hash) + getLastName().hashCode();
+ }
+ if (hasAddress()) {
+ hash = (37 * hash) + ADDRESS_FIELD_NUMBER;
+ hash = (53 * hash) + getAddress().hashCode();
+ }
+ if (hasCity()) {
+ hash = (37 * hash) + CITY_FIELD_NUMBER;
+ hash = (53 * hash) + getCity().hashCode();
+ }
+ if (hasCountry()) {
+ hash = (37 * hash) + COUNTRY_FIELD_NUMBER;
+ hash = (53 * hash) + getCountry().hashCode();
+ }
+ if (hasEmail()) {
+ hash = (37 * hash) + EMAIL_FIELD_NUMBER;
+ hash = (53 * hash) + getEmail().hashCode();
+ }
+ if (hasTelephone()) {
+ hash = (37 * hash) + TELEPHONE_FIELD_NUMBER;
+ hash = (53 * hash) + getTelephone().hashCode();
+ }
+ if (hasBirthDate()) {
+ hash = (37 * hash) + BIRTHDATE_FIELD_NUMBER;
+ hash = (53 * hash) + getBirthDate().hashCode();
+ }
+ if (hasValue()) {
+ hash = (37 * hash) + VALUE_FIELD_NUMBER;
+ hash = (53 * hash) + getValue().hashCode();
+ }
+ if (getIpCount() > 0) {
+ hash = (37 * hash) + IP_FIELD_NUMBER;
+ hash = (53 * hash) + getIpList().hashCode();
+ }
+ if (hasBankDetails()) {
+ hash = (37 * hash) + BANKDETAILS_FIELD_NUMBER;
+ hash = (53 * hash) + getBankDetails().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 parseFrom(
+ java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 parseFrom(
+ java.nio.ByteBuffer data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 parseFrom(
+ byte[] data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 parseFrom(
+ com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() { return newBuilder(); }
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+ public static Builder newBuilder(org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE
+ ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ * Protobuf type {@code Msg3}
+ */
+ public static final class Builder extends
+ com.google.protobuf.GeneratedMessageV3.Builderrequired int32 userId = 1;
+ * @return Whether the userId field is set.
+ */
+ @java.lang.Override
+ public boolean hasUserId() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * required int32 userId = 1;
+ * @return The userId.
+ */
+ @java.lang.Override
+ public int getUserId() {
+ return userId_;
+ }
+ /**
+ * required int32 userId = 1;
+ * @param value The userId to set.
+ * @return This builder for chaining.
+ */
+ public Builder setUserId(int value) {
+
+ userId_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ * required int32 userId = 1;
+ * @return This builder for chaining.
+ */
+ public Builder clearUserId() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ userId_ = 0;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object firstName_ = "";
+ /**
+ * required string firstName = 2;
+ * @return Whether the firstName field is set.
+ */
+ public boolean hasFirstName() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * required string firstName = 2;
+ * @return The firstName.
+ */
+ public java.lang.String getFirstName() {
+ java.lang.Object ref = firstName_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ firstName_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string firstName = 2;
+ * @return The bytes for firstName.
+ */
+ public com.google.protobuf.ByteString
+ getFirstNameBytes() {
+ java.lang.Object ref = firstName_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ firstName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string firstName = 2;
+ * @param value The firstName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setFirstName(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ firstName_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string firstName = 2;
+ * @return This builder for chaining.
+ */
+ public Builder clearFirstName() {
+ firstName_ = getDefaultInstance().getFirstName();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string firstName = 2;
+ * @param value The bytes for firstName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setFirstNameBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ firstName_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object lastName_ = "";
+ /**
+ * required string lastName = 3;
+ * @return Whether the lastName field is set.
+ */
+ public boolean hasLastName() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * required string lastName = 3;
+ * @return The lastName.
+ */
+ public java.lang.String getLastName() {
+ java.lang.Object ref = lastName_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ lastName_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string lastName = 3;
+ * @return The bytes for lastName.
+ */
+ public com.google.protobuf.ByteString
+ getLastNameBytes() {
+ java.lang.Object ref = lastName_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ lastName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string lastName = 3;
+ * @param value The lastName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setLastName(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ lastName_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string lastName = 3;
+ * @return This builder for chaining.
+ */
+ public Builder clearLastName() {
+ lastName_ = getDefaultInstance().getLastName();
+ bitField0_ = (bitField0_ & ~0x00000004);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string lastName = 3;
+ * @param value The bytes for lastName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setLastNameBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ lastName_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object address_ = "";
+ /**
+ * required string address = 4;
+ * @return Whether the address field is set.
+ */
+ public boolean hasAddress() {
+ return ((bitField0_ & 0x00000008) != 0);
+ }
+ /**
+ * required string address = 4;
+ * @return The address.
+ */
+ public java.lang.String getAddress() {
+ java.lang.Object ref = address_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ address_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string address = 4;
+ * @return The bytes for address.
+ */
+ public com.google.protobuf.ByteString
+ getAddressBytes() {
+ java.lang.Object ref = address_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ address_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string address = 4;
+ * @param value The address to set.
+ * @return This builder for chaining.
+ */
+ public Builder setAddress(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ address_ = value;
+ bitField0_ |= 0x00000008;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string address = 4;
+ * @return This builder for chaining.
+ */
+ public Builder clearAddress() {
+ address_ = getDefaultInstance().getAddress();
+ bitField0_ = (bitField0_ & ~0x00000008);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string address = 4;
+ * @param value The bytes for address to set.
+ * @return This builder for chaining.
+ */
+ public Builder setAddressBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ address_ = value;
+ bitField0_ |= 0x00000008;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object city_ = "";
+ /**
+ * required string city = 5;
+ * @return Whether the city field is set.
+ */
+ public boolean hasCity() {
+ return ((bitField0_ & 0x00000010) != 0);
+ }
+ /**
+ * required string city = 5;
+ * @return The city.
+ */
+ public java.lang.String getCity() {
+ java.lang.Object ref = city_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ city_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string city = 5;
+ * @return The bytes for city.
+ */
+ public com.google.protobuf.ByteString
+ getCityBytes() {
+ java.lang.Object ref = city_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ city_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string city = 5;
+ * @param value The city to set.
+ * @return This builder for chaining.
+ */
+ public Builder setCity(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ city_ = value;
+ bitField0_ |= 0x00000010;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string city = 5;
+ * @return This builder for chaining.
+ */
+ public Builder clearCity() {
+ city_ = getDefaultInstance().getCity();
+ bitField0_ = (bitField0_ & ~0x00000010);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string city = 5;
+ * @param value The bytes for city to set.
+ * @return This builder for chaining.
+ */
+ public Builder setCityBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ city_ = value;
+ bitField0_ |= 0x00000010;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object country_ = "";
+ /**
+ * required string country = 6;
+ * @return Whether the country field is set.
+ */
+ public boolean hasCountry() {
+ return ((bitField0_ & 0x00000020) != 0);
+ }
+ /**
+ * required string country = 6;
+ * @return The country.
+ */
+ public java.lang.String getCountry() {
+ java.lang.Object ref = country_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ country_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string country = 6;
+ * @return The bytes for country.
+ */
+ public com.google.protobuf.ByteString
+ getCountryBytes() {
+ java.lang.Object ref = country_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ country_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string country = 6;
+ * @param value The country to set.
+ * @return This builder for chaining.
+ */
+ public Builder setCountry(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ country_ = value;
+ bitField0_ |= 0x00000020;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string country = 6;
+ * @return This builder for chaining.
+ */
+ public Builder clearCountry() {
+ country_ = getDefaultInstance().getCountry();
+ bitField0_ = (bitField0_ & ~0x00000020);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string country = 6;
+ * @param value The bytes for country to set.
+ * @return This builder for chaining.
+ */
+ public Builder setCountryBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ country_ = value;
+ bitField0_ |= 0x00000020;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object email_ = "";
+ /**
+ * required string email = 7;
+ * @return Whether the email field is set.
+ */
+ public boolean hasEmail() {
+ return ((bitField0_ & 0x00000040) != 0);
+ }
+ /**
+ * required string email = 7;
+ * @return The email.
+ */
+ public java.lang.String getEmail() {
+ java.lang.Object ref = email_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ email_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string email = 7;
+ * @return The bytes for email.
+ */
+ public com.google.protobuf.ByteString
+ getEmailBytes() {
+ java.lang.Object ref = email_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ email_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string email = 7;
+ * @param value The email to set.
+ * @return This builder for chaining.
+ */
+ public Builder setEmail(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ email_ = value;
+ bitField0_ |= 0x00000040;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string email = 7;
+ * @return This builder for chaining.
+ */
+ public Builder clearEmail() {
+ email_ = getDefaultInstance().getEmail();
+ bitField0_ = (bitField0_ & ~0x00000040);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string email = 7;
+ * @param value The bytes for email to set.
+ * @return This builder for chaining.
+ */
+ public Builder setEmailBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ email_ = value;
+ bitField0_ |= 0x00000040;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object telephone_ = "";
+ /**
+ * required string telephone = 8;
+ * @return Whether the telephone field is set.
+ */
+ public boolean hasTelephone() {
+ return ((bitField0_ & 0x00000080) != 0);
+ }
+ /**
+ * required string telephone = 8;
+ * @return The telephone.
+ */
+ public java.lang.String getTelephone() {
+ java.lang.Object ref = telephone_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ telephone_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string telephone = 8;
+ * @return The bytes for telephone.
+ */
+ public com.google.protobuf.ByteString
+ getTelephoneBytes() {
+ java.lang.Object ref = telephone_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ telephone_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string telephone = 8;
+ * @param value The telephone to set.
+ * @return This builder for chaining.
+ */
+ public Builder setTelephone(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ telephone_ = value;
+ bitField0_ |= 0x00000080;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string telephone = 8;
+ * @return This builder for chaining.
+ */
+ public Builder clearTelephone() {
+ telephone_ = getDefaultInstance().getTelephone();
+ bitField0_ = (bitField0_ & ~0x00000080);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string telephone = 8;
+ * @param value The bytes for telephone to set.
+ * @return This builder for chaining.
+ */
+ public Builder setTelephoneBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ telephone_ = value;
+ bitField0_ |= 0x00000080;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object birthDate_ = "";
+ /**
+ * required string birthDate = 9;
+ * @return Whether the birthDate field is set.
+ */
+ public boolean hasBirthDate() {
+ return ((bitField0_ & 0x00000100) != 0);
+ }
+ /**
+ * required string birthDate = 9;
+ * @return The birthDate.
+ */
+ public java.lang.String getBirthDate() {
+ java.lang.Object ref = birthDate_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ birthDate_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string birthDate = 9;
+ * @return The bytes for birthDate.
+ */
+ public com.google.protobuf.ByteString
+ getBirthDateBytes() {
+ java.lang.Object ref = birthDate_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ birthDate_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string birthDate = 9;
+ * @param value The birthDate to set.
+ * @return This builder for chaining.
+ */
+ public Builder setBirthDate(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ birthDate_ = value;
+ bitField0_ |= 0x00000100;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string birthDate = 9;
+ * @return This builder for chaining.
+ */
+ public Builder clearBirthDate() {
+ birthDate_ = getDefaultInstance().getBirthDate();
+ bitField0_ = (bitField0_ & ~0x00000100);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string birthDate = 9;
+ * @param value The bytes for birthDate to set.
+ * @return This builder for chaining.
+ */
+ public Builder setBirthDateBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ birthDate_ = value;
+ bitField0_ |= 0x00000100;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object value_ = "";
+ /**
+ * required string value = 10;
+ * @return Whether the value field is set.
+ */
+ public boolean hasValue() {
+ return ((bitField0_ & 0x00000200) != 0);
+ }
+ /**
+ * required string value = 10;
+ * @return The value.
+ */
+ public java.lang.String getValue() {
+ java.lang.Object ref = value_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ value_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string value = 10;
+ * @return The bytes for value.
+ */
+ public com.google.protobuf.ByteString
+ getValueBytes() {
+ java.lang.Object ref = value_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ value_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string value = 10;
+ * @param value The value to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValue(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ value_ = value;
+ bitField0_ |= 0x00000200;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string value = 10;
+ * @return This builder for chaining.
+ */
+ public Builder clearValue() {
+ value_ = getDefaultInstance().getValue();
+ bitField0_ = (bitField0_ & ~0x00000200);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string value = 10;
+ * @param value The bytes for value to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValueBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ value_ = value;
+ bitField0_ |= 0x00000200;
+ onChanged();
+ return this;
+ }
+
+ private com.google.protobuf.LazyStringArrayList ip_ =
+ com.google.protobuf.LazyStringArrayList.emptyList();
+ private void ensureIpIsMutable() {
+ if (!ip_.isModifiable()) {
+ ip_ = new com.google.protobuf.LazyStringArrayList(ip_);
+ }
+ bitField0_ |= 0x00000400;
+ }
+ /**
+ * repeated string ip = 11;
+ * @return A list containing the ip.
+ */
+ public com.google.protobuf.ProtocolStringList
+ getIpList() {
+ ip_.makeImmutable();
+ return ip_;
+ }
+ /**
+ * repeated string ip = 11;
+ * @return The count of ip.
+ */
+ public int getIpCount() {
+ return ip_.size();
+ }
+ /**
+ * repeated string ip = 11;
+ * @param index The index of the element to return.
+ * @return The ip at the given index.
+ */
+ public java.lang.String getIp(int index) {
+ return ip_.get(index);
+ }
+ /**
+ * repeated string ip = 11;
+ * @param index The index of the value to return.
+ * @return The bytes of the ip at the given index.
+ */
+ public com.google.protobuf.ByteString
+ getIpBytes(int index) {
+ return ip_.getByteString(index);
+ }
+ /**
+ * repeated string ip = 11;
+ * @param index The index to set the value at.
+ * @param value The ip to set.
+ * @return This builder for chaining.
+ */
+ public Builder setIp(
+ int index, java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ ensureIpIsMutable();
+ ip_.set(index, value);
+ bitField0_ |= 0x00000400;
+ onChanged();
+ return this;
+ }
+ /**
+ * repeated string ip = 11;
+ * @param value The ip to add.
+ * @return This builder for chaining.
+ */
+ public Builder addIp(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ ensureIpIsMutable();
+ ip_.add(value);
+ bitField0_ |= 0x00000400;
+ onChanged();
+ return this;
+ }
+ /**
+ * repeated string ip = 11;
+ * @param values The ip to add.
+ * @return This builder for chaining.
+ */
+ public Builder addAllIp(
+ java.lang.Iterablerepeated string ip = 11;
+ * @return This builder for chaining.
+ */
+ public Builder clearIp() {
+ ip_ =
+ com.google.protobuf.LazyStringArrayList.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000400);;
+ onChanged();
+ return this;
+ }
+ /**
+ * repeated string ip = 11;
+ * @param value The bytes of the ip to add.
+ * @return This builder for chaining.
+ */
+ public Builder addIpBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ ensureIpIsMutable();
+ ip_.add(value);
+ bitField0_ |= 0x00000400;
+ onChanged();
+ return this;
+ }
+
+ private org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails bankDetails_;
+ private com.google.protobuf.SingleFieldBuilderV3<
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails, org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails.Builder, org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetailsOrBuilder> bankDetailsBuilder_;
+ /**
+ * required .BankDetails bankDetails = 12;
+ * @return Whether the bankDetails field is set.
+ */
+ public boolean hasBankDetails() {
+ return ((bitField0_ & 0x00000800) != 0);
+ }
+ /**
+ * required .BankDetails bankDetails = 12;
+ * @return The bankDetails.
+ */
+ public org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails getBankDetails() {
+ if (bankDetailsBuilder_ == null) {
+ return bankDetails_ == null ? org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails.getDefaultInstance() : bankDetails_;
+ } else {
+ return bankDetailsBuilder_.getMessage();
+ }
+ }
+ /**
+ * required .BankDetails bankDetails = 12;
+ */
+ public Builder setBankDetails(org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails value) {
+ if (bankDetailsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bankDetails_ = value;
+ } else {
+ bankDetailsBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000800;
+ onChanged();
+ return this;
+ }
+ /**
+ * required .BankDetails bankDetails = 12;
+ */
+ public Builder setBankDetails(
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails.Builder builderForValue) {
+ if (bankDetailsBuilder_ == null) {
+ bankDetails_ = builderForValue.build();
+ } else {
+ bankDetailsBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000800;
+ onChanged();
+ return this;
+ }
+ /**
+ * required .BankDetails bankDetails = 12;
+ */
+ public Builder mergeBankDetails(org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails value) {
+ if (bankDetailsBuilder_ == null) {
+ if (((bitField0_ & 0x00000800) != 0) &&
+ bankDetails_ != null &&
+ bankDetails_ != org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails.getDefaultInstance()) {
+ getBankDetailsBuilder().mergeFrom(value);
+ } else {
+ bankDetails_ = value;
+ }
+ } else {
+ bankDetailsBuilder_.mergeFrom(value);
+ }
+ if (bankDetails_ != null) {
+ bitField0_ |= 0x00000800;
+ onChanged();
+ }
+ return this;
+ }
+ /**
+ * required .BankDetails bankDetails = 12;
+ */
+ public Builder clearBankDetails() {
+ bitField0_ = (bitField0_ & ~0x00000800);
+ bankDetails_ = null;
+ if (bankDetailsBuilder_ != null) {
+ bankDetailsBuilder_.dispose();
+ bankDetailsBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+ /**
+ * required .BankDetails bankDetails = 12;
+ */
+ public org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails.Builder getBankDetailsBuilder() {
+ bitField0_ |= 0x00000800;
+ onChanged();
+ return getBankDetailsFieldBuilder().getBuilder();
+ }
+ /**
+ * required .BankDetails bankDetails = 12;
+ */
+ public org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetailsOrBuilder getBankDetailsOrBuilder() {
+ if (bankDetailsBuilder_ != null) {
+ return bankDetailsBuilder_.getMessageOrBuilder();
+ } else {
+ return bankDetails_ == null ?
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails.getDefaultInstance() : bankDetails_;
+ }
+ }
+ /**
+ * required .BankDetails bankDetails = 12;
+ */
+ private com.google.protobuf.SingleFieldBuilderV3<
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails, org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails.Builder, org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetailsOrBuilder>
+ getBankDetailsFieldBuilder() {
+ if (bankDetailsBuilder_ == null) {
+ bankDetailsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails, org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails.Builder, org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetailsOrBuilder>(
+ getBankDetails(),
+ getParentForChildren(),
+ isClean());
+ bankDetails_ = null;
+ }
+ return bankDetailsBuilder_;
+ }
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+
+ // @@protoc_insertion_point(builder_scope:Msg3)
+ }
+
+ // @@protoc_insertion_point(class_scope:Msg3)
+ private static final org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 DEFAULT_INSTANCE;
+ static {
+ DEFAULT_INSTANCE = new org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3();
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.Msg3 getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ @java.lang.Deprecated public static final com.google.protobuf.Parserrequired string bankName = 1;
+ * @return Whether the bankName field is set.
+ */
+ boolean hasBankName();
+ /**
+ * required string bankName = 1;
+ * @return The bankName.
+ */
+ java.lang.String getBankName();
+ /**
+ * required string bankName = 1;
+ * @return The bytes for bankName.
+ */
+ com.google.protobuf.ByteString
+ getBankNameBytes();
+
+ /**
+ * required string cardNum = 2;
+ * @return Whether the cardNum field is set.
+ */
+ boolean hasCardNum();
+ /**
+ * required string cardNum = 2;
+ * @return The cardNum.
+ */
+ java.lang.String getCardNum();
+ /**
+ * required string cardNum = 2;
+ * @return The bytes for cardNum.
+ */
+ com.google.protobuf.ByteString
+ getCardNumBytes();
+
+ /**
+ * required string pinCode = 3;
+ * @return Whether the pinCode field is set.
+ */
+ boolean hasPinCode();
+ /**
+ * required string pinCode = 3;
+ * @return The pinCode.
+ */
+ java.lang.String getPinCode();
+ /**
+ * required string pinCode = 3;
+ * @return The bytes for pinCode.
+ */
+ com.google.protobuf.ByteString
+ getPinCodeBytes();
+ }
+ /**
+ * Protobuf type {@code BankDetails}
+ */
+ public static final class BankDetails extends
+ com.google.protobuf.GeneratedMessageV3 implements
+ // @@protoc_insertion_point(message_implements:BankDetails)
+ BankDetailsOrBuilder {
+ private static final long serialVersionUID = 0L;
+ // Use BankDetails.newBuilder() to construct.
+ private BankDetails(com.google.protobuf.GeneratedMessageV3.Builder> builder) {
+ super(builder);
+ }
+ private BankDetails() {
+ bankName_ = "";
+ cardNum_ = "";
+ pinCode_ = "";
+ }
+
+ @java.lang.Override
+ @SuppressWarnings({"unused"})
+ protected java.lang.Object newInstance(
+ UnusedPrivateParameter unused) {
+ return new BankDetails();
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor
+ getDescriptor() {
+ return org.apache.hadoop.hive.ql.anon.proto.TestMessages.internal_static_BankDetails_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return org.apache.hadoop.hive.ql.anon.proto.TestMessages.internal_static_BankDetails_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails.class, org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails.Builder.class);
+ }
+
+ private int bitField0_;
+ public static final int BANKNAME_FIELD_NUMBER = 1;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object bankName_ = "";
+ /**
+ * required string bankName = 1;
+ * @return Whether the bankName field is set.
+ */
+ @java.lang.Override
+ public boolean hasBankName() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * required string bankName = 1;
+ * @return The bankName.
+ */
+ @java.lang.Override
+ public java.lang.String getBankName() {
+ java.lang.Object ref = bankName_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ bankName_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string bankName = 1;
+ * @return The bytes for bankName.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getBankNameBytes() {
+ java.lang.Object ref = bankName_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ bankName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int CARDNUM_FIELD_NUMBER = 2;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object cardNum_ = "";
+ /**
+ * required string cardNum = 2;
+ * @return Whether the cardNum field is set.
+ */
+ @java.lang.Override
+ public boolean hasCardNum() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * required string cardNum = 2;
+ * @return The cardNum.
+ */
+ @java.lang.Override
+ public java.lang.String getCardNum() {
+ java.lang.Object ref = cardNum_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ cardNum_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string cardNum = 2;
+ * @return The bytes for cardNum.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getCardNumBytes() {
+ java.lang.Object ref = cardNum_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ cardNum_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int PINCODE_FIELD_NUMBER = 3;
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object pinCode_ = "";
+ /**
+ * required string pinCode = 3;
+ * @return Whether the pinCode field is set.
+ */
+ @java.lang.Override
+ public boolean hasPinCode() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * required string pinCode = 3;
+ * @return The pinCode.
+ */
+ @java.lang.Override
+ public java.lang.String getPinCode() {
+ java.lang.Object ref = pinCode_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ pinCode_ = s;
+ }
+ return s;
+ }
+ }
+ /**
+ * required string pinCode = 3;
+ * @return The bytes for pinCode.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString
+ getPinCodeBytes() {
+ java.lang.Object ref = pinCode_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ pinCode_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ if (!hasBankName()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasCardNum()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ if (!hasPinCode()) {
+ memoizedIsInitialized = 0;
+ return false;
+ }
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output)
+ throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 1, bankName_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 2, cardNum_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ com.google.protobuf.GeneratedMessageV3.writeString(output, 3, pinCode_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, bankName_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, cardNum_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, pinCode_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails)) {
+ return super.equals(obj);
+ }
+ org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails other = (org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails) obj;
+
+ if (hasBankName() != other.hasBankName()) return false;
+ if (hasBankName()) {
+ if (!getBankName()
+ .equals(other.getBankName())) return false;
+ }
+ if (hasCardNum() != other.hasCardNum()) return false;
+ if (hasCardNum()) {
+ if (!getCardNum()
+ .equals(other.getCardNum())) return false;
+ }
+ if (hasPinCode() != other.hasPinCode()) return false;
+ if (hasPinCode()) {
+ if (!getPinCode()
+ .equals(other.getPinCode())) return false;
+ }
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (hasBankName()) {
+ hash = (37 * hash) + BANKNAME_FIELD_NUMBER;
+ hash = (53 * hash) + getBankName().hashCode();
+ }
+ if (hasCardNum()) {
+ hash = (37 * hash) + CARDNUM_FIELD_NUMBER;
+ hash = (53 * hash) + getCardNum().hashCode();
+ }
+ if (hasPinCode()) {
+ hash = (37 * hash) + PINCODE_FIELD_NUMBER;
+ hash = (53 * hash) + getPinCode().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails parseFrom(
+ java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails parseFrom(
+ java.nio.ByteBuffer data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails parseFrom(
+ byte[] data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails parseFrom(
+ com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input);
+ }
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessageV3
+ .parseWithIOException(PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() { return newBuilder(); }
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+ public static Builder newBuilder(org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE
+ ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+ /**
+ * Protobuf type {@code BankDetails}
+ */
+ public static final class Builder extends
+ com.google.protobuf.GeneratedMessageV3.Builderrequired string bankName = 1;
+ * @return Whether the bankName field is set.
+ */
+ public boolean hasBankName() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+ /**
+ * required string bankName = 1;
+ * @return The bankName.
+ */
+ public java.lang.String getBankName() {
+ java.lang.Object ref = bankName_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ bankName_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string bankName = 1;
+ * @return The bytes for bankName.
+ */
+ public com.google.protobuf.ByteString
+ getBankNameBytes() {
+ java.lang.Object ref = bankName_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ bankName_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string bankName = 1;
+ * @param value The bankName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setBankName(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ bankName_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string bankName = 1;
+ * @return This builder for chaining.
+ */
+ public Builder clearBankName() {
+ bankName_ = getDefaultInstance().getBankName();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string bankName = 1;
+ * @param value The bytes for bankName to set.
+ * @return This builder for chaining.
+ */
+ public Builder setBankNameBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ bankName_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object cardNum_ = "";
+ /**
+ * required string cardNum = 2;
+ * @return Whether the cardNum field is set.
+ */
+ public boolean hasCardNum() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+ /**
+ * required string cardNum = 2;
+ * @return The cardNum.
+ */
+ public java.lang.String getCardNum() {
+ java.lang.Object ref = cardNum_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ cardNum_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string cardNum = 2;
+ * @return The bytes for cardNum.
+ */
+ public com.google.protobuf.ByteString
+ getCardNumBytes() {
+ java.lang.Object ref = cardNum_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ cardNum_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string cardNum = 2;
+ * @param value The cardNum to set.
+ * @return This builder for chaining.
+ */
+ public Builder setCardNum(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ cardNum_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string cardNum = 2;
+ * @return This builder for chaining.
+ */
+ public Builder clearCardNum() {
+ cardNum_ = getDefaultInstance().getCardNum();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string cardNum = 2;
+ * @param value The bytes for cardNum to set.
+ * @return This builder for chaining.
+ */
+ public Builder setCardNumBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ cardNum_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object pinCode_ = "";
+ /**
+ * required string pinCode = 3;
+ * @return Whether the pinCode field is set.
+ */
+ public boolean hasPinCode() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+ /**
+ * required string pinCode = 3;
+ * @return The pinCode.
+ */
+ public java.lang.String getPinCode() {
+ java.lang.Object ref = pinCode_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs =
+ (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (bs.isValidUtf8()) {
+ pinCode_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+ /**
+ * required string pinCode = 3;
+ * @return The bytes for pinCode.
+ */
+ public com.google.protobuf.ByteString
+ getPinCodeBytes() {
+ java.lang.Object ref = pinCode_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8(
+ (java.lang.String) ref);
+ pinCode_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+ /**
+ * required string pinCode = 3;
+ * @param value The pinCode to set.
+ * @return This builder for chaining.
+ */
+ public Builder setPinCode(
+ java.lang.String value) {
+ if (value == null) { throw new NullPointerException(); }
+ pinCode_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+ /**
+ * required string pinCode = 3;
+ * @return This builder for chaining.
+ */
+ public Builder clearPinCode() {
+ pinCode_ = getDefaultInstance().getPinCode();
+ bitField0_ = (bitField0_ & ~0x00000004);
+ onChanged();
+ return this;
+ }
+ /**
+ * required string pinCode = 3;
+ * @param value The bytes for pinCode to set.
+ * @return This builder for chaining.
+ */
+ public Builder setPinCodeBytes(
+ com.google.protobuf.ByteString value) {
+ if (value == null) { throw new NullPointerException(); }
+ pinCode_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+ @java.lang.Override
+ public final Builder setUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.setUnknownFields(unknownFields);
+ }
+
+ @java.lang.Override
+ public final Builder mergeUnknownFields(
+ final com.google.protobuf.UnknownFieldSet unknownFields) {
+ return super.mergeUnknownFields(unknownFields);
+ }
+
+
+ // @@protoc_insertion_point(builder_scope:BankDetails)
+ }
+
+ // @@protoc_insertion_point(class_scope:BankDetails)
+ private static final org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails DEFAULT_INSTANCE;
+ static {
+ DEFAULT_INSTANCE = new org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails();
+ }
+
+ public static org.apache.hadoop.hive.ql.anon.proto.TestMessages.BankDetails getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ @java.lang.Deprecated public static final com.google.protobuf.Parser