auphong2707/dl4se-code-review-dataset huggingface dataset:
Source:
<code>public Optional<Response> doRefund(Long accountId, String chargeId, RefundRequest refundRequest) { return chargeDao.findByExternalIdAndGatewayAccount(chargeId, accountId) .map(chargeEntity -> { <START> Optional<Response> refundResult = refundWithGateway(chargeEntity, refundRequest); <END> if (chargeEntity.getPaymentGatewayName() == PaymentGatewayName.SANDBOX && refundResult.isPresent()) { RefundEntity refundEntity = refundResult.get().getRefundEntity(); refundEntity.setStatus(RefundStatus.REFUNDED); refundDao.merge(refundEntity); } return refundResult; }) .orElseThrow(() -> new ChargeNotFoundRuntimeException(chargeId)); }</code><technical_language>I add executeNext() step keeping a bit separated filtering out Responses Sandbox - I a bit cleaner filter using. private Optional<Response> refundWithGateway(ChargeEntity charge, RefundRequest refundRequest) { return Optional.ofNullable(transactionFlowProvider.get() .executeNext(createRefund(providers, charge, refundRequest)) .executeNext(doGatewayRefund(providers)) .executeNext(setRefundAsSubmitted()) .executeNext(setSandboxRefundAsRefunded()) .complete().get(Response.class)); } end in step, receiving result response: refundResult.isSandbox() - set refunded update, return - return response is I explicit step. discuss</technical_language>

Target:
public Optional<Response> doRefund(Long accountId, String chargeId, RefundRequest refundRequest) { return Optional.ofNullable(transactionFlowProvider.get() .executeNext(prepareForRefund(providers, accountId, chargeId, refundRequest)) .executeNext(doGatewayRefund(providers)) .executeNext(setAsSubmitted()) .executeNext(setSandboxAsRefunded()) .complete().get(Response.class)); }
Source:
<code>public final void endVisit(final ReturnStatement node) { final Expression expression= node.getExpression(); if (expression != null) { final ConstraintVariable2 descendant= (ConstraintVariable2) expression.getProperty(PROPERTY_CONSTRAINT_VARIABLE); if (descendant != null) { ASTNode methodOrLambda= fCurrentMethodsAndLambdas.peek(); if (methodOrLambda instanceof MethodDeclaration) { final MethodDeclaration declaration= (MethodDeclaration) methodOrLambda; final IMethodBinding binding= declaration.resolveBinding(); if (binding != null) { final ConstraintVariable2 ancestor= fModel.createReturnTypeVariable(binding); if (ancestor != null) { node.setProperty(PROPERTY_CONSTRAINT_VARIABLE, ancestor); fModel.createSubtypeConstraint(descendant, ancestor); } } <START> } else if (methodOrLambda instanceof LambdaExpression) { <END> LambdaExpression lambda= (LambdaExpression) methodOrLambda; IMethodBinding binding= lambda.resolveMethodBinding(); if (binding != null) { final ConstraintVariable2 ancestor= fModel.createReturnTypeVariable(binding); if (ancestor != null) { node.setProperty(PROPERTY_CONSTRAINT_VARIABLE, ancestor); fModel.createSubtypeConstraint(descendant, ancestor); } } } } } }</code><technical_language>Remove extra whitespace 'else'</technical_language>

Target:
public final void endVisit(final ReturnStatement node) { final Expression expression= node.getExpression(); if (expression != null) { final ConstraintVariable2 descendant= (ConstraintVariable2) expression.getProperty(PROPERTY_CONSTRAINT_VARIABLE); if (descendant != null) { ASTNode methodOrLambda= fCurrentMethodsAndLambdas.peek(); IMethodBinding binding = null; if (methodOrLambda instanceof MethodDeclaration) { binding= ((MethodDeclaration) methodOrLambda).resolveBinding(); } else if (methodOrLambda instanceof LambdaExpression) { binding= ((LambdaExpression) methodOrLambda).resolveMethodBinding(); } if (binding != null) { final ConstraintVariable2 ancestor= fModel.createReturnTypeVariable(binding); if (ancestor != null) { node.setProperty(PROPERTY_CONSTRAINT_VARIABLE, ancestor); fModel.createSubtypeConstraint(descendant, ancestor); } } } } }
Source:
<code>public RuleModellerWidget createWidget( final RuleModeller ruleModeller, final EventBus eventBus, final IAction iAction, final Boolean readOnly ) { BendableConstraintMatchRuleModellerWidget widget = new BendableConstraintMatchRuleModellerWidget( ruleModeller, eventBus, (ActionBendableHardConstraintMatch) iAction, readOnly, "Hard Score" ); actionPluginUtils.initScoreHolderAwarePlugin( ruleModeller.getPath(), widget, SUPPORTED_SCORE_HOLDER_TYPES ); <START> scoreHolderService.call( new RemoteCallback<Collection<BendableScoreLevelsWrapper>>() { <END> @Override public void callback( final Collection<BendableScoreLevelsWrapper> scoreLevels ) { if ( scoreLevels.size() == 1 ) { widget.setScoreLevels( scoreLevels.iterator().next().getHardScoreLevels() ); } } } ).getBendableScoreLevelsSize( ruleModeller.getPath() ); return widget; }</code><technical_language>initialise a single plugin do **three** server round-trips; a number of plugins; opening a Guided Rule Editor instance pretty slow (on a _real_ environment; i.e. localhost)</technical_language>

Target:
public RuleModellerWidget createWidget(final RuleModeller ruleModeller, final EventBus eventBus, final IAction iAction, final Boolean readOnly) { BendableConstraintMatchRuleModellerWidget widget = new BendableConstraintMatchRuleModellerWidget(ruleModeller, eventBus, (ActionBendableHardConstraintMatch) iAction, translationService, readOnly, GuidedRuleEditorConstants.RuleModellerActionPluginHardScore); actionPluginClientService.initScoreHolderAwarePlugin(ruleModeller, widget, SUPPORTED_SCORE_HOLDER_TYPES); actionPluginClientService.invokeScoreInformationCachedOperation(ruleModeller, scoreInformation -> { Collection<BendableScoreLevelsWrapper> scoreLevels = scoreInformation.getBendableScoreLevelsWrappers(); if (scoreLevels.size() == 1) { widget.setScoreLevels(scoreLevels.iterator().next().getHardScoreLevels()); } }); return widget; }
Source:
<code>public Iterable<Property> getProperties(String name) { <START> Property reservedProperty = getReservedProperty(name); <END> if (reservedProperty != null) { ArrayList<Property> result = new ArrayList<>(); result.add(reservedProperty); return result; } return internalGetProperties(null, name); }</code><technical_language>Do need do this? implementation of this method return getProperties(null, name)</technical_language>

Target:
public Iterable<Property> getProperties(String name) { return getProperties(null, name); }
Source:
<code>private static IIsolatedExecutor.SerializableCallable<RepairResult> repair(Map<String, String> options) { return () -> { SimpleCondition await = new SimpleCondition(); AtomicBoolean success = new AtomicBoolean(true); AtomicBoolean wasInconsistent = new AtomicBoolean(false); StorageService.instance.repair(KEYSPACE, options, ImmutableList.of((tag, event) -> { <START> System.out.println(String.format("EVENT %s %s", event.getMessage(), event.getType())); <END> if (event.getType() == ProgressEventType.ERROR) { success.set(false); await.signalAll(); } else if (event.getType() == ProgressEventType.NOTIFICATION && event.getMessage().contains("Repaired data is inconsistent")) { wasInconsistent.set(true); } else if (event.getType() == ProgressEventType.COMPLETE) { await.signalAll(); } else if (event.getType() == ProgressEventType.SUCCESS) { success.set(true); await.signalAll(); } })); try { await.await(1, TimeUnit.MINUTES); } catch (InterruptedException e) { throw new RuntimeException(e); } return new RepairResult(success.get(), wasInconsistent.get()); }; }</code><technical_language>logger drop</technical_language>

Target:
private static IIsolatedExecutor.SerializableCallable<RepairResult> repair(Map<String, String> options) { return () -> { SimpleCondition await = new SimpleCondition(); AtomicBoolean success = new AtomicBoolean(true); AtomicBoolean wasInconsistent = new AtomicBoolean(false); StorageService.instance.repair(KEYSPACE, options, ImmutableList.of((tag, event) -> { if (event.getType() == ProgressEventType.ERROR) { success.set(false); await.signalAll(); } else if (event.getType() == ProgressEventType.NOTIFICATION && event.getMessage().contains("Repaired data is inconsistent")) { wasInconsistent.set(true); } else if (event.getType() == ProgressEventType.COMPLETE) await.signalAll(); })); try { await.await(1, TimeUnit.MINUTES); } catch (InterruptedException e) { throw new RuntimeException(e); } return new RepairResult(success.get(), wasInconsistent.get()); }; }
Source:
<code>protected void performUpdate(UpdateSecretRequest updateSecretRequest, AWSSecretsManager client) { boolean processed = false; int tryCount = 0; while (!processed) { UpdateSecretResult result = client.updateSecret(updateSecretRequest); if (result.getSdkHttpMetadata().getHttpStatusCode() == 200) { processed = true; } else { tryCount++; <START> if (tryCount >= 5) { <END> throw new RuntimeException("performUpdate, unable to update secret: " + result.toString()); } } } }</code><technical_language>Is reason chose 5 tries? this configurable</technical_language>

Target:
protected void performUpdate(UpdateSecretRequest updateSecretRequest, AWSSecretsManager client) { boolean processed = false; int tryCount = 0; while (!processed) { UpdateSecretResult result = client.updateSecret(updateSecretRequest); if (result.getSdkHttpMetadata().getHttpStatusCode() == 200) { processed = true; } else { tryCount++; if (tryCount >= retryCount) { throw new RuntimeException("performUpdate, unable to update secret: " + result.toString()); } } } }
Source:
<code>public File extractAllActivity(Date startTime, Date endTime, int pollingTimeIntervalSecond, int bulkJobTimeoutSecond) { <START> String exportID = marketoRestClient.createActitvityExtract(startTime, endTime); <END> marketoRestClient.startActitvityBulkExtract(exportID); try { marketoRestClient.waitActitvityExportJobComplete(exportID, pollingTimeIntervalSecond, bulkJobTimeoutSecond); } catch (InterruptedException e) { LOGGER.error("Exception when waiting for export job id: {}", exportID, e); throw new DataException("Error when wait for bulk extract"); } InputStream activitiesBulkExtractResult = marketoRestClient.getActivitiesBulkExtractResult(exportID); return saveExtractedFile(exportID, activitiesBulkExtractResult); }</code><technical_language>Typo "activity"</technical_language>

Target:
public File extractAllActivity(Date startTime, Date endTime, int pollingTimeIntervalSecond, int bulkJobTimeoutSecond) { String exportID = marketoRestClient.createActivityExtract(startTime, endTime); marketoRestClient.startActitvityBulkExtract(exportID); try { marketoRestClient.waitActitvityExportJobComplete(exportID, pollingTimeIntervalSecond, bulkJobTimeoutSecond); } catch (InterruptedException e) { LOGGER.error("Exception when waiting for export job id: {}", exportID, e); throw new DataException("Error when wait for bulk extract"); } InputStream activitiesBulkExtractResult = marketoRestClient.getActivitiesBulkExtractResult(exportID); return saveExtractedFile(exportID, activitiesBulkExtractResult); }
Source:
<code>SocketConnection( SocketClient socket, Logger logger ) { this.socket = socket; this.logger = logger; <START> if( logger.isDebugEnabled() ) <END> { this.responseHandler = new LoggingResponseHandler( logger ); } else { this.responseHandler = new SocketResponseHandler(); } this.socket.start(); }</code><technical_language>extract this if-else in a method createResponseHandler(Logger), is duplicated in constructors</technical_language>

Target:
SocketConnection( SocketClient socket, Logger logger ) { this.socket = socket; this.logger = logger; this.responseHandler = createResponseHandler( logger ); this.socket.start(); }
Source:
<code>private void list(StoredConfig config) throws IOException, ConfigInvalidException { config.load(); Set<String> sections = config.getSections(); for (String section : sections) { Set<String> names = config.getNames(section); for (String name : names) { <START> for (String value : config.getStringList(section, null, name)) { <END> System.out.println(section + "." + name + "=" + value); } } if (names.isEmpty()) { for (String subsection : config.getSubsections(section)) { names = config.getNames(section, subsection); for (String name : names) { for (String value : config.getStringList(section, subsection, name)) { System.out.println(section + "." + subsection + "." + name + "=" + value); } } } } } }</code><technical_language>style nit: braces single line blocks</technical_language>

Target:
private void list(StoredConfig config) throws IOException, ConfigInvalidException { config.load(); Set<String> sections = config.getSections(); for (String section : sections) { Set<String> names = config.getNames(section); for (String name : names) { for (String value : config.getStringList(section, null, name)) System.out.println(section + "." + name + "=" + value); } if (names.isEmpty()) { for (String subsection : config.getSubsections(section)) { names = config.getNames(section, subsection); for (String name : names) { for (String value : config.getStringList(section, subsection, name)) System.out.println(section + "." + subsection + "." + name + "=" + value); } } } } }
Source:
<code>private Estimate summarizePartitionStatistics( Collection<PartitionStatistics> partitionStatistics, String column, Function<HiveColumnStatistics, OptionalDouble> valueExtractFunction, Function<DoubleStream, OptionalDouble> valueAggregateFunction) { DoubleStream intermediateStream = partitionStatistics.stream() .map(PartitionStatistics::getColumnStatistics) .filter(stats -> stats.containsKey(column)) .map(stats -> stats.get(column)) .map(valueExtractFunction) .filter(OptionalDouble::isPresent) .mapToDouble(OptionalDouble::getAsDouble); OptionalDouble statisticsValue = valueAggregateFunction.apply(intermediateStream); if (statisticsValue.isPresent()) { return new Estimate(statisticsValue.getAsDouble()); } <START> return Estimate.unknownValue(); <END> }</code><technical_language>nit: Unrelated change. fine keeping though</technical_language>

Target:
private Estimate summarizePartitionStatistics( Collection<PartitionStatistics> partitionStatistics, String column, Function<HiveColumnStatistics, OptionalDouble> valueExtractFunction, Function<DoubleStream, OptionalDouble> valueAggregateFunction) { DoubleStream intermediateStream = partitionStatistics.stream() .map(PartitionStatistics::getColumnStatistics) .filter(stats -> stats.containsKey(column)) .map(stats -> stats.get(column)) .map(valueExtractFunction) .filter(OptionalDouble::isPresent) .mapToDouble(OptionalDouble::getAsDouble); OptionalDouble statisticsValue = valueAggregateFunction.apply(intermediateStream); if (!statisticsValue.isPresent()) { return Estimate.unknownValue(); } return new Estimate(statisticsValue.getAsDouble()); }
Source:
<code>public void reschedule(final GlobalSchedGroupInfo groupInfo) { synchronized (rbTreeMap) { final long endTime = System.nanoTime(); final long delta = calculateVRuntimeDelta(endTime - groupInfo.getLatestScheduledTime(), groupInfo); final long adjustedVRuntime = groupInfo.getVRuntime() + delta; groupInfo.setVRuntime(adjustedVRuntime); <START> Queue<GlobalSchedGroupInfo> queue = rbTreeMap.get(adjustedVRuntime); <END> if (queue == null) { queue = new LinkedList<>(); rbTreeMap.put(adjustedVRuntime, queue); } queue.add(groupInfo); } }</code><technical_language>call addGroup methoc</technical_language>

Target:
public void reschedule(final GlobalSchedGroupInfo groupInfo) { final long endTime = System.nanoTime(); final long delta = calculateVRuntimeDelta(endTime - groupInfo.getLatestScheduledTime(), groupInfo); final long adjustedVRuntime = groupInfo.getVRuntime() + delta; groupInfo.setVRuntime(adjustedVRuntime); addGroup(groupInfo); }
Source:
<code>synchronized String encrypt(String plainTextValue) { if (initFailureMessage != null) { alertSystem(initFailureMessage, initException); } if (isBlank(plainTextValue)) { LOGGER.debug( "Failed to encrypt value of %s, because it was null or blank.", plainTextValue); return plainTextValue; } try { return crypter.encrypt(plainTextValue); } catch (CrypterException e) { <START> LOGGER.warn(String.format("Failed to encrypt to bundle cache. %s", e.getMessage())); <END> AUDIT_LOG.warn(AUDIT_MESSAGE); return plainTextValue; } }</code><technical_language>this parameterized</technical_language>

Target:
synchronized String encrypt(String plainTextValue) { if (initFailureMessage != null) { alertSystem(initFailureMessage, initException); } if (isBlank(plainTextValue)) { LOGGER.debug( "Failed to encrypt value of {}, because it was null or blank.", plainTextValue); return plainTextValue; } try { return crypter.encrypt(plainTextValue); } catch (CrypterException e) { LOGGER.warn("Failed to encrypt to bundle cache. {}", e.getMessage()); AUDIT_LOG.warn(AUDIT_MESSAGE); return plainTextValue; } }
Source:
<code>public LogReplicationEntry resend() { LogReplicationEntry ack = null; boolean force = false; try { ack = processAcks(); } catch (ExecutionException ee) { log.warn("Caught an execution exception while processing ACKs", ee); final Throwable cause = ee.getCause(); if (cause instanceof TimeoutException) { force = true; <START> } <END> } catch (Exception e) { log.warn("Caught an exception while processing ACKs.", e); return null; } for (int i = 0; i < pendingMessages.getSize(); i++) { LogReplicationPendingEntry entry = pendingMessages.getList().get(i); if (entry.timeout(msgTimer) || force) { if (errorOnMsgTimeout && entry.retry >= maxRetry) { log.warn("Entry of type has been resent max times for timer {}.", entry.getData().getMetadata().getTimestamp(), entry.getData().getMetadata().getMessageMetadataType(), maxRetry, msgTimer); throw new LogEntrySyncTimeoutException("timeout"); } entry.retry(); CompletableFuture<LogReplicationEntry> cf = dataSender.send(entry.getData()); addCFToAcked(entry.getData(), cf); log.info("Resend message {}", entry.getData().getMetadata().getTimestamp()); } } return ack; }</code><technical_language>I need catch block for TimeoutException. kinds of TimeoutException: 1. actual sendMsg's CF, this type wrapped ExecutionException 2. anyOf(cfs).get(long timeout, TimeUnit unit)</technical_language>

Target:
public LogReplicationEntry resend() { LogReplicationEntry ack = null; boolean force = false; try { ack = processAcks(); } catch (TimeoutException te) { log.warn("Caught a timeout exception while processing ACKs", te); force = true; } catch (ExecutionException ee) { log.warn("Caught an execution exception while processing ACKs", ee); final Throwable cause = ee.getCause(); if (cause instanceof TimeoutException) { force = true; } } catch (Exception e) { log.warn("Caught an exception while processing ACKs.", e); } for (int i = 0; i < pendingMessages.getSize(); i++) { LogReplicationPendingEntry entry = pendingMessages.getList().get(i); if (entry.timeout(msgTimer) || force) { entry.retry(); LogReplicationEntry dataEntry = entry.getData(); dataEntry.getMetadata().setTopologyConfigId(topologyConfigId); CompletableFuture<LogReplicationEntry> cf = dataSender.send(entry.getData()); addCFToAcked(entry.getData(), cf); log.debug("Resend message {}[ts={}]", entry.getData().getMetadata().getMessageMetadataType(), entry.getData().getMetadata().getTimestamp()); } } return ack; }
Source:
<code>public void testSubscribe() throws Exception { when(conn.getState()).thenReturn(Constants.ConnState.CONNECTED); when(conn.subscribe(any(String.class), any(MessageHandler.class))).thenReturn(mockSub); transport.subscribe(topic); assertTrue(transport.isOpen()); <START> assertEquals(mockSub, transport.sub); <END> }</code><technical_language>verify underlying conn calls subscribe expected topic</technical_language>

Target:
public void testSubscribe() throws Exception { when(conn.getState()).thenReturn(Constants.ConnState.CONNECTED); ArgumentCaptor<String> topicCaptor = ArgumentCaptor.forClass(String.class); when(conn.subscribe(topicCaptor.capture(), any(MessageHandler.class))).thenReturn(mockSub); transport.subscribe(topic); assertTrue(transport.isOpen()); assertEquals(mockSub, transport.sub); assertEquals(formattedSubject, topicCaptor.getValue()); }
Source:
<code>private Optional<CursorQuad> getQuad(List<String> path, String uri, QuadStore quadStore) { <START> return quadStore.getQuads(uri, path.get(0), Direction.OUT, "").map(quad -> { <END> if (path.size() > 1) { return getQuad(path.subList(1, path.size()), quad.getObject(), quadStore); } else { return Optional.of(quad); } }).filter(Optional::isPresent).findFirst().map(Optional::get); }</code><technical_language>manually check if triple's object is a (i.e. quads valuetype.isPresent()) recurse of not. If is, return Optional.empty if path's size > 1 <subj> <pred> "http://someValue"^^xsd:anyUri jump <http://someValue> <otherPred> ... branch return value</technical_language>

Target:
private Optional<CursorQuad> getQuad(List<String> path, String uri, QuadStore quadStore) { Optional<CursorQuad> foundQuad; try (Stream<CursorQuad> quads = quadStore.getQuads(uri, path.get(0), Direction.OUT, "")) { foundQuad = quads.map(quad -> { if (path.size() > 1) { if (quad.getValuetype().isPresent()) { return Optional.<CursorQuad>empty(); } return getQuad(path.subList(1, path.size()), quad.getObject(), quadStore); } else { return Optional.of(quad); } }).filter(Optional::isPresent).findFirst().map(Optional::get); } return foundQuad; }
Source:
<code>public Agency createAgency(Long sponsorId) { LOG.info("Creating Agency: "+ sponsorId); Sponsor sponsor = businessObjectService.findBySinglePrimaryKey(Sponsor.class, sponsorId); Agency agency = new Agency(); agency.setAgencyNumber(sponsorId.toString()); agency.setReportingName(sponsor.getSponsorLabel()); if (ObjectUtils.isNotNull(sponsor.getSponsorName()) && sponsor.getSponsorName().length() > 150) <START> agency.setFullName(sponsor.getSponsorName().substring(0,149)); <END> else { agency.setFullName(sponsor.getSponsorName()); } if (sponsor.getParentSponsor() != null) { Agency rptsToAgency = businessObjectService.findBySinglePrimaryKey(Agency.class, sponsor.getParentSponsor()); if (rptsToAgency == null) { rptsToAgency = createAgency(sponsor.getParentSponsor()); routeAgencyDocument(rptsToAgency, null); } agency.setReportsToAgencyNumber(sponsor.getParentSponsor().toString()); } String sponsorTypeCode = getAgencyTypeMap().get(sponsor.getSourceCode().toString()); agency.setAgencyTypeCode(sponsorTypeCode); agency.setActive(true); return agency; }</code><technical_language>substring() argument 150 instead of 149? I code 49 instead of 50, index for substring() calls is exclusive index, inclusive one</technical_language>

Target:
public Agency createAgency(Long sponsorId) { LOG.info("Creating Agency: "+ sponsorId); Sponsor sponsor = businessObjectService.findBySinglePrimaryKey(Sponsor.class, sponsorId); Agency agency = new Agency(); agency.setAgencyNumber(sponsorId.toString()); agency.setReportingName(sponsor.getSponsorLabel()); if (ObjectUtils.isNotNull(sponsor.getSponsorName()) && sponsor.getSponsorName().length() > 150) agency.setFullName(sponsor.getSponsorName().substring(0, 150)); else { agency.setFullName(sponsor.getSponsorName()); } if (sponsor.getParentSponsor() != null) { Agency rptsToAgency = businessObjectService.findBySinglePrimaryKey(Agency.class, sponsor.getParentSponsor()); if (rptsToAgency == null) { rptsToAgency = createAgency(sponsor.getParentSponsor()); routeAgencyDocument(rptsToAgency, null); } agency.setReportsToAgencyNumber(sponsor.getParentSponsor().toString()); } String sponsorTypeCode = getAgencyTypeMap().get(sponsor.getSourceCode().toString()); agency.setAgencyTypeCode(sponsorTypeCode); agency.setActive(true); return agency; }
Source:
<code>public void testInListWithAnd1Filter() throws SQLException { String tenantId1 = "000000000000001"; String tenantId2 = "000000000000002"; String tenantId3 = "000000000000003"; String entityId = "00000000000000X"; String query = String.format("select * from %s where organization_id IN ('%s','%s','%s') AND entity_id='%s'", ATABLE_NAME, tenantId1, tenantId3, tenantId2, entityId); SQLParser parser = new SQLParser(query); SelectStatement statement = parser.parseQuery(); Scan scan = new Scan(); List<Object> binds = Collections.emptyList(); PhoenixConnection pconn = DriverManager.getConnection(getUrl(), TEST_PROPERTIES).unwrap(PhoenixConnection.class); ColumnResolver resolver = FromCompiler.getResolver(statement, pconn); StatementContext context = new StatementContext(pconn, resolver, binds, statement.getBindCount(), scan); statement = compileStatement(context, statement, resolver, binds, scan, 0, null); byte[] startRow = PDataType.VARCHAR.toBytes(tenantId1); assertArrayEquals(startRow, scan.getStartRow()); byte[] stopRow = PDataType.VARCHAR.toBytes(tenantId3); assertArrayEquals(ByteUtil.nextKey(stopRow), scan.getStopRow()); Filter filter = scan.getFilter(); assertNotNull(filter); assertEquals( new SkipScanFilter() .setCnf( <START> Arrays.asList( <END> Arrays.asList( Bytes.toBytes(tenantId1), Bytes.toBytes(tenantId1), Bytes.toBytes(tenantId2), Bytes.toBytes(tenantId2), Bytes.toBytes(tenantId3), Bytes.toBytes(tenantId3)) )) .setFilter( rowKeyFilter( and( in(pkColumn(BaseConnectionlessQueryTest.ORGANIZATION_ID, BaseConnectionlessQueryTest.ATABLE.getPKColumns()),PDataType.CHAR, tenantId1,tenantId3, tenantId2), constantComparison(CompareOp.EQUAL, pkColumn(BaseConnectionlessQueryTest.ENTITY_ID, BaseConnectionlessQueryTest.ATABLE.getPKColumns()), entityId))) ), filter); }</code><technical_language>this (('01','02','03'),'0X'), instead of entity_id part pushed a filter, org_id entity_id ANDed entity_id is next PK column</technical_language>

Target:
public void testInListWithAnd1Filter() throws SQLException { String tenantId1 = "000000000000001"; String tenantId2 = "000000000000002"; String tenantId3 = "000000000000003"; String entityId = "00000000000000X"; String query = String.format("select * from %s where organization_id IN ('%s','%s','%s') AND entity_id='%s'", ATABLE_NAME, tenantId1, tenantId3, tenantId2, entityId); SQLParser parser = new SQLParser(query); SelectStatement statement = parser.parseQuery(); Scan scan = new Scan(); List<Object> binds = Collections.emptyList(); PhoenixConnection pconn = DriverManager.getConnection(getUrl(), TEST_PROPERTIES).unwrap(PhoenixConnection.class); ColumnResolver resolver = FromCompiler.getResolver(statement, pconn); StatementContext context = new StatementContext(pconn, resolver, binds, statement.getBindCount(), scan); statement = compileStatement(context, statement, resolver, binds, scan, 2, null); Filter filter = scan.getFilter(); assertEquals( new SkipScanFilter().setCnf( ImmutableList.of( Arrays.asList( pointRange(tenantId1), pointRange(tenantId2), pointRange(tenantId3)), Arrays.asList(pointRange(entityId))), new int[] { 15, 15 }), filter); }
Source:
<code>public void save(Member member) { EntityManager entityManager = entityManagerFactory.createEntityManager(); EntityTransaction transaction = entityManager.getTransaction(); transaction.begin(); <START> entityManager.persist(member); <END> entityManager.merge(member); transaction.commit(); entityManager.close(); }</code><technical_language>addition of persist</technical_language>

Target:
public Member save(Member member) { EntityManager entityManager = entityManagerFactory.createEntityManager(); EntityTransaction transaction = entityManager.getTransaction(); transaction.begin(); Member memberToReturn = entityManager.merge(member); transaction.commit(); entityManager.close(); return memberToReturn; }
Source:
<code>public Object set(final Object o, final Text text) { <START> return new BinaryWritable(text == null ? null : Binary.fromUnmodifiedByteArray(text.getBytes <END> ())); }</code><technical_language>If this is write side, in mind texts reused</technical_language>

Target:
public Object set(final Object o, final Text text) { return new BinaryWritable(text == null ? null : Binary.fromReusedByteArray(text.getBytes ())); }
Source:
<code>public String getConfDir() { <START> return getRelativeDir(getString(ConfVars.ZEPPELIN_CONF_DIR)); <END> }</code><technical_language>this change? other places calling getRelativeDir(ConfVars.something)</technical_language>

Target:
public String getConfDir() { return getRelativeDir(ConfVars.ZEPPELIN_CONF_DIR); }
Source:
<code>public Iterable<Result<TimeBoundaryResultValue>> mergeResults(List<Result<TimeBoundaryResultValue>> results) { if (results == null || results.isEmpty()) { return Lists.newArrayList(); } DateTime min = new DateTime(Long.MAX_VALUE); DateTime max = new DateTime(Long.MIN_VALUE); for (Result<TimeBoundaryResultValue> result : results) { TimeBoundaryResultValue val = result.getValue(); <START> if (!bound.equalsIgnoreCase(MAX_TIME)) { <END> DateTime currMinTime = val.getMinTime(); if (currMinTime.isBefore(min)) { min = currMinTime; } } if (!bound.equalsIgnoreCase(MIN_TIME)) { DateTime currMaxTime = val.getMaxTime(); if (currMaxTime.isAfter(max)) { max = currMaxTime; } } } final ImmutableMap.Builder<String, Object> builder = new ImmutableMap.Builder<>(); final DateTime ts; if (bound.equalsIgnoreCase(MIN_TIME)) { ts = min; builder.put(MIN_TIME, max); } else if (bound.equalsIgnoreCase(MAX_TIME)) { ts = max; builder.put(MAX_TIME, min); } else { ts = min; builder.put(MIN_TIME, min); builder.put(MAX_TIME, max); } return Arrays.asList( new Result<>( ts, new TimeBoundaryResultValue( builder.build() ) ) ); }</code><technical_language>do need case insensitive checks</technical_language>

Target:
public Iterable<Result<TimeBoundaryResultValue>> mergeResults(List<Result<TimeBoundaryResultValue>> results) { if (results == null || results.isEmpty()) { return Lists.newArrayList(); } DateTime min = new DateTime(Long.MAX_VALUE); DateTime max = new DateTime(Long.MIN_VALUE); for (Result<TimeBoundaryResultValue> result : results) { TimeBoundaryResultValue val = result.getValue(); DateTime currMinTime = val.getMinTime(); if (currMinTime != null && currMinTime.isBefore(min)) { min = currMinTime; } DateTime currMaxTime = val.getMaxTime(); if (currMaxTime != null && currMaxTime.isAfter(max)) { max = currMaxTime; } } final DateTime ts; final DateTime minTime; final DateTime maxTime; if (bound.equalsIgnoreCase(MIN_TIME)) { ts = min; minTime = min; maxTime = null; } else if (bound.equalsIgnoreCase(MAX_TIME)) { ts = max; minTime = null; maxTime = max; } else { ts = min; minTime = min; maxTime = max; } return buildResult(ts, minTime, maxTime); }
Source:
<code>public void theGetSynchronizeTimeRequestIsReceived() throws Throwable { this.correlationUidPattern = Pattern.compile(this.organisationId.getOrganisationId() + "\\|\\|\\|\\S{17}\\|\\|\\|\\S{17}"); this.testCase = this.wsdlProjectFactory.createWsdlTestCase(SOAP_PROJECT_XML, TEST_SUITE_XML, TEST_CASE_XML); PROPERTIES_MAP.put("DeviceIdentificationE", this.deviceId.getDeviceId()); PROPERTIES_MAP.put("OrganisationIdentification", this.organisationId.getOrganisationId()); final TestCaseResult runTestStepByName = this.testCaseRunner.runWsdlTestCase(this.testCase, PROPERTIES_MAP, TEST_CASE_NAME_REQUEST); final TestStepResult runTestStepByNameResult = runTestStepByName.getRunTestStepByName(); final WsdlTestCaseRunner wsdlTestCaseRunner = runTestStepByName.getResults(); assertEquals(TestStepStatus.OK, runTestStepByNameResult.getStatus()); for (final TestStepResult tcr : wsdlTestCaseRunner.getResults()) { this.response = ((MessageExchange) tcr).getResponseContent(); this.correlationUidMatcher = this.correlationUidPattern.matcher(this.response); } <START> this.correlationUidMatcher.find(); <END> this.correlationUid = this.correlationUidMatcher.group(); }</code><technical_language>asserttrue</technical_language>

Target:
public void theGetSynchronizeTimeRequestIsReceived() throws Throwable { this.correlationUidPattern = Pattern.compile(this.organisationId.getOrganisationId() + "\\|\\|\\|\\S{17}\\|\\|\\|\\S{17}"); this.testCase = this.wsdlProjectFactory.createWsdlTestCase(SOAP_PROJECT_XML, TEST_SUITE_XML, TEST_CASE_XML); PROPERTIES_MAP.put("DeviceIdentificationE", this.deviceId.getDeviceId()); PROPERTIES_MAP.put("OrganisationIdentification", this.organisationId.getOrganisationId()); final TestCaseResult runTestStepByName = this.testCaseRunner.runWsdlTestCase(this.testCase, PROPERTIES_MAP, TEST_CASE_NAME_REQUEST); final TestStepResult runTestStepByNameResult = runTestStepByName.getRunTestStepByName(); final WsdlTestCaseRunner wsdlTestCaseRunner = runTestStepByName.getResults(); assertEquals(TestStepStatus.OK, runTestStepByNameResult.getStatus()); for (final TestStepResult tcr : wsdlTestCaseRunner.getResults()) { this.response = ((MessageExchange) tcr).getResponseContent(); this.correlationUidMatcher = this.correlationUidPattern.matcher(this.response); } assertTrue(this.correlationUidMatcher.find()); this.correlationUid = this.correlationUidMatcher.group(); }
Source:
<code>public void makeChange(BibDatabaseContext database, NamedCompound undoEdit) { database.getDatabase().insertEntry(diskEntry); <START> undoEdit.addEdit(new UndoableInsertEntries(database.getDatabase(), Collections.singletonList(diskEntry))); <END> }</code><technical_language>users of method forced wrap parameter Collections.singletonList, I thinking, overloaded method , ... BibEntry entry added, alles Collections.singletonList internally? -- Reasoning: more callers callees, easy for callers</technical_language>

Target:
public void makeChange(BibDatabaseContext database, NamedCompound undoEdit) { database.getDatabase().insertEntry(entry); undoEdit.addEdit(new UndoableInsertEntries(database.getDatabase(), entry)); }
Source:
<code><START> public boolean isValid() <END> { return interval == null ^ segmentIds == null; }</code><technical_language>This a preconditions check in constructor, I a error message tells user intervals segmentIds set. current error message I is accurate ("Request payload contains invalid interval[%s] segmentIds[%s], atmost valid provided"), check is for validity of supplied values for presence of both</technical_language>

Target:
public boolean isValid() { return (interval == null ^ segmentIds == null) && (segmentIds == null || !segmentIds.isEmpty()); }
Source:
<code>private void verifyMonitor(JenkinsRule.WebClient wc) throws IOException, SAXException { HtmlPage p = wc.goTo("manage"); DomElement adminMonitorDiv = p.getElementById("tooManyJobsButNoView"); <START> assertThat(adminMonitorDiv.getTextContent(), containsString("There appears to be a large number of jobs")); <END> }</code><technical_language>Potential i18n problem? happy confirming element exists</technical_language>

Target:
private void verifyMonitor(JenkinsRule.WebClient wc) throws IOException, SAXException { HtmlPage p = wc.goTo("manage"); DomElement adminMonitorDiv = p.getElementById("tooManyJobsButNoView"); assertThat(adminMonitorDiv, is(notNullValue())); assertThat(adminMonitorDiv.getTextContent(), is(notNullValue())); }
Source:
<code>public void processLeftData(final MistDataEvent input) { try { final OUT operationResult = aggregateFunc.apply((WindowData<IN>)input.getValue()); LOG.log(Level.FINE, "{0} aggregates the input window {1} using {2}, and generates {3}", <START> new Object[]{getOperatorIdentifier(), input, aggregateFunc, operationResult}); <END> input.setValue(operationResult); outputEmitter.emitData(input); } catch (final ClassCastException e) { throw e; } }</code><technical_language>I is log WindowData, windowSize startTime endTime of window</technical_language>

Target:
public void processLeftData(final MistDataEvent input) { try { final WindowData<IN> windowData = (WindowData<IN>) input.getValue(); final OUT operationResult = aggregateFunc.apply(windowData); LOG.log(Level.FINE, "{0} aggregates the input window {1} which started at {2} and ended at {3}, " + "and generates {4}", new Object[]{getOperatorIdentifier(), input, windowData.getStart(), windowData.getEnd(), operationResult}); input.setValue(operationResult); outputEmitter.emitData(input); } catch (final ClassCastException e) { throw e; } }
Source:
<code>protected void doOperation() { Datastore.initialize(); List<FeedbackSessionAttributes> feedbackSessions = fsDb.getAllFeedbackSessions(); try { for(FeedbackSessionAttributes session : feedbackSessions){ logic.updateRespondants(session.feedbackSessionName, session.courseId); System.out.println("Successfully update response rate for session " + session.feedbackSessionName + " in course " + session.courseId); } } catch (InvalidParametersException | EntityDoesNotExistException e) { <START> Assumption.fail("Fail to update respondants"); <END> } }</code><technical_language>If session fails, continue rest. run entire script if session fails</technical_language>

Target:
protected void doOperation() { Datastore.initialize(); boolean isForAllSession = true; if(isForAllSession){ updateRespondantsForAllSessions(); } else { updateRespondantsForSession("Feedback Session Name", "Course ID"); } }
Source:
<code>public ModelNode resolveValue(ExpressionResolver resolver, ModelNode value) throws OperationFailedException { ModelNode superResult = value.getType() == ModelType.LIST ? value : super.resolveValue(resolver, value); ModelNode result = new ModelNode(); if (superResult.getType() != ModelType.LIST) { return superResult; }else{ <START> result.setEmptyList(); <END> } ModelNode clone = superResult == value ? value.clone() : superResult; for (ModelNode element : clone.asList()) { result.add(valueType.resolveValue(resolver, element)); } getValidator().validateResolvedParameter(getName(), result); return result; }</code><technical_language>Nit: changes L137-141 removed have: ModelNode clone = superResult == ? value.clone() : superResult; ModelNode result = new ModelNode(); result.setEmptyList(); a bit easier understand 'result' introduced in middle of logic for checking a LIST</technical_language>

Target:
public ModelNode resolveValue(ExpressionResolver resolver, ModelNode value) throws OperationFailedException { ModelNode superResult = value.getType() == ModelType.LIST ? value : super.resolveValue(resolver, value); if (superResult.getType() != ModelType.LIST) { return superResult; } ModelNode clone = superResult == value ? value.clone() : superResult; ModelNode result = new ModelNode(); result.setEmptyList(); for (ModelNode element : clone.asList()) { result.add(valueType.resolveValue(resolver, element)); } getValidator().validateResolvedParameter(getName(), result); return result; }
Source:
<code>public PropertiesConfig(final Path configTemplate, final Path localConfig, final String delimiterRegex) throws IOException { checkNotNull(configTemplate); checkNotNull(localConfig); checkNotNull(delimiterRegex); final Properties properties = new Properties(); try (final Reader templateReader = Files.newBufferedReader(configTemplate); <START> final Reader localReader = Files.newBufferedReader(localConfig)) { <END> properties.load(templateReader); properties.load(localReader); } user = readUser(properties); environment = readEnvironment(properties); final Properties collapsed = collapse(properties, environment.name().toLowerCase()); this.properties = new Properties(collapsed); delimiter = Pattern.compile(delimiterRegex); }</code><technical_language>this work for Maven+Tomcat. In particular, a relative path is ambiguous (and absolute path work). practices a classpath-relative path class loader load files. For example (where conf.conf is in resources folder in Maven project): getClass().getClassLoader().getResourceAsStream("conf.conf") If this work for Play Gradle, alternative is constructor takes InputStream, consumers Files class loader appropriate</technical_language>

Target:
public PropertiesConfig(final Path configTemplate, final Path localConfig, final String delimiterRegex) throws IOException { checkNotNull(configTemplate); checkNotNull(delimiterRegex); final Properties properties = new Properties(); try (final Reader templateReader = Files.newBufferedReader(configTemplate)) { properties.load(templateReader); } if (localConfig != null) { try (final Reader localReader = Files.newBufferedReader(localConfig)) { properties.load(localReader); } } user = readUser(properties); environment = readEnvironment(properties); this.properties = new Properties(collapse(properties, environment.name().toLowerCase())); delimiter = Pattern.compile(delimiterRegex); }
Source:
<code>public void onPerformSync(Account account, Bundle extras, String authority, ContentProviderClient provider, SyncResult syncResult) { final boolean syncDownOnly = extras.getBoolean(SYNC_DOWN_ONLY, false); final SmartStoreSDKManager sdkManager = SmartStoreSDKManager.getInstance(); final UserAccountManager accManager = sdkManager.getUserAccountManager(); if (sdkManager.isLoggingOut() || accManager.getAuthenticatedUsers() == null) { return; } if (account != null) { <START> sdkManager.setupUserStoreFromDefaultConfig(); <END> final UserAccount user = sdkManager.getUserAccountManager().buildUserAccount(account); final ContactListLoader contactLoader = new ContactListLoader(getContext(), user); if (syncDownOnly) { contactLoader.syncDown(); } else { contactLoader.syncUp(); } } }</code><technical_language>setup happen loader? anti-pattern trigger this sync adapter</technical_language>

Target:
public void onPerformSync(Account account, Bundle extras, String authority, ContentProviderClient provider, SyncResult syncResult) { final boolean syncDownOnly = extras.getBoolean(SYNC_DOWN_ONLY, false); final SalesforceSDKManager sdkManager = SalesforceSDKManager.getInstance(); final UserAccountManager accManager = sdkManager.getUserAccountManager(); if (sdkManager.isLoggingOut() || accManager.getAuthenticatedUsers() == null) { return; } if (account != null) { final UserAccount user = sdkManager.getUserAccountManager().buildUserAccount(account); final ContactListLoader contactLoader = new ContactListLoader(getContext(), user); if (syncDownOnly) { contactLoader.syncDown(); } else { contactLoader.syncUp(); } } }
Source:
<code>protected boolean removeMemoryVolumes(String memVols, boolean startPollingTasks) { List<Guid> guids = GuidUtils.getGuidListFromString(memVols); if (guids.size() == 6) { Guid guid1 = removeMemoryImage(guids); if (guid1 == null) { return false; } Guid guid2 = removeConfImage(guids); if (startPollingTasks) { <START> if (!Guid.Empty.equals(guid1)) { <END> AsyncTaskManager.getInstance().StartPollingTask(guid1); } if (guid2 != null && !Guid.Empty.equals(guid2)) { AsyncTaskManager.getInstance().StartPollingTask(guid2); } } return guid2 != null; } return true; }</code><technical_language>do need check for empty guid</technical_language>

Target:
protected boolean removeMemoryVolumes(String memVols, boolean startPollingTasks) { List<Guid> guids = GuidUtils.getGuidListFromString(memVols); if (guids.size() == 6) { Guid guid1 = removeMemoryImage(guids); if (guid1 == null) { return false; } Guid guid2 = removeConfImage(guids); if (startPollingTasks) { AsyncTaskManager.getInstance().StartPollingTask(guid1); if (guid2 != null) { AsyncTaskManager.getInstance().StartPollingTask(guid2); } } return guid2 != null; } return true; }
Source:
<code>public Snmp(NotificationProperties props) { for (Map.Entry<String, String> entry : props.getProperties().entrySet()) { Matcher m = PROFILE_PATTERN.matcher(entry.getKey()); if (m.matches()) { String profile = m.group("profile") == null ? "" : m.group("profile"); String managers = props.getProperty(SNMP_MANAGERS, profile, false); if (!StringUtils.isBlank(managers)) { int snmpVersion = Integer.parseInt(props.getProperty(SNMP_VERSION, false)); if (!(snmpVersion == SnmpConstants.version2c || snmpVersion == SnmpConstants.version3)) { <START> throw new NotificationServiceException("Unknown snmp version in properties file " + snmpVersion); <END> } if (snmpVersion == SnmpConstants.version3) { profiles.put( profile, new Profile( managers, props.getProperty(SNMP_ENGINE_ID, profile, false), props.getProperty(SNMP_USERNAME, profile, false), props.getProperty(SNMP_AUTH_PASSPHRASE, profile, false), props.getProperty(SNMP_PRIVACY_PASSPHRASE, profile, false), Integer.parseInt(props.getProperty(SNMP_SECURITY_LEVEL, profile, false)), props.getProperty(SNMP_OID, profile, false), snmpVersion ) ); } else { profiles.put( profile, new Profile( managers, props.getProperty(SNMP_COMMUNITY, profile, false), props.getProperty(SNMP_OID, profile, false), snmpVersion ) ); } } } } if (!profiles.isEmpty()) { active = true; } }</code><technical_language>s/snmp version/SNMP_VERSION/</technical_language>

Target:
public Snmp(NotificationProperties props) { for (Map.Entry<String, String> entry : props.getProperties().entrySet()) { Matcher m = PROFILE_PATTERN.matcher(entry.getKey()); if (m.matches()) { String profile = m.group("profile") == null ? "" : m.group("profile"); String managers = props.getProperty(SNMP_MANAGERS, profile, false); if (!StringUtils.isBlank(managers)) { int snmpVersion = getSnmpVersion(props.getProperty(SNMP_VERSION, false)); if (snmpVersion == SnmpConstants.version3) { profiles.put( profile, Profile.buildProfile( managers, props.getProperty(SNMP_ENGINE_ID, profile, false), props.getProperty(SNMP_USERNAME, profile, false), props.getProperty(SNMP_AUTH_PASSPHRASE, profile, false), props.getProperty(SNMP_PRIVACY_PASSPHRASE, profile, false), Integer.parseInt(props.getProperty(SNMP_SECURITY_LEVEL, profile, false)), props.getProperty(SNMP_OID, profile, false), snmpVersion ) ); } else { profiles.put( profile, Profile.buildProfile( managers, props.getProperty(SNMP_COMMUNITY, profile, false), props.getProperty(SNMP_OID, profile, false), snmpVersion ) ); } } } } if (!profiles.isEmpty()) { active = true; } }
Source:
<code>protected Folder find(String folderInode) throws DotDataException { Folder folder = fc.getFolder(folderInode); if (folder == null) { try{ DotConnect dc = new DotConnect() <START> .setSQL("SELECT * from folder where inode = ? or identifier=?") <END> .addParam(folderInode) .addParam(folderInode); folder = TransformerLocator.createFolderTransformer(dc.loadObjectResults()).asList().get(0); Identifier id = APILocator.getIdentifierAPI().find(folder.getIdentifier()); fc.addFolder(folder, id); } catch(Exception e){ throw new DotDataException(e.getMessage(),e); } } return folder; }</code><technical_language>need inode information build folder object, no</technical_language>

Target:
protected Folder find(String folderInode) throws DotDataException { Folder folder = fc.getFolder(folderInode); if (folder == null) { try{ DotConnect dc = new DotConnect() .setSQL("select * from folder f join inode i on f.inode = i.inode where f.inode = ? "+ "UNION select * from folder f join inode i on f.inode = i.inode where f.identifier = ?") .addParam(folderInode) .addParam(folderInode); folder = TransformerLocator.createFolderTransformer(dc.loadObjectResults()).asList().get(0); Identifier id = APILocator.getIdentifierAPI().find(folder.getIdentifier()); fc.addFolder(folder, id); } catch(Exception e){ throw new DotDataException(e.getMessage(),e); } } return folder; }
Source:
<code>public void prepareRun(StageSubmitterContext context) throws Exception { super.prepareRun(context); <START> context.record( <END> TransformLineageRecorderUtils.oneToOneIn(TransformLineageRecorderUtils.getFields(context.getInputSchema()), "mapValueOf", "Map values of fields based on the lookup table.")); }</code><technical_language>a output schema is generated inputSchema, <LINK_0>, if is in mapping list, is identity, if is, mapped some other value</technical_language>

Target:
public void prepareRun(StageSubmitterContext context) throws Exception { super.prepareRun(context); if (context.getInputSchema() == null || context.getInputSchema().getFields() == null) { return; } parseConfiguration(this.config, context.getFailureCollector()); List<String> mappedFields = TransformLineageRecorderUtils.getFields(context.getInputSchema()) .stream().filter(mappingValues::containsKey).collect(Collectors.toList()); List<String> identityFields = TransformLineageRecorderUtils.getFields(context.getInputSchema()); identityFields.removeAll(mappedFields); List<FieldOperation> output = new ArrayList<>(); output.addAll(mappedFields.stream().map(sourceFieldName -> new FieldTransformOperation( "mapValueOf" + sourceFieldName, "Mapped values of fields based on the lookup table.", Collections.singletonList(sourceFieldName), mappingValues.get(sourceFieldName).getDefaultValue())).collect( Collectors.toList())); output.addAll(TransformLineageRecorderUtils.generateOneToOnes(identityFields, "identity", TransformLineageRecorderUtils.IDENTITY_TRANSFORM_DESCRIPTION)); context.record(output); }