Vladsz83 commented on code in PR #13421:
URL: https://github.com/apache/ignite/pull/13421#discussion_r3691439773


##########
modules/core/src/main/java/org/apache/ignite/internal/CoreMessagesProvider.java:
##########
@@ -366,380 +365,364 @@ public CoreMessagesProvider(Marshaller dfltMarsh, 
Marshaller schemaAwareMarsh) {
 
         // [5000 - 5500]: Utility messages. Most of them originally come from 
Discovery.
         msgIdx = 5000;
-        withNoSchema(CompressedMessage.class);
-        withNoSchema(ErrorMessage.class);
-        withNoSchema(InetSocketAddressMessage.class);
-        withNoSchema(InetAddressMessage.class);
-        withNoSchema(TcpDiscoveryNode.class);
-        withNoSchema(DiscoveryDataPacket.class);
-        withNoSchema(GridByteArrayList.class);
-        withNoSchema(CacheVersionedValue.class);
-        withNoSchema(KeyedVersionedValue.class);
-        withNoSchema(WALPointer.class);
-        withNoSchema(SerializableDataBagItemWrapper.class);
-        withSchema(GridTopicMessage.class);
-        withNoSchema(GridIntList.class);
+        register(factory, CompressedMessage.class, msgIdx++);
+        register(factory, ErrorMessage.class, msgIdx++);
+        register(factory, InetSocketAddressMessage.class, msgIdx++);
+        register(factory, InetAddressMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryNode.class, msgIdx++);
+        register(factory, DiscoveryDataPacket.class, msgIdx++);
+        register(factory, GridByteArrayList.class, msgIdx++);
+        register(factory, CacheVersionedValue.class, msgIdx++);
+        register(factory, KeyedVersionedValue.class, msgIdx++);
+        register(factory, WALPointer.class, msgIdx++);
+        register(factory, SerializableDataBagItemWrapper.class, msgIdx++);
+        register(factory, GridTopicMessage.class, msgIdx++);
+        register(factory, GridIntList.class, msgIdx++);
 
         // [5700 - 5900]: Discovery originated messages.
         msgIdx = 5700;
-        withNoSchema(TcpDiscoveryHandshakeRequest.class);
-        withNoSchema(TcpDiscoveryHandshakeResponse.class);
-        withNoSchema(TcpDiscoveryJoinRequestMessage.class);
-        withNoSchema(TcpDiscoveryNodeAddedMessage.class);
-        withNoSchema(TcpDiscoveryNodeAddFinishedMessage.class);
-        withNoSchema(TcpDiscoveryNodeLeftMessage.class);
-        withNoSchema(TcpDiscoveryNodeFailedMessage.class);
-        withNoSchema(TcpDiscoveryConnectionCheckMessage.class);
-        withNoSchema(TcpDiscoveryPingRequest.class);
-        withNoSchema(TcpDiscoveryPingResponse.class);
-        withNoSchema(TcpDiscoveryClientPingRequest.class);
-        withNoSchema(TcpDiscoveryClientPingResponse.class);
-        withNoSchema(TcpDiscoveryClientAckResponse.class);
-        withNoSchema(TcpDiscoveryClientReconnectMessage.class);
-        withNoSchema(TcpDiscoveryDiscardMessage.class);
-        withNoSchema(TcpDiscoveryCheckFailedMessage.class);
-        withNoSchema(TcpDiscoveryLoopbackProblemMessage.class);
-        withNoSchema(TcpDiscoveryRingLatencyCheckMessage.class);
-        withNoSchema(TcpDiscoveryDuplicateIdMessage.class);
-        withNoSchema(TcpDiscoveryCustomEventMessage.class);
-        withNoSchema(TcpDiscoveryServerOnlyCustomEventMessage.class);
+        register(factory, TcpDiscoveryHandshakeRequest.class, msgIdx++);
+        register(factory, TcpDiscoveryHandshakeResponse.class, msgIdx++);
+        register(factory, TcpDiscoveryJoinRequestMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryNodeAddedMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryNodeAddFinishedMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryNodeLeftMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryNodeFailedMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryConnectionCheckMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryPingRequest.class, msgIdx++);
+        register(factory, TcpDiscoveryPingResponse.class, msgIdx++);
+        register(factory, TcpDiscoveryClientPingRequest.class, msgIdx++);
+        register(factory, TcpDiscoveryClientPingResponse.class, msgIdx++);
+        register(factory, TcpDiscoveryClientAckResponse.class, msgIdx++);
+        register(factory, TcpDiscoveryClientReconnectMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryDiscardMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryCheckFailedMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryLoopbackProblemMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryRingLatencyCheckMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryDuplicateIdMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryCustomEventMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryServerOnlyCustomEventMessage.class, 
msgIdx++);
 
         msgIdx = 5900;
-        withNoSchema(TcpDiscoveryStatusCheckMessage.class);
+        register(factory, TcpDiscoveryStatusCheckMessage.class, msgIdx++);
 
         // [6000 - 6200]: Snapshot operation messages. Most of them originally 
come from Discovery.
         msgIdx = 6000;
-        withNoSchema(SnapshotStartDiscoveryMessage.class);
-        withNoSchema(SnapshotCheckProcessRequest.class);
-        withNoSchema(SnapshotOperationRequest.class);
-        withNoSchema(SnapshotOperationEndRequest.class);
-        withNoSchema(SnapshotRestoreStartRequest.class);
-        withNoSchema(SnapshotOperationResponse.class);
-        withNoSchema(SnapshotHandlerResult.class);
-        withNoSchema(SnapshotCheckResponse.class);
-        withNoSchema(SnapshotPartitionsVerifyHandlerResponse.class);
-        withNoSchema(SnapshotRestoreOperationResponse.class);
-        withNoSchema(SnapshotMetadataResponse.class);
-        withNoSchema(SnapshotMetadata.class);
-        withNoSchema(SnapshotCheckPartitionHashesResponse.class);
-        withNoSchema(SnapshotCheckHandlersResponse.class);
-        withNoSchema(SnapshotFilesRequestMessage.class);
-        withNoSchema(SnapshotFilesFailureMessage.class);
-        withNoSchema(IncrementalSnapshotVerifyResult.class);
-        withNoSchema(IncrementalSnapshotAwareMessage.class);
+        register(factory, SnapshotStartDiscoveryMessage.class, msgIdx++);
+        register(factory, SnapshotCheckProcessRequest.class, msgIdx++);
+        register(factory, SnapshotOperationRequest.class, msgIdx++);
+        register(factory, SnapshotOperationEndRequest.class, msgIdx++);
+        register(factory, SnapshotRestoreStartRequest.class, msgIdx++);
+        register(factory, SnapshotOperationResponse.class, msgIdx++);
+        register(factory, SnapshotHandlerResult.class, msgIdx++);
+        register(factory, SnapshotCheckResponse.class, msgIdx++);
+        register(factory, SnapshotPartitionsVerifyHandlerResponse.class, 
msgIdx++);
+        register(factory, SnapshotRestoreOperationResponse.class, msgIdx++);
+        register(factory, SnapshotMetadataResponse.class, msgIdx++);
+        register(factory, SnapshotMetadata.class, msgIdx++);
+        register(factory, SnapshotCheckPartitionHashesResponse.class, 
msgIdx++);
+        register(factory, SnapshotCheckHandlersResponse.class, msgIdx++);
+        register(factory, SnapshotFilesRequestMessage.class, msgIdx++);
+        register(factory, SnapshotFilesFailureMessage.class, msgIdx++);
+        register(factory, IncrementalSnapshotVerifyResult.class, msgIdx++);
+        register(factory, IncrementalSnapshotAwareMessage.class, msgIdx++);
 
         // [6300 - 6400]: Services messages. Most of them originally come from 
Discovery.
         msgIdx = 6300;
-        withNoSchema(ServiceDeploymentProcessId.class);
-        withSchema(ServiceSingleNodeDeploymentResult.class);
-        withNoSchema(ServiceClusterDeploymentResult.class);
-        withNoSchema(ServiceDeploymentRequest.class);
-        withNoSchema(ServiceUndeploymentRequest.class);
-        withNoSchema(ServiceClusterDeploymentResultBatch.class);
-        withNoSchema(ServiceChangeBatchRequest.class);
-        withNoSchema(ServiceSingleNodeDeploymentResultBatch.class);
-        withNoSchema(ServiceProcessorCommonDiscoveryData.class);
-        withNoSchema(ServiceProcessorJoinNodeDiscoveryData.class);
-        withNoSchema(ServiceInfo.class);
-        withNoSchema(ServiceTopology.class);
-        withNoSchema(LazyServiceConfigurationMessage.class);
+        register(factory, ServiceDeploymentProcessId.class, msgIdx++);
+        register(factory, ServiceSingleNodeDeploymentResult.class, msgIdx++);
+        register(factory, ServiceClusterDeploymentResult.class, msgIdx++);
+        register(factory, ServiceDeploymentRequest.class, msgIdx++);
+        register(factory, ServiceUndeploymentRequest.class, msgIdx++);
+        register(factory, ServiceClusterDeploymentResultBatch.class, msgIdx++);
+        register(factory, ServiceChangeBatchRequest.class, msgIdx++);
+        register(factory, ServiceSingleNodeDeploymentResultBatch.class, 
msgIdx++);
+        register(factory, ServiceProcessorCommonDiscoveryData.class, msgIdx++);
+        register(factory, ServiceProcessorJoinNodeDiscoveryData.class, 
msgIdx++);
+        register(factory, ServiceInfo.class, msgIdx++);
+        register(factory, ServiceTopology.class, msgIdx++);
+        register(factory, LazyServiceConfigurationMessage.class, msgIdx++);
 
         // [6500 - 6700]: DiscoveryCustomMessage
         msgIdx = 6500;
-        withNoSchema(TcpConnectionRequestDiscoveryMessage.class);
-        withNoSchema(DistributedMetaStorageUpdateMessage.class);
-        withNoSchema(DistributedMetaStorageUpdateAckMessage.class);
-        withNoSchema(DistributedMetaStorageCasMessage.class);
-        withNoSchema(DistributedMetaStorageCasAckMessage.class);
-        withNoSchema(FullMessage.class);
-        withNoSchema(InitMessage.class);
-        withNoSchema(CacheStatisticsModeChangeMessage.class);
-        withNoSchema(MetadataRemoveAcceptedMessage.class);
-        withNoSchema(MetadataRemoveProposedMessage.class);
-        withNoSchema(WalStateFinishMessage.class);
-        withNoSchema(WalStateProposeMessage.class);
-        withNoSchema(MetadataUpdateAcceptedMessage.class);
-        withNoSchema(MetadataUpdateProposedMessage.class);
-        withNoSchema(TxTimeoutOnPartitionMapExchangeChangeMessage.class);
-        withNoSchema(UserAcceptedMessage.class);
-        withNoSchema(UserProposedMessage.class);
-        withNoSchema(ChangeGlobalStateFinishMessage.class);
-        withNoSchema(StopRoutineAckDiscoveryMessage.class);
-        withNoSchema(StopRoutineDiscoveryMessage.class);
-        withNoSchema(CacheAffinityChangeMessage.class);
-        withNoSchema(ClientCacheChangeDiscoveryMessage.class);
-        withNoSchema(MappingAcceptedMessage.class);
-        withNoSchema(MappingProposedMessage.class);
-        withNoSchema(ExchangeFailureMessage.class);
-        withNoSchema(CacheStatisticsClearMessage.class);
-        withNoSchema(ClientCacheChangeDummyDiscoveryMessage.class);
-        withNoSchema(DynamicCacheChangeBatch.class);
-        withNoSchema(CacheClientReconnectDiscoveryData.class);
-        withNoSchema(CacheGroupRecoveryState.class);
-        withNoSchema(CacheJoinInfo.class);
-        withNoSchema(CacheJoinNodeDiscoveryData.class);
-        withNoSchema(CacheReconnectInfo.class);
-        withNoSchema(ClusterCacheGroupRecoveryData.class);
+        register(factory, TcpConnectionRequestDiscoveryMessage.class, 
msgIdx++);
+        register(factory, DistributedMetaStorageUpdateMessage.class, msgIdx++);
+        register(factory, DistributedMetaStorageUpdateAckMessage.class, 
msgIdx++);
+        register(factory, DistributedMetaStorageCasMessage.class, msgIdx++);
+        register(factory, DistributedMetaStorageCasAckMessage.class, msgIdx++);
+        register(factory, FullMessage.class, msgIdx++);
+        register(factory, InitMessage.class, msgIdx++);
+        register(factory, CacheStatisticsModeChangeMessage.class, msgIdx++);
+        register(factory, MetadataRemoveAcceptedMessage.class, msgIdx++);
+        register(factory, MetadataRemoveProposedMessage.class, msgIdx++);
+        register(factory, WalStateFinishMessage.class, msgIdx++);
+        register(factory, WalStateProposeMessage.class, msgIdx++);
+        register(factory, MetadataUpdateAcceptedMessage.class, msgIdx++);
+        register(factory, MetadataUpdateProposedMessage.class, msgIdx++);
+        register(factory, TxTimeoutOnPartitionMapExchangeChangeMessage.class, 
msgIdx++);
+        register(factory, UserAcceptedMessage.class, msgIdx++);
+        register(factory, UserProposedMessage.class, msgIdx++);
+        register(factory, ChangeGlobalStateFinishMessage.class, msgIdx++);
+        register(factory, StopRoutineAckDiscoveryMessage.class, msgIdx++);
+        register(factory, StopRoutineDiscoveryMessage.class, msgIdx++);
+        register(factory, CacheAffinityChangeMessage.class, msgIdx++);
+        register(factory, ClientCacheChangeDiscoveryMessage.class, msgIdx++);
+        register(factory, MappingAcceptedMessage.class, msgIdx++);
+        register(factory, MappingProposedMessage.class, msgIdx++);
+        register(factory, ExchangeFailureMessage.class, msgIdx++);
+        register(factory, CacheStatisticsClearMessage.class, msgIdx++);
+        register(factory, ClientCacheChangeDummyDiscoveryMessage.class, 
msgIdx++);
+        register(factory, DynamicCacheChangeBatch.class, msgIdx++);
+        register(factory, CacheClientReconnectDiscoveryData.class, msgIdx++);
+        register(factory, CacheGroupRecoveryState.class, msgIdx++);
+        register(factory, CacheJoinInfo.class, msgIdx++);
+        register(factory, CacheJoinNodeDiscoveryData.class, msgIdx++);
+        register(factory, CacheReconnectInfo.class, msgIdx++);
+        register(factory, ClusterCacheGroupRecoveryData.class, msgIdx++);
 
         // [10000 - 10200]: Transaction and lock related messages. Most of 
them originally comes from Communication.
         msgIdx = 10000;
-        withNoSchema(TxInfo.class);
-        withSchema(TxEntriesInfo.class);
-        withNoSchema(TxLock.class);
-        withSchema(TxLocksRequest.class);
-        withSchema(TxLocksResponse.class);
-        withSchema(IgniteTxKey.class);
-        withSchema(IgniteTxEntry.class);
-        withSchema(TxEntryValueHolder.class);
-        withNoSchema(GridCacheTxRecoveryRequest.class);
-        withNoSchema(GridCacheTxRecoveryResponse.class);
-        withNoSchema(GridDistributedTxFinishRequest.class);
-        withNoSchema(GridDistributedTxFinishResponse.class);
-        withSchema(GridDistributedTxPrepareRequest.class);
-        withNoSchema(GridDistributedTxPrepareResponse.class);
-        withNoSchema(GridDhtTxFinishRequest.class);
-        withSchema(GridDhtTxFinishResponse.class);
-        withSchema(GridDhtTxPrepareRequest.class);
-        withSchema(GridDhtTxPrepareResponse.class);
-        withNoSchema(GridNearTxFinishRequest.class);
-        withNoSchema(GridNearTxFinishResponse.class);
-        withNoSchema(GridNearTxPrepareRequest.class);
-        withSchema(GridNearTxPrepareResponse.class);
-        withSchema(GridDhtLockRequest.class);
-        withSchema(GridDhtLockResponse.class);
-        withSchema(GridDhtUnlockRequest.class);
-        withNoSchema(GridNearLockRequest.class);
-        withNoSchema(GridNearLockResponse.class);
-        withSchema(GridNearUnlockRequest.class);
-        withSchema(GridDistributedLockRequest.class);
-        withSchema(GridDistributedLockResponse.class);
-        withNoSchema(GridDhtTxOnePhaseCommitAckRequest.class);
-        withSchema(TransactionAttributesAwareRequest.class);
+        register(factory, TxInfo.class, msgIdx++);
+        register(factory, TxEntriesInfo.class, msgIdx++);
+        register(factory, TxLock.class, msgIdx++);
+        register(factory, TxLocksRequest.class, msgIdx++);
+        register(factory, TxLocksResponse.class, msgIdx++);
+        register(factory, IgniteTxKey.class, msgIdx++);
+        register(factory, IgniteTxEntry.class, msgIdx++);
+        register(factory, TxEntryValueHolder.class, msgIdx++);
+        register(factory, GridCacheTxRecoveryRequest.class, msgIdx++);
+        register(factory, GridCacheTxRecoveryResponse.class, msgIdx++);
+        register(factory, GridDistributedTxFinishRequest.class, msgIdx++);
+        register(factory, GridDistributedTxFinishResponse.class, msgIdx++);
+        register(factory, GridDistributedTxPrepareRequest.class, msgIdx++);
+        register(factory, GridDistributedTxPrepareResponse.class, msgIdx++);
+        register(factory, GridDhtTxFinishRequest.class, msgIdx++);
+        register(factory, GridDhtTxFinishResponse.class, msgIdx++);
+        register(factory, GridDhtTxPrepareRequest.class, msgIdx++);
+        register(factory, GridDhtTxPrepareResponse.class, msgIdx++);
+        register(factory, GridNearTxFinishRequest.class, msgIdx++);
+        register(factory, GridNearTxFinishResponse.class, msgIdx++);
+        register(factory, GridNearTxPrepareRequest.class, msgIdx++);
+        register(factory, GridNearTxPrepareResponse.class, msgIdx++);
+        register(factory, GridDhtLockRequest.class, msgIdx++);
+        register(factory, GridDhtLockResponse.class, msgIdx++);
+        register(factory, GridDhtUnlockRequest.class, msgIdx++);
+        register(factory, GridNearLockRequest.class, msgIdx++);
+        register(factory, GridNearLockResponse.class, msgIdx++);
+        register(factory, GridNearUnlockRequest.class, msgIdx++);
+        register(factory, GridDistributedLockRequest.class, msgIdx++);
+        register(factory, GridDistributedLockResponse.class, msgIdx++);
+        register(factory, GridDhtTxOnePhaseCommitAckRequest.class, msgIdx++);
+        register(factory, TransactionAttributesAwareRequest.class, msgIdx++);
 
         // [10300 - 10500]: Cache, DHT messages.
         msgIdx = 10300;
-        withSchema(GridDhtForceKeysRequest.class);
-        withSchema(GridDhtForceKeysResponse.class);
-        withNoSchema(GridDhtAtomicDeferredUpdateResponse.class);
-        withNoSchema(GridDhtAtomicUpdateRequest.class);
-        withSchema(GridDhtAtomicUpdateResponse.class);
-        withSchema(GridNearAtomicFullUpdateRequest.class);
-        withSchema(GridDhtAtomicSingleUpdateRequest.class);
-        withSchema(GridNearAtomicUpdateResponse.class);
-        withSchema(GridNearAtomicSingleUpdateRequest.class);
-        withSchema(GridNearAtomicSingleUpdateInvokeRequest.class);
-        withSchema(GridNearAtomicSingleUpdateFilterRequest.class);
-        withNoSchema(GridNearAtomicCheckUpdateRequest.class);
-        withSchema(NearCacheUpdates.class);
-        withSchema(GridNearGetRequest.class);
-        withSchema(GridNearGetResponse.class);
-        withSchema(GridNearSingleGetRequest.class);
-        withSchema(GridNearSingleGetResponse.class);
-        withNoSchema(GridDhtAtomicNearResponse.class);
-        withSchema(GridCacheTtlUpdateRequest.class);
-        withSchema(GridCacheReturn.class);
-        withSchema(GridCacheEntryInfo.class);
-        withSchema(CacheInvokeDirectResult.class);
-        withNoSchema(GridCacheRawVersionedEntry.class);
-        withSchema(CacheEvictionEntry.class);
-        withSchema(CacheEntryPredicateAdapter.class);
-        withNoSchema(GridContinuousMessage.class);
-        withNoSchema(ContinuousRoutineStartResultMessage.class);
-        withSchema(UpdateErrors.class);
-        withNoSchema(LatchAckMessage.class);
-        withSchema(AtomicApplicationAttributesAwareRequest.class);
-        withNoSchema(StartRequestData.class);
-        withNoSchema(StartRoutineAckDiscoveryMessage.class);
-        withNoSchema(StartRoutineDiscoveryMessage.class);
-        withNoSchema(StoredCacheData.class);
+        register(factory, GridDhtForceKeysRequest.class, msgIdx++);
+        register(factory, GridDhtForceKeysResponse.class, msgIdx++);
+        register(factory, GridDhtAtomicDeferredUpdateResponse.class, msgIdx++);
+        register(factory, GridDhtAtomicUpdateRequest.class, msgIdx++);
+        register(factory, GridDhtAtomicUpdateResponse.class, msgIdx++);
+        register(factory, GridNearAtomicFullUpdateRequest.class, msgIdx++);
+        register(factory, GridDhtAtomicSingleUpdateRequest.class, msgIdx++);
+        register(factory, GridNearAtomicUpdateResponse.class, msgIdx++);
+        register(factory, GridNearAtomicSingleUpdateRequest.class, msgIdx++);
+        register(factory, GridNearAtomicSingleUpdateInvokeRequest.class, 
msgIdx++);
+        register(factory, GridNearAtomicSingleUpdateFilterRequest.class, 
msgIdx++);
+        register(factory, GridNearAtomicCheckUpdateRequest.class, msgIdx++);
+        register(factory, NearCacheUpdates.class, msgIdx++);
+        register(factory, GridNearGetRequest.class, msgIdx++);
+        register(factory, GridNearGetResponse.class, msgIdx++);
+        register(factory, GridNearSingleGetRequest.class, msgIdx++);
+        register(factory, GridNearSingleGetResponse.class, msgIdx++);
+        register(factory, GridDhtAtomicNearResponse.class, msgIdx++);
+        register(factory, GridCacheTtlUpdateRequest.class, msgIdx++);
+        register(factory, GridCacheReturn.class, msgIdx++);
+        register(factory, GridCacheEntryInfo.class, msgIdx++);
+        register(factory, CacheInvokeDirectResult.class, msgIdx++);
+        register(factory, GridCacheRawVersionedEntry.class, msgIdx++);
+        register(factory, CacheEvictionEntry.class, msgIdx++);
+        register(factory, CacheEntryPredicateAdapter.class, msgIdx++);
+        register(factory, GridContinuousMessage.class, msgIdx++);
+        register(factory, ContinuousRoutineStartResultMessage.class, msgIdx++);
+        register(factory, UpdateErrors.class, msgIdx++);
+        register(factory, LatchAckMessage.class, msgIdx++);
+        register(factory, AtomicApplicationAttributesAwareRequest.class, 
msgIdx++);
+        register(factory, StartRequestData.class, msgIdx++);
+        register(factory, StartRoutineAckDiscoveryMessage.class, msgIdx++);
+        register(factory, StartRoutineDiscoveryMessage.class, msgIdx++);
+        register(factory, StoredCacheData.class, msgIdx++);
 
         // [10600-10800]: Affinity & partition maps.
         msgIdx = 10600;
-        withNoSchema(GridDhtAffinityAssignmentRequest.class);
-        withNoSchema(GridDhtAffinityAssignmentResponse.class);
-        withNoSchema(CacheGroupAffinityMessage.class);
-        withNoSchema(ExchangeInfo.class);
-        withNoSchema(PartitionUpdateCountersMessage.class);
-        withNoSchema(CachePartitionPartialCountersMap.class);
-        withNoSchema(IgniteDhtDemandedPartitionsMap.class);
-        withNoSchema(CachePartitionFullCountersMap.class);
-        withNoSchema(GroupPartitionIdPair.class);
-        withNoSchema(GridPartitionStateMap.class);
-        withNoSchema(GridDhtPartitionMap.class);
-        withNoSchema(GridDhtPartitionFullMap.class);
-        withNoSchema(GridDhtPartitionExchangeId.class);
-        withNoSchema(GridCheckpointRequest.class);
-        withNoSchema(GridDhtPartitionDemandMessage.class);
-        withSchema(GridDhtPartitionSupplyMessage.class);
-        withNoSchema(GridDhtPartitionsFullMessage.class);
-        withNoSchema(GridDhtPartitionsSingleMessage.class);
-        withNoSchema(GridDhtPartitionsSingleRequest.class);
-        withNoSchema(PartitionKey.class);
+        register(factory, GridDhtAffinityAssignmentRequest.class, msgIdx++);
+        register(factory, GridDhtAffinityAssignmentResponse.class, msgIdx++);
+        register(factory, CacheGroupAffinityMessage.class, msgIdx++);
+        register(factory, ExchangeInfo.class, msgIdx++);
+        register(factory, PartitionUpdateCountersMessage.class, msgIdx++);
+        register(factory, CachePartitionPartialCountersMap.class, msgIdx++);
+        register(factory, IgniteDhtDemandedPartitionsMap.class, msgIdx++);
+        register(factory, CachePartitionFullCountersMap.class, msgIdx++);
+        register(factory, GroupPartitionIdPair.class, msgIdx++);
+        register(factory, GridPartitionStateMap.class, msgIdx++);
+        register(factory, GridDhtPartitionMap.class, msgIdx++);
+        register(factory, GridDhtPartitionFullMap.class, msgIdx++);
+        register(factory, GridDhtPartitionExchangeId.class, msgIdx++);
+        register(factory, GridCheckpointRequest.class, msgIdx++);
+        register(factory, GridDhtPartitionDemandMessage.class, msgIdx++);
+        register(factory, GridDhtPartitionSupplyMessage.class, msgIdx++);
+        register(factory, GridDhtPartitionsFullMessage.class, msgIdx++);
+        register(factory, GridDhtPartitionsSingleMessage.class, msgIdx++);
+        register(factory, GridDhtPartitionsSingleRequest.class, msgIdx++);
+        register(factory, PartitionKey.class, msgIdx++);
 
         // [10900-11100]: Query, schema and SQL related messages.
         msgIdx = 10900;
-        withNoSchema(SchemaAlterTableAddColumnOperation.class);
-        withNoSchema(SchemaIndexCreateOperation.class);
-        withNoSchema(SchemaIndexDropOperation.class);
-        withNoSchema(SchemaAlterTableDropColumnOperation.class);
-        withNoSchema(SchemaAddQueryEntityOperation.class);
-        withNoSchema(SchemaOperationStatusMessage.class);
-        withNoSchema(SchemaProposeDiscoveryMessage.class);
-        withNoSchema(SchemaFinishDiscoveryMessage.class);
-        withNoSchema(QueryField.class);
-        withNoSchema(QueryIndexMessage.class);
-        withNoSchema(GridCacheSqlQuery.class);
-        withSchema(GridCacheQueryRequest.class);
-        withSchema(GridCacheQueryResponse.class);
-        withNoSchema(GridQueryCancelRequest.class);
-        withNoSchema(GridQueryFailResponse.class);
-        withNoSchema(GridQueryNextPageRequest.class);
-        withNoSchema(GridQueryNextPageResponse.class);
-        withNoSchema(GridQueryKillRequest.class);
-        withNoSchema(GridQueryKillResponse.class);
-        withNoSchema(IndexKeyDefinition.class);
-        withNoSchema(IndexKeyTypeSettings.class);
-        withNoSchema(IndexQueryResultMeta.class);
-        withNoSchema(StatisticsKeyMessage.class);
-        withNoSchema(StatisticsDecimalMessage.class);
-        withNoSchema(StatisticsObjectData.class);
-        withNoSchema(StatisticsColumnData.class);
-        withNoSchema(StatisticsRequest.class);
-        withNoSchema(StatisticsResponse.class);
-        withNoSchema(CacheContinuousQueryBatchAck.class);
-        withNoSchema(GridDhtTxSalvageMessage.class);
-        withSchema(CacheContinuousQueryEntry.class);
-        withNoSchema(QueryInlineSizesDataBagItem.class);
-        withNoSchema(QueryProposalsDataBagItem.class);
-        withNoSchema(QueryEntityMessage.class);
-        withNoSchema(QueryEntityExMessage.class);
+        register(factory, SchemaAlterTableAddColumnOperation.class, msgIdx++);
+        register(factory, SchemaIndexCreateOperation.class, msgIdx++);
+        register(factory, SchemaIndexDropOperation.class, msgIdx++);
+        register(factory, SchemaAlterTableDropColumnOperation.class, msgIdx++);
+        register(factory, SchemaAddQueryEntityOperation.class, msgIdx++);
+        register(factory, SchemaOperationStatusMessage.class, msgIdx++);
+        register(factory, SchemaProposeDiscoveryMessage.class, msgIdx++);
+        register(factory, SchemaFinishDiscoveryMessage.class, msgIdx++);
+        register(factory, QueryField.class, msgIdx++);
+        register(factory, QueryIndexMessage.class, msgIdx++);
+        register(factory, GridCacheSqlQuery.class, msgIdx++);
+        register(factory, GridCacheQueryRequest.class, msgIdx++);
+        register(factory, GridCacheQueryResponse.class, msgIdx++);
+        register(factory, GridQueryCancelRequest.class, msgIdx++);
+        register(factory, GridQueryFailResponse.class, msgIdx++);
+        register(factory, GridQueryNextPageRequest.class, msgIdx++);
+        register(factory, GridQueryNextPageResponse.class, msgIdx++);
+        register(factory, GridQueryKillRequest.class, msgIdx++);
+        register(factory, GridQueryKillResponse.class, msgIdx++);
+        register(factory, IndexKeyDefinition.class, msgIdx++);
+        register(factory, IndexKeyTypeSettings.class, msgIdx++);
+        register(factory, IndexQueryResultMeta.class, msgIdx++);
+        register(factory, StatisticsKeyMessage.class, msgIdx++);
+        register(factory, StatisticsDecimalMessage.class, msgIdx++);
+        register(factory, StatisticsObjectData.class, msgIdx++);
+        register(factory, StatisticsColumnData.class, msgIdx++);
+        register(factory, StatisticsRequest.class, msgIdx++);
+        register(factory, StatisticsResponse.class, msgIdx++);
+        register(factory, CacheContinuousQueryBatchAck.class, msgIdx++);
+        register(factory, GridDhtTxSalvageMessage.class, msgIdx++);
+        register(factory, CacheContinuousQueryEntry.class, msgIdx++);
+        register(factory, QueryInlineSizesDataBagItem.class, msgIdx++);
+        register(factory, QueryProposalsDataBagItem.class, msgIdx++);
+        register(factory, QueryEntityMessage.class, msgIdx++);
+        register(factory, QueryEntityExMessage.class, msgIdx++);
 
         // [11200 - 11300]: Compute, distributed process messages.
         msgIdx = 11200;
-        withNoSchema(GridJobCancelRequest.class);
-        withSchema(GridJobExecuteRequest.class);
-        withSchema(GridJobExecuteResponse.class);
-        withNoSchema(GridJobSiblingsRequest.class);
-        withSchema(GridJobSiblingsResponse.class);
-        withNoSchema(GridTaskCancelRequest.class);
-        withSchema(GridTaskSessionRequest.class);
-        withNoSchema(GridTaskResultRequest.class);
-        withSchema(GridTaskResultResponse.class);
-        withNoSchema(JobStealingRequest.class);
-        withNoSchema(SingleNodeMessage.class);
+        register(factory, GridJobCancelRequest.class, msgIdx++);
+        register(factory, GridJobExecuteRequest.class, msgIdx++);
+        register(factory, GridJobExecuteResponse.class, msgIdx++);
+        register(factory, GridJobSiblingsRequest.class, msgIdx++);
+        register(factory, GridJobSiblingsResponse.class, msgIdx++);
+        register(factory, GridTaskCancelRequest.class, msgIdx++);
+        register(factory, GridTaskSessionRequest.class, msgIdx++);
+        register(factory, GridTaskResultRequest.class, msgIdx++);
+        register(factory, GridTaskResultResponse.class, msgIdx++);
+        register(factory, JobStealingRequest.class, msgIdx++);
+        register(factory, SingleNodeMessage.class, msgIdx++);
 
         // [11500 - 11600]:  IO, networking messages.
         msgIdx = NODE_ID_MSG_TYPE;
-        withNoSchema(NodeIdMessage.class);
+        register(factory, NodeIdMessage.class, msgIdx++);
         msgIdx = HANDSHAKE_MSG_TYPE;
-        withNoSchema(HandshakeMessage.class);
+        register(factory, HandshakeMessage.class, msgIdx++);
         msgIdx = HANDSHAKE_WAIT_MSG_TYPE;
-        withNoSchema(HandshakeWaitMessage.class);
-        withNoSchema(GridIoMessage.class);
-        withNoSchema(IgniteIoTestMessage.class);
-        withSchema(GridIoUserMessage.class);
-        withNoSchema(RecoveryLastReceivedMessage.class);
-        withNoSchema(TcpInverseConnectionResponseMessage.class);
-        withNoSchema(SessionChannelMessage.class);
+        register(factory, HandshakeWaitMessage.class, msgIdx++);
+        register(factory, GridIoMessage.class, msgIdx++);
+        register(factory, IgniteIoTestMessage.class, msgIdx++);
+        register(factory, GridIoUserMessage.class, msgIdx++);
+        register(factory, RecoveryLastReceivedMessage.class, msgIdx++);
+        register(factory, TcpInverseConnectionResponseMessage.class, msgIdx++);
+        register(factory, SessionChannelMessage.class, msgIdx++);
 
         // [11700 - 11800]: Datastreamer messages.
         msgIdx = 11700;
-        withNoSchema(DataStreamerUpdatesHandlerResult.class);
-        withSchema(DataStreamerEntry.class);
-        withNoSchema(DataStreamerRequest.class);
-        withNoSchema(DataStreamerResponse.class);
+        register(factory, DataStreamerUpdatesHandlerResult.class, msgIdx++);
+        register(factory, DataStreamerEntry.class, msgIdx++);
+        register(factory, DataStreamerRequest.class, msgIdx++);
+        register(factory, DataStreamerResponse.class, msgIdx++);
 
         // [11900 - 12000]: Metrics, monitoring messages.
         msgIdx = 11900;
-        withNoSchema(CacheMetricsMessage.class);
-        withNoSchema(NodeMetricsMessage.class);
-        withNoSchema(NodeFullMetricsMessage.class);
-        withNoSchema(ClusterMetricsUpdateMessage.class);
-        withNoSchema(TcpDiscoveryClientNodesMetricsMessage.class);
-        withNoSchema(TcpDiscoveryMetricsUpdateMessage.class);
-        withNoSchema(TcpDiscoveryClientMetricsUpdateMessage.class);
+        register(factory, CacheMetricsMessage.class, msgIdx++);
+        register(factory, NodeMetricsMessage.class, msgIdx++);
+        register(factory, NodeFullMetricsMessage.class, msgIdx++);
+        register(factory, ClusterMetricsUpdateMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryClientNodesMetricsMessage.class, 
msgIdx++);
+        register(factory, TcpDiscoveryMetricsUpdateMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryClientMetricsUpdateMessage.class, 
msgIdx++);
 
         // [12000 - 12100]: Authentication, security messages.
         msgIdx = 12000;
-        withNoSchema(User.class);
-        withNoSchema(UserManagementOperation.class);
-        withNoSchema(UserManagementOperationFinishedMessage.class);
-        withNoSchema(UserAuthenticateRequestMessage.class);
-        withNoSchema(UserAuthenticateResponseMessage.class);
-        withNoSchema(TcpDiscoveryAuthFailedMessage.class);
-        withNoSchema(AuthentificationDataBagItem.class);
-        withNoSchema(SecurityBasicPermissionSet.class);
+        register(factory, User.class, msgIdx++);
+        register(factory, UserManagementOperation.class, msgIdx++);
+        register(factory, UserManagementOperationFinishedMessage.class, 
msgIdx++);
+        register(factory, UserAuthenticateRequestMessage.class, msgIdx++);
+        register(factory, UserAuthenticateResponseMessage.class, msgIdx++);
+        register(factory, TcpDiscoveryAuthFailedMessage.class, msgIdx++);
+        register(factory, AuthentificationDataBagItem.class, msgIdx++);
+        register(factory, SecurityBasicPermissionSet.class, msgIdx++);
 
         // [12200 - 12300]: Binary, classloading and marshalling messages.
         msgIdx = 12200;
-        withNoSchema(GridDeploymentInfoBean.class);
-        withNoSchema(GridDeploymentRequest.class);
-        withNoSchema(GridDeploymentResponse.class);
-        withNoSchema(MissingMappingRequestMessage.class);
-        withNoSchema(MissingMappingResponseMessage.class);
-        withNoSchema(MetadataRequestMessage.class);
-        withNoSchema(MetadataResponseMessage.class);
-        withNoSchema(MarshallerMappingItem.class);
-        withSchema(BinaryMetadataVersionInfo.class);
-        withNoSchema(CacheBinaryDataBagItem.class);
-        withNoSchema(MappedName.class);
-        withNoSchema(MarshallerDataBagItem.class);
+        register(factory, GridDeploymentInfoBean.class, msgIdx++);
+        register(factory, GridDeploymentRequest.class, msgIdx++);
+        register(factory, GridDeploymentResponse.class, msgIdx++);
+        register(factory, MissingMappingRequestMessage.class, msgIdx++);
+        register(factory, MissingMappingResponseMessage.class, msgIdx++);
+        register(factory, MetadataRequestMessage.class, msgIdx++);
+        register(factory, MetadataResponseMessage.class, msgIdx++);
+        register(factory, MarshallerMappingItem.class, msgIdx++);
+        register(factory, BinaryMetadataVersionInfo.class, msgIdx++);
+        register(factory, CacheBinaryDataBagItem.class, msgIdx++);
+        register(factory, MappedName.class, msgIdx++);
+        register(factory, MarshallerDataBagItem.class, msgIdx++);
 
         // [12400 - 12500]: Encryption messages.
         msgIdx = 12400;
-        withNoSchema(GenerateEncryptionKeyRequest.class);
-        withNoSchema(GenerateEncryptionKeyResponse.class);
-        withNoSchema(ChangeCacheEncryptionRequest.class);
-        withNoSchema(MasterKeyChangeRequest.class);
-        withNoSchema(GroupKeyEncrypted.class);
-        withNoSchema(NodeEncryptionKeys.class);
-        withNoSchema(EncryptionDataBagItem.class);
+        register(factory, GenerateEncryptionKeyRequest.class, msgIdx++);
+        register(factory, GenerateEncryptionKeyResponse.class, msgIdx++);
+        register(factory, ChangeCacheEncryptionRequest.class, msgIdx++);
+        register(factory, MasterKeyChangeRequest.class, msgIdx++);
+        register(factory, GroupKeyEncrypted.class, msgIdx++);
+        register(factory, NodeEncryptionKeys.class, msgIdx++);
+        register(factory, EncryptionDataBagItem.class, msgIdx++);
 
         // [13000 - 13300]: Control, configuration, diagnostics and other 
messages.
         msgIdx = 13000;
-        withSchema(GridEventStorageMessage.class);
-        withNoSchema(ChangeGlobalStateMessage.class);
-        withNoSchema(GridChangeGlobalStateMessageResponse.class);
-        withSchema(IgniteDiagnosticRequest.class);
-        withNoSchema(IgniteDiagnosticResponse.class);
-        withNoSchema(WalStateAckMessage.class);
-        withNoSchema(CacheConfigurationEnrichment.class);
-        withNoSchema(DynamicCacheChangeRequest.class);
-        withNoSchema(PartitionHashRecord.class);
-        withNoSchema(TransactionsHashRecord.class);
-        withNoSchema(ClusterIdAndTag.class);
-        withNoSchema(ClusterUpdateNotifierDataBagItem.class);
-        withNoSchema(PluginsDataBagItem.class);
-        withSchema(EventsDataBagItem.class);
+        register(factory, GridEventStorageMessage.class, msgIdx++);
+        register(factory, ChangeGlobalStateMessage.class, msgIdx++);
+        register(factory, GridChangeGlobalStateMessageResponse.class, 
msgIdx++);
+        register(factory, IgniteDiagnosticRequest.class, msgIdx++);
+        register(factory, IgniteDiagnosticResponse.class, msgIdx++);
+        register(factory, WalStateAckMessage.class, msgIdx++);
+        register(factory, CacheConfigurationEnrichment.class, msgIdx++);
+        register(factory, DynamicCacheChangeRequest.class, msgIdx++);
+        register(factory, PartitionHashRecord.class, msgIdx++);
+        register(factory, TransactionsHashRecord.class, msgIdx++);
+        register(factory, ClusterIdAndTag.class, msgIdx++);
+        register(factory, ClusterUpdateNotifierDataBagItem.class, msgIdx++);
+        register(factory, PluginsDataBagItem.class, msgIdx++);
+        register(factory, EventsDataBagItem.class, msgIdx++);
 
         // [13400 - 13500]: Operation context messages.
         msgIdx = 13400;
-        withNoSchema(OperationContextSnapshotMessage.class);
-        withNoSchema(SecurityContextWrapper.class);
+        register(factory, OperationContextSnapshotMessage.class, msgIdx++);
+        register(factory, SecurityContextWrapper.class, msgIdx++);
 
         // [13600 - 13700]: Rolling Upgrade messages.
         msgIdx = 13600;
-        withNoSchema(IgniteFeatureSet.class);
-        withNoSchema(IgniteCoreFeatureSet.class);
-        withNoSchema(IgnitePluginFeatureSet.class);
-        withNoSchema(RollingUpgradeClusterData.class);
+        register(factory, IgniteFeatureSet.class, msgIdx++);

Review Comment:
   Revert all the `msgIdx++` pls. Lets keep ability to just `register(Class<? 
extends Message>)`



##########
modules/core/src/main/java/org/apache/ignite/internal/plugin/AbstractMarshallableMessageFactoryProvider.java:
##########
@@ -79,52 +79,82 @@ private static <T extends Message> void 
register(IgniteMessageFactory factory, C
         if (NonMarshallableMessage.class.isAssignableFrom(cls))
             marshaller = null;
         else if (MarshallableMessage.class.isAssignableFrom(cls))
-            marshaller = requireGenerated(cls, "Marshaller", marsh);
+            marshaller = requireMarshaller(cls, marsh);
         else
-            marshaller = loadGenerated(cls, "Marshaller", marsh);
+            marshaller = loadMarshaller(cls, marsh);
 
         // Deployers are generated for GridCacheMessage subclasses only, so 
the class lookup is skipped for the rest;
         // a DeployableMessage left without a deployer is then rejected at 
registration.
         GridCacheMessageDeployer<?> deployer = 
GridCacheMessage.class.isAssignableFrom(cls)
-            ? loadGenerated(cls, "Deployer", marsh)
+            ? loadGenerated(cls, "Deployer")
             : null;
 
         factory.register(id, serializer, marshaller, deployer);
     }
 
     /** Loads the generated companion like {@link #loadGenerated}, failing 
fast when it is missing. */
-    private static <T> T requireGenerated(Class<?> cls, String suffix, 
Marshaller marsh) {
-        T res = loadGenerated(cls, suffix, marsh);
+    private static <T> T requireGenerated(Class<?> cls, String suffix) {
+        return require(loadGenerated(cls, suffix), cls, suffix);
+    }
+
+    /** Loads the generated marshaller like {@link #loadMarshaller}, failing 
fast when it is missing. */
+    private static <T> T requireMarshaller(Class<?> cls, Marshaller marsh) {

Review Comment:
   Used once. Let's inline



##########
modules/core/src/main/java/org/apache/ignite/internal/plugin/AbstractMarshallableMessageFactoryProvider.java:
##########
@@ -79,52 +79,82 @@ private static <T extends Message> void 
register(IgniteMessageFactory factory, C
         if (NonMarshallableMessage.class.isAssignableFrom(cls))
             marshaller = null;
         else if (MarshallableMessage.class.isAssignableFrom(cls))
-            marshaller = requireGenerated(cls, "Marshaller", marsh);
+            marshaller = requireMarshaller(cls, marsh);
         else
-            marshaller = loadGenerated(cls, "Marshaller", marsh);
+            marshaller = loadMarshaller(cls, marsh);
 
         // Deployers are generated for GridCacheMessage subclasses only, so 
the class lookup is skipped for the rest;
         // a DeployableMessage left without a deployer is then rejected at 
registration.
         GridCacheMessageDeployer<?> deployer = 
GridCacheMessage.class.isAssignableFrom(cls)
-            ? loadGenerated(cls, "Deployer", marsh)
+            ? loadGenerated(cls, "Deployer")
             : null;
 
         factory.register(id, serializer, marshaller, deployer);
     }
 
     /** Loads the generated companion like {@link #loadGenerated}, failing 
fast when it is missing. */
-    private static <T> T requireGenerated(Class<?> cls, String suffix, 
Marshaller marsh) {
-        T res = loadGenerated(cls, suffix, marsh);
+    private static <T> T requireGenerated(Class<?> cls, String suffix) {

Review Comment:
   Used unce. Let's inline



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to