SqlEntityListener implements EntityListener, RecordStreamFileListener { @Override public void onNonFeeTransfer(NonFeeTransfer nonFeeTransfer) throws ImporterException { nonFeeTransfers.add(nonFeeTransfer); } SqlEntityListener(SqlProperties sqlProperties, DataSource dataSource,
                             RecordFileRepository recordFileRepository, MeterRegistry meterRegistry,
                             @Qualifier(CacheConfiguration.NEVER_EXPIRE_LARGE) CacheManager cacheManager,
                             ApplicationStatusRepository applicationStatusRepository,
                             EntityRepository entityRepository, ApplicationEventPublisher eventPublisher,
                             TokenRepository tokenRepository, TokenAccountRepository tokenAccountRepository); @Override boolean isEnabled(); @Override RecordFile onStart(StreamFileData streamFileData); @Override void onEnd(RecordFile recordFile); @Override void onError(); @Override void onTransaction(Transaction transaction); @Override void onEntityId(EntityId entityId); @Override void onCryptoTransfer(CryptoTransfer cryptoTransfer); @Override void onNonFeeTransfer(NonFeeTransfer nonFeeTransfer); @Override void onTopicMessage(TopicMessage topicMessage); @Override void onContractResult(ContractResult contractResult); @Override void onFileData(FileData fd); @Override void onLiveHash(LiveHash liveHash); @Override void onToken(Token token); @Override void onTokenAccount(TokenAccount tokenAccount); @Override void onTokenTransfer(TokenTransfer tokenTransfer);  }
@Test void onNonFeeTransfer() throws Exception { NonFeeTransfer nonFeeTransfer1 = new NonFeeTransfer(1L, new NonFeeTransfer.Id(1L, EntityId .of(0L, 0L, 1L, ACCOUNT))); NonFeeTransfer nonFeeTransfer2 = new NonFeeTransfer(-2L, new NonFeeTransfer.Id(2L, EntityId .of(0L, 0L, 2L, ACCOUNT))); sqlEntityListener.onNonFeeTransfer(nonFeeTransfer1); sqlEntityListener.onNonFeeTransfer(nonFeeTransfer2); completeFileAndCommit(); assertEquals(2, nonFeeTransferRepository.count()); assertExistsAndEquals(nonFeeTransferRepository, nonFeeTransfer1, nonFeeTransfer1.getId()); assertExistsAndEquals(nonFeeTransferRepository, nonFeeTransfer2, nonFeeTransfer2.getId()); }