auphong2707/dl4se-code-review-dataset huggingface dataset:
Source:
<code>public void stop() { <START> LOG.debug("Shutting down Zuul."); <END> serverGroup.stop(); try { Runtime.getRuntime().removeShutdownHook(jvmShutdownHook); } catch (IllegalStateException e) { LOG.debug("Failed to remove shutdown hook", e); } LOG.debug("Completed zuul shutdown."); }</code><technical_language>change debug</technical_language>

Target:
public void stop() { LOG.info("Shutting down Zuul."); serverGroup.stop(); try { Runtime.getRuntime().removeShutdownHook(jvmShutdownHook); } catch (IllegalStateException e) { LOG.debug("Failed to remove shutdown hook", e); } LOG.info("Completed zuul shutdown."); }
Source:
<code>public static org.openmrs.Condition generateOpenMRSCondition(org.hl7.fhir.dstu3.model.Condition condition) { org.openmrs.Condition openMrsCondition; openMrsCondition = Context.getService(ConditionService.class).getConditionByUuid(condition.getId()); if (openMrsCondition == null) { openMrsCondition = new org.openmrs.Condition(); } BaseOpenMRSDataUtil.readBaseExtensionFields(openMrsCondition, condition); openMrsCondition.setId(Integer.parseInt(condition.getId())); if (condition.getSubject() != null) { String patientRef = condition.getSubject().getReference(); Patient openMrsPatient = Context.getPatientService().getPatientByUuid(patientRef); openMrsCondition.setPatient(openMrsPatient); } openMrsCondition.setUuid(condition.getContext().getReference()); try { openMrsCondition.setOnsetDate(condition.getOnsetDateTimeType().getValue()); } catch (FHIRException e) { e.printStackTrace(); } openMrsCondition.setAdditionalDetail(condition.getNoteFirstRep().getText()); openMrsCondition.setDateChanged(condition.getAssertedDate()); if (condition.getCode() != null) { CodeableConcept conceptDt = condition.getCode(); List<Coding> codings = conceptDt.getCoding(); <START> Concept openMrsConcept = new Concept(); <END> if (!codings.isEmpty()) { for (Coding coding : codings) { openMrsConcept.setUuid(coding.getCode()); openMrsConcept.setVersion(coding.getVersion()); } } openMrsCondition.setConcept(openMrsConcept); } openMrsCondition.setCreator(Context.getAuthenticatedUser()); return openMrsCondition; }</code><technical_language>discussed slack, request create a new condition throw exception if concept exist in openmrs concept dictionary. creating new concepts here</technical_language>

Target:
public static org.openmrs.Condition generateOpenMRSCondition(org.hl7.fhir.dstu3.model.Condition condition) { org.openmrs.Condition openMrsCondition; List<String> errors = new ArrayList<>(); openMrsCondition = Context.getService(ConditionService.class).getConditionByUuid(condition.getId()); if (openMrsCondition == null) { openMrsCondition = new org.openmrs.Condition(); } BaseOpenMRSDataUtil.readBaseExtensionFields(openMrsCondition, condition); if (condition.getSubject() != null) { String patientRef = condition.getSubject().getReference(); Patient openMrsPatient = Context.getPatientService().getPatientByUuid(patientRef); openMrsCondition.setPatient(openMrsPatient); } openMrsCondition.setUuid(condition.getContext().getReference()); openMrsCondition.setAdditionalDetail(condition.getNoteFirstRep().getText()); openMrsCondition.setDateChanged(condition.getAssertedDate()); openMrsCondition.setConcept(FHIRUtils.getConceptFromCode(condition.getCode(), errors)); openMrsCondition.setStatus( FHIRConditionUtil.generateConditionClinicalStatusFromFHIRCondition(condition)); openMrsCondition.setCreator(Context.getAuthenticatedUser()); FHIRUtils.checkGeneratorErrorList(errors); return openMrsCondition; }
Source:
<code>public void generate() throws Exception { initPlanTest(); try { getQueryResourcePaths() .parallel() .forEach(queryResourcePath -> { try { Path queryPlanWritePath = Paths.get( getPrestoMainSourcePath().toString(), "src/test/resources", getQueryPlanResourcePath(queryResourcePath).toString()); <START> Files.createParentDirs(queryPlanWritePath.toFile()); <END> Files.write(generateQueryPlan(read(queryResourcePath)).getBytes(UTF_8), queryPlanWritePath.toFile()); System.out.println("Generated expected plan for query: " + queryResourcePath); } catch (IOException e) { throw new UncheckedIOException(e); } }); } finally { destroyPlanTest(); } }</code><technical_language>static import</technical_language>

Target:
public void generate() throws Exception { initPlanTest(); try { getQueryResourcePaths() .parallel() .forEach(queryResourcePath -> { try { Path queryPlanWritePath = Paths.get( getPrestoMainSourcePath().toString(), "src/test/resources", getQueryPlanResourcePath(queryResourcePath)); createParentDirs(queryPlanWritePath.toFile()); write(generateQueryPlan(read(queryResourcePath)).getBytes(UTF_8), queryPlanWritePath.toFile()); System.out.println("Generated expected plan for query: " + queryResourcePath); } catch (IOException e) { throw new UncheckedIOException(e); } }); } finally { destroyPlanTest(); } }
Source:
<code>public void saveStateShouldThrowIllegalArgumentExceptionWhenApplicationIdIsNull() { <START> given(applicationsRepository.findOne(null)).willThrow(IllegalArgumentException.class); <END> statesService.saveState(stateDTO, null); }</code><technical_language>this statement is necessary</technical_language>

Target:
public void saveStateShouldThrowIllegalArgumentExceptionWhenApplicationIdIsNull() { statesService.saveState(stateDTO, null); }
Source:
<code>public String getDomainsLoggingEntry() { <START> StringBuilder configurationEntry = new StringBuilder(""); <END> boolean firstEntry = true; for (Entry<String, String> currEntry : valuePerDomain.entrySet()) { if (!firstEntry) { configurationEntry.append(domainSeperator); } else { firstEntry = false; } configurationEntry.append(currEntry.getKey()); if (currEntry.getValue() != null) { configurationEntry.append(valueSeperator).append(LOGGING_PASSWORD); } } return configurationEntry.toString(); }</code><technical_language>empty string in constructor is redundant</technical_language>

Target:
public String getDomainsLoggingEntry() { StringBuilder configurationEntry = new StringBuilder(); boolean firstEntry = true; for (Entry<String, String> currEntry : valuePerDomain.entrySet()) { if (!firstEntry) { configurationEntry.append(domainSeperator); } else { firstEntry = false; } configurationEntry.append(currEntry.getKey()); if (currEntry.getValue() != null) { configurationEntry.append(valueSeperator).append(LOGGING_PASSWORD); } } return configurationEntry.toString(); }
Source:
<code>public List<CommitValidationMessage> onCommitReceived( CommitReceivedEvent receiveEvent) throws CommitValidationException { if (receiveEvent.commit.getParentCount() > 1) { if (MagicBranch.isMagicBranch(receiveEvent.command.getRefName())) { if (!refControl.canUploadMerges()) { throw new CommitValidationException( "you are not allowed to upload merges for review"); } } else if (!refControl.canPushMerges()) { throw new CommitValidationException( "you are not allowed to push merges directly bypassing code review"); } } return <START> Collections.<CommitValidationMessage> <END> emptyList(); }</code><technical_language>Unnecessary change? compiled before, right</technical_language>

Target:
public List<CommitValidationMessage> onCommitReceived( CommitReceivedEvent receiveEvent) throws CommitValidationException { if (receiveEvent.commit.getParentCount() > 1) { if (MagicBranch.isMagicBranch(receiveEvent.command.getRefName())) { if (!refControl.canUploadMerges()) { throw new CommitValidationException( "you are not allowed to upload merges for review"); } } else if (!refControl.canPushMerges()) { throw new CommitValidationException( "you are not allowed to push merges directly bypassing code review"); } } return Collections.emptyList(); }
Source:
<code>private Content mergeBroadcasts(Maybe<Identified> possibleExisting, Content update) { if (possibleExisting.isNothing()) { throw new IllegalStateException("Entity for " + update.getCanonicalUri() + " does not exists"); } Identified existing = possibleExisting.requireValue(); if (existing instanceof Item) { Item item = (Item) existing; if (!update.getVersions().isEmpty()) { if (Iterables.isEmpty(item.getVersions())) { item.addVersion(new Version()); } Version existingVersion = item.getVersions().iterator().next(); Version postedVersion = Iterables.getOnlyElement(update.getVersions()); mergeVersions(existingVersion, postedVersion); } return (Content) existing; } <START> throw new IllegalStateException("Entity for " + update.getCanonicalUri() + " not Content"); <END> }</code><technical_language>Turn this a guard, leads nesting. if (!(existing instanceof Item) { throw new ... } // rest of class</technical_language>

Target:
private Content mergeBroadcasts(Maybe<Identified> possibleExisting, Content update) { if (possibleExisting.isNothing()) { return update; } Identified existing = possibleExisting.requireValue(); if (!(existing instanceof Item)) { throw new IllegalStateException("Entity for " + update.getCanonicalUri() + " not Content"); } Item item = (Item) existing; if (!update.getVersions().isEmpty()) { if (Iterables.isEmpty(item.getVersions())) { item.addVersion(new Version()); } Version existingVersion = item.getVersions().iterator().next(); Version postedVersion = Iterables.getOnlyElement(update.getVersions()); mergeVersions(existingVersion, postedVersion); } return (Content) existing; }
Source:
<code>public void getSearchConfig_shouldReturnLogEntryByGeneratedBy() throws Exception { MockHttpServletRequest req = request(RequestMethod.GET, getURI()); req.addParameter("generatedBy", USER_UUID); SimpleObject result = deserialize(handle(req)); <START> Assert.assertEquals(5, Util.getResultsSize(result)); <END> }</code><technical_language>getAllCount() instead of 5</technical_language>

Target:
public void getSearchConfig_shouldReturnLogEntryByGeneratedBy() throws Exception { MockHttpServletRequest req = request(RequestMethod.GET, getURI()); req.addParameter("generatedBy", USER_UUID); SimpleObject result = deserialize(handle(req)); Assert.assertEquals(2, Util.getResultsSize(result)); }
Source:
<code>public TableStatisticsImpl(String tableId, List<? extends PartitionStatistics> partitionStatistics, double fallbackNullFraction, double extraQualifierMultiplier) { this.tableId = tableId; this.partitionStatistics = partitionStatistics; assert partitionStatistics.size() > 0:"Partition statistics are 0"; this.fallbackNullFraction = fallbackNullFraction; this.extraQualifierMultiplier = extraQualifierMultiplier; isMergedStats = false; if (partitionStatistics.size() > 0) { if (partitionStatistics.get(0).getPartitionStatistics() != null) { int statsType = partitionStatistics.get(0).getPartitionStatistics().getStatsType(); isMergedStats = statsType == 2 || statsType == 3; } } <START> } <END></code><technical_language>Define enum more readable</technical_language>

Target:
public TableStatisticsImpl(String tableId, List<? extends PartitionStatistics> partitionStatistics, double fallbackNullFraction, double extraQualifierMultiplier) { this.tableId = tableId; this.partitionStatistics = partitionStatistics; assert partitionStatistics.size() > 0:"Partition statistics are 0"; this.fallbackNullFraction = fallbackNullFraction; this.extraQualifierMultiplier = extraQualifierMultiplier; isMergedStats = false; if (partitionStatistics.size() > 0) { if (partitionStatistics.get(0).getPartitionStatistics() != null) { int statsType = partitionStatistics.get(0).getPartitionStatistics().getStatsType(); isMergedStats = statsType == SYSTABLESTATISTICSRowFactory.REGULAR_MERGED_STATS || statsType == SYSTABLESTATISTICSRowFactory.SAMPLE_MERGED_STATS; } } }
Source:
<code>public TransformOperator() { <START> expressionImports.add("java.lang.Math.*"); <END> expressionImports.add("org.apache.commons.lang3.StringUtils.*"); }</code><technical_language>more added? DateUtils</technical_language>

Target:
public TransformOperator() { expressionFuntions.add("java.lang.Math.*"); expressionFuntions.add("org.apache.commons.lang3.StringUtils.*"); expressionFuntions.add("org.apache.commons.lang3.StringEscapeUtils.*"); expressionFuntions.add("org.apache.commons.lang3.time.DurationFormatUtils.*"); expressionFuntions.add("org.apache.commons.lang3.time.DateFormatUtils.*"); }
Source:
<code>void createTables(Map<TableReference, byte[]> tableRefToMetadata) { try { clientPool.runWithRetry(client -> { for (Map.Entry<TableReference, byte[]> entry : tableRefToMetadata.entrySet()) { createTable(entry.getKey(), entry.getValue(), client); } <START> CassandraKeyValueServices.waitForSchemaVersions(config, client, "after adding the column family for " <END> + "tables " + tableRefToMetadata.keySet() + " in a call to create tables"); return null; }); } catch (Exception e) { throw Throwables.unwrapAndThrowAtlasDbDependencyException(e); } }</code><technical_language>mentioned in delete section well; I wrapping calls: for (table in tables) { // wait for schema versions // create table (or do schema thing) // wait for schema versions }</technical_language>

Target:
void createTables(Map<TableReference, byte[]> tableRefToMetadata) { try { clientPool.runWithRetry(client -> { for (Map.Entry<TableReference, byte[]> entry : tableRefToMetadata.entrySet()) { CassandraKeyValueServices.runWithWaitingForSchemas( () -> createTable(entry.getKey(), entry.getValue(), client), config, client, "adding the column family for table " + entry.getKey() + " in a call to create tables"); } return null; }); } catch (Exception e) { throw Throwables.unwrapAndThrowAtlasDbDependencyException(e); } }
Source:
<code>private TaskLauncher findTaskLauncher(String platformName) { Launcher launcher = this.launcherRepository.findByName(platformName); if (launcher == null) { List<String> launcherNames = StreamSupport.stream(launcherRepository.findAll().spliterator(), false) .map(Launcher::getName) .collect(Collectors.toList()); <START> if (launcherNames.size() == 1) { <END> logger.info("Task platform doesn't exist, defaulting to existing single platform {}", platformName, launcherNames.get(0)); launcher = this.launcherRepository.findByName(launcherNames.get(0)); } if (launcher == null) { throw new IllegalStateException(String.format( "No Launcher found for the platform named '%s'. " + "Available platform names are %s", platformName, launcherNames)); } } TaskLauncher taskLauncher = launcher.getTaskLauncher(); if (taskLauncher == null) { throw new IllegalStateException(String.format("No TaskLauncher found for the platform named '%s'", platformName)); } return taskLauncher; }</code><technical_language>I fail fast platform name is explicitly exist. Instead of single platform if platform exist provided platform name, I need single platform if platform name is explicitly. need fix code [here](<LINK_0></technical_language>

Target:
private TaskLauncher findTaskLauncher(String platformName) { Launcher launcher = this.launcherRepository.findByName(platformName); if (launcher == null) { List<String> launcherNames = StreamSupport.stream(launcherRepository.findAll().spliterator(), false) .map(Launcher::getName) .collect(Collectors.toList()); throw new IllegalStateException(String.format("No Launcher found for the platform named '%s'. " + "Available platform names are %s", platformName, launcherNames)); } TaskLauncher taskLauncher = launcher.getTaskLauncher(); if (taskLauncher == null) { throw new IllegalStateException(String.format("No TaskLauncher found for the platform named '%s'", platformName)); } return taskLauncher; }
Source:
<code>private void saveNotificationsInRealm(List<Notification> notifications) { Realm realm = Realm.getDefaultInstance(); realm.executeTransaction(realm1 -> { realm1.delete(Notification.class); realm1.insertOrUpdate(notifications); <START> }); <END> realm.close(); }</code><technical_language>a new instance</technical_language>

Target:
private void saveNotificationsInRealm(List<Notification> notifications) { realm.executeTransaction(realm1 -> { realm1.delete(Notification.class); realm1.insertOrUpdate(notifications); }); }
Source:
<code>private void processUserDefinedPVCs( KubernetesEnvironment k8sEnv, RuntimeIdentity identity, String workspaceId, Map<String, PersistentVolumeClaim> volumeName2PVC) { final Map<String, PersistentVolumeClaim> envClaims = k8sEnv.getPersistentVolumeClaims(); Map<String, PersistentVolumeClaim> userDefinedPVCs = envClaims .values() .stream() .filter( p -> { Object isProvisioned = p.getAdditionalProperties().get("CHE_PROVISIONED"); return !(isProvisioned instanceof Boolean) || !(Boolean) isProvisioned; }) .collect(toMap(pvc -> pvc.getMetadata().getName(), Function.identity())); prefixSubpaths(userDefinedPVCs.keySet(), k8sEnv.getPodsData(), identity.getWorkspaceId()); for (PersistentVolumeClaim pvc : userDefinedPVCs.values()) { String originalPVCName = pvc.getMetadata().getName(); PersistentVolumeClaim existingPVC = volumeName2PVC.get(originalPVCName); if (existingPVC != null) { envClaims.remove(originalPVCName); changePVCReferences( k8sEnv.getPodsData(), originalPVCName, existingPVC.getMetadata().getName()); } else { putLabel(pvc, CHE_VOLUME_NAME_LABEL, originalPVCName); putLabel(pvc, CHE_WORKSPACE_ID_LABEL, workspaceId); final String uniqueName = Names.generateName(pvcNamePrefix + '-'); pvc.getMetadata().setName(uniqueName); <START> pvc.getAdditionalProperties().put("CHE_PROVISIONED", true); <END> envClaims.remove(originalPVCName); envClaims.put(uniqueName, pvc); volumeName2PVC.put(originalPVCName, pvc); changePVCReferences(k8sEnv.getPodsData(), originalPVCName, uniqueName); } } }</code><technical_language>pull "CHE_PROVISIONED" out a constant avoid typos</technical_language>

Target:
private void processUserDefinedPVCs( KubernetesEnvironment k8sEnv, RuntimeIdentity identity, String workspaceId, Map<String, PersistentVolumeClaim> volumeName2PVC) { final Map<String, PersistentVolumeClaim> envClaims = k8sEnv.getPersistentVolumeClaims(); Map<String, PersistentVolumeClaim> userDefinedPVCs = envClaims .values() .stream() .filter( p -> { Object isProvisioned = p.getAdditionalProperties().get(CHE_PROVISIONED_PVC_PROPERTY); return !(isProvisioned instanceof Boolean) || !(Boolean) isProvisioned; }) .collect(toMap(pvc -> pvc.getMetadata().getName(), Function.identity())); prefixSubpaths(userDefinedPVCs.keySet(), k8sEnv.getPodsData(), identity.getWorkspaceId()); for (PersistentVolumeClaim pvc : userDefinedPVCs.values()) { String originalPVCName = pvc.getMetadata().getName(); PersistentVolumeClaim existingPVC = volumeName2PVC.get(originalPVCName); if (existingPVC != null) { envClaims.remove(originalPVCName); changePVCReferences( k8sEnv.getPodsData(), originalPVCName, existingPVC.getMetadata().getName()); } else { putLabel(pvc, CHE_VOLUME_NAME_LABEL, originalPVCName); putLabel(pvc, CHE_WORKSPACE_ID_LABEL, workspaceId); final String uniqueName = Names.generateName(pvcNamePrefix + '-'); pvc.getMetadata().setName(uniqueName); pvc.getAdditionalProperties().put(CHE_PROVISIONED_PVC_PROPERTY, true); envClaims.remove(originalPVCName); envClaims.put(uniqueName, pvc); volumeName2PVC.put(originalPVCName, pvc); changePVCReferences(k8sEnv.getPodsData(), originalPVCName, uniqueName); } } }
Source:
<code>public void loadFilters() { view.addNumericFilter(constants.Id(), constants.FilterByTaskId(), f -> addSearchFilter(f, equalsTo(COLUMN_TASK_ID, f.getValue())) ); view.addTextFilter(constants.Task(), constants.FilterByTaskName(), f -> addSearchFilter(f, likeTo(COLUMN_NAME, f.getValue(), false)) ); final Map<String, String> status = getStatusByType(TaskType.ALL).stream().sorted().collect(Collectors.toMap(key -> key, value -> translationService.format(value))); view.addMultiSelectFilter(constants.Status(), status, f -> addSearchFilterList(COLUMN_STATUS, f)); view.addTextFilter(constants.Process_Instance_Correlation_Key(), constants.FilterByCorrelationKey(), f -> addSearchFilter(f, likeTo(COLUMN_PROCESS_INSTANCE_CORRELATION_KEY, f.getValue(), false)) ); view.addTextFilter(constants.Actual_Owner(), constants.FilterByActualOwner(), f -> addSearchFilter(f, likeTo(COLUMN_ACTUAL_OWNER, f.getValue(), false)) ); view.addTextFilter(constants.Process_Instance_Description(), constants.FilterByProcessInstanceDescription(), f -> addSearchFilter(f, likeTo(COLUMN_PROCESS_INSTANCE_DESCRIPTION, f.getValue(), false)) ); addTaskNameFilter(getDataSetId()); addProcessNameFilter(getDataSetId()); <START> addContainerIdFilter(getDataSetId()); <END> view.addDateRangeFilter(constants.Created_On(), constants.Created_On_Placeholder(), true, f -> addSearchFilter(f, between(COLUMN_CREATED_ON, f.getValue().getStartDate(), f.getValue().getEndDate())) ); }</code><technical_language>@bxf12315 Container Id filter is technical, added Task Inbox, Manage Tasks. Please add this logic _TaskAdminListBasicFiltersPresenter_ only</technical_language>

Target:
public void loadFilters() { view.addNumericFilter(constants.Id(), constants.FilterByTaskId(), f -> addSearchFilter(f, equalsTo(COLUMN_TASK_ID, f.getValue())) ); view.addTextFilter(constants.Task(), constants.FilterByTaskName(), f -> addSearchFilter(f, likeTo(COLUMN_NAME, f.getValue(), false)) ); final Map<String, String> status = getStatusByType(TaskType.ALL).stream().sorted().collect(Collectors.toMap(key -> key, value -> translationService.format(value))); view.addMultiSelectFilter(constants.Status(), status, f -> addSearchFilterList(COLUMN_STATUS, f)); view.addTextFilter(constants.Process_Instance_Correlation_Key(), constants.FilterByCorrelationKey(), f -> addSearchFilter(f, likeTo(COLUMN_PROCESS_INSTANCE_CORRELATION_KEY, f.getValue(), false)) ); view.addTextFilter(constants.Actual_Owner(), constants.FilterByActualOwner(), f -> addSearchFilter(f, likeTo(COLUMN_ACTUAL_OWNER, f.getValue(), false)) ); view.addTextFilter(constants.Process_Instance_Description(), constants.FilterByProcessInstanceDescription(), f -> addSearchFilter(f, likeTo(COLUMN_PROCESS_INSTANCE_DESCRIPTION, f.getValue(), false)) ); addTaskNameFilter(getDataSetId()); addProcessNameFilter(getDataSetId()); view.addDateRangeFilter(constants.Created_On(), constants.Created_On_Placeholder(), true, f -> addSearchFilter(f, between(COLUMN_CREATED_ON, f.getValue().getStartDate(), f.getValue().getEndDate())) ); }
Source:
<code>private void changeStatus(DestroyVmVDSCommandParameters parameters, VM curVm) { if (getParameters().getVdsId().equals(curVm.getRunOnVds())) { ResourceManager.getInstance().InternalSetVmStatus(curVm, <START> parameters.getGracefully() ? VMStatus.PoweringDown : VMStatus.Down, curVm.getStatusUpdatedTime()); <END> } }</code><technical_language>needed (the is null anyway)</technical_language>

Target:
private void changeStatus(DestroyVmVDSCommandParameters parameters, VM curVm) { if (getParameters().getVdsId().equals(curVm.getRunOnVds())) { ResourceManager.getInstance().InternalSetVmStatus(curVm, parameters.getGracefully() ? VMStatus.PoweringDown : VMStatus.Down); } }
Source:
<code>public String indexState(TreeSet<Long> modTimes) throws IllegalStateException, MissingObjectException, IncorrectObjectTypeException, IOException { DirCache dc = DirCache.read(db); Map lookup = new HashMap(); List ret = new ArrayList(dc.getEntryCount()); NameConflictTreeWalk tw = new NameConflictTreeWalk(db); tw.reset(); tw.addTree(new FileTreeIteratorWithTimeControl(db, modTimes)); tw.addTree(new DirCacheIterator(dc)); <START> FileTreeIteratorWithTimeControl fIt; <END> DirCacheIterator dcIt; List entry; boolean smudgedBefore; while (tw.next()) { entry = new ArrayList(4); fIt = tw.getTree(0, FileTreeIteratorWithTimeControl.class); dcIt = tw.getTree(1, DirCacheIterator.class); entry.add(tw.getPathString()); entry.add("modTime(index/file): " + lookup(Long.valueOf(fIt.getEntryLastModified()), "t%n", lookup) + "/" + lookup(Long.valueOf(dcIt.getDirCacheEntry() .getLastModified()), "t%n", lookup)); smudgedBefore = dcIt.getDirCacheEntry().isSmudged(); if (fIt.isModified(dcIt.getDirCacheEntry(), true, true, db.getFS())) entry.add("dirty"); if (dcIt.getDirCacheEntry().isSmudged()) entry.add("smudged"); else if (smudgedBefore) entry.add("unsmudged"); ret.add(entry); } return ret.toString(); }</code><technical_language>Please declare variables scope needed, of while loop</technical_language>

Target:
public String indexState(TreeSet<Long> modTimes) throws IllegalStateException, MissingObjectException, IncorrectObjectTypeException, IOException { DirCache dc = DirCache.read(db); Map lookup = new HashMap(); List ret = new ArrayList(dc.getEntryCount()); NameConflictTreeWalk tw = new NameConflictTreeWalk(db); tw.reset(); tw.addTree(new FileTreeIteratorWithTimeControl(db, modTimes)); tw.addTree(new DirCacheIterator(dc)); boolean smudgedBefore; while (tw.next()) { List entry = new ArrayList(4); FileTreeIteratorWithTimeControl fIt = tw.getTree(0, FileTreeIteratorWithTimeControl.class); DirCacheIterator dcIt = tw.getTree(1, DirCacheIterator.class); entry.add(tw.getPathString()); entry.add("modTime(index/file): " + lookup(Long.valueOf(dcIt.getDirCacheEntry() .getLastModified()), "t%n", lookup) + "/" + lookup(Long.valueOf(fIt.getEntryLastModified()), "t%n", lookup)); smudgedBefore = dcIt.getDirCacheEntry().isSmudged(); if (fIt.isModified(dcIt.getDirCacheEntry(), true, true, db.getFS())) entry.add("dirty"); if (dcIt.getDirCacheEntry().isSmudged()) entry.add("smudged"); else if (smudgedBefore) entry.add("unsmudged"); ret.add(entry); } return ret.toString(); }
Source:
<code><START> public static SymbolicValue get(ExpressionTree expression) { <END> if (expression.is(Kind.IDENTIFIER_REFERENCE)) { IdentifierTree identifier = (IdentifierTree) expression; if ("undefined".equals(identifier.name())) { return NULL_OR_UNDEFINED; } } return expression.is(Kind.NULL_LITERAL) ? NULL_OR_UNDEFINED : UNKNOWN; }</code><technical_language>@pynicolas I worth extend this method cover true false literals</technical_language>

Target:
public static SymbolicValue get(ExpressionTree expression) { SymbolicValue value = UNKNOWN; if (expression.is(Kind.NULL_LITERAL)) { value = NULL_OR_UNDEFINED; } else if (expression.is(Kind.BOOLEAN_LITERAL)) { value = booleanLiteral((LiteralTree) expression); } else if (expression.is(Kind.STRING_LITERAL)) { value = stringLiteral((LiteralTree) expression); } else if (expression.is(Kind.NUMERIC_LITERAL)) { value = numericLiteral((LiteralTree) expression); } else if (expression.is(Kind.IDENTIFIER_REFERENCE)) { IdentifierTree identifier = (IdentifierTree) expression; if ("undefined".equals(identifier.name())) { value = NULL_OR_UNDEFINED; } } return value; }
Source:
<code>public DrawLotteryResultDto drawLotteryPrize(String mobile){ logger.debug(mobile + " is drawing the lottery prize."); Date nowDate = DateTime.now().toDate(); if(!nowDate.before(activityChristmasEndTime) || !nowDate.after(activityChristmasStartTime)){ return new DrawLotteryResultDto(3); } if (StringUtils.isEmpty(mobile)) { logger.debug("User not login. can't draw prize."); return new DrawLotteryResultDto(2); } UserModel userModel = userMapper.findByMobile(mobile); if(userModel == null){ logger.debug(mobile + "User is not found."); return new DrawLotteryResultDto(2); } <START> <END> int drawTime = getDrawPrizeTime(mobile); if(drawTime <= 0){ logger.debug(mobile + "is no chance. draw time:" + drawTime); return new DrawLotteryResultDto(1); } userMapper.lockByLoginName(userModel.getLoginName()); LotteryPrize christmasPrize = lotteryDrawActivityService.lotteryDrawPrize(ActivityCategory.CHRISTMAS_ACTIVITY); PrizeType prizeType = PrizeType.CONCRETE; if(christmasPrize.equals(LotteryPrize.RED_ENVELOPE_20_POINT_DRAW_REF_CARNIVAL)){ couponAssignmentService.assignUserCoupon(mobile, getCouponId(christmasPrize)); prizeType = PrizeType.VIRTUAL; } userLotteryPrizeMapper.create(new UserLotteryPrizeModel(mobile, userModel.getLoginName(), Strings.isNullOrEmpty(userModel.getUserName()) ? "" : userModel.getUserName(), christmasPrize, DateTime.now().toDate(), ActivityCategory.CHRISTMAS_ACTIVITY)); return new DrawLotteryResultDto(0, christmasPrize.name(), prizeType.name(), christmasPrize.getDescription()); }</code><technical_language>userMapper.lockByLoginName(userModel.getLoginName());</technical_language>

Target:
public DrawLotteryResultDto drawLotteryPrize(String mobile){ logger.debug(mobile + " is drawing the lottery prize."); Date nowDate = DateTime.now().toDate(); if(!nowDate.before(activityChristmasEndTime) || !nowDate.after(activityChristmasStartTime)){ return new DrawLotteryResultDto(3); } if (StringUtils.isEmpty(mobile)) { logger.debug("User not login. can't draw prize."); return new DrawLotteryResultDto(2); } UserModel userModel = userMapper.findByMobile(mobile); if(userModel == null){ logger.debug(mobile + "User is not found."); return new DrawLotteryResultDto(2); } userMapper.lockByLoginName(userModel.getLoginName()); int drawTime = getDrawPrizeTime(mobile); if(drawTime <= 0){ logger.debug(mobile + "is no chance. draw time:" + drawTime); return new DrawLotteryResultDto(1); } LotteryPrize christmasPrize = lotteryDrawActivityService.lotteryDrawPrize(ActivityCategory.CHRISTMAS_ACTIVITY); PrizeType prizeType = PrizeType.CONCRETE; if(christmasPrize.equals(LotteryPrize.RED_ENVELOPE_20_POINT_DRAW_REF_CARNIVAL)){ couponAssignmentService.assignUserCoupon(mobile, RED_ENVELOPE_20_POINT_DRAW_REF_CARNIVAL_COUPON_ID); prizeType = PrizeType.VIRTUAL; } userLotteryPrizeMapper.create(new UserLotteryPrizeModel(mobile, userModel.getLoginName(), Strings.isNullOrEmpty(userModel.getUserName()) ? "" : userModel.getUserName(), christmasPrize, DateTime.now().toDate(), ActivityCategory.CHRISTMAS_ACTIVITY)); return new DrawLotteryResultDto(0, christmasPrize.name(), prizeType.name(), christmasPrize.getDescription()); }
Source:
<code>public void testRunSyncInvalidTable() throws Exception { GroupRequest groupRequest = new GroupRequest(); groupRequest.setTable(TestUtils.TEST_TABLE_NAME + "-dummy"); groupRequest.setNesting(Arrays.asList("os", "device", "version")); try { Entity<GroupRequest> serviceUserEntity = Entity.json(groupRequest); resources.client().target("/foxtrot/v1/generate/test").request() .post(serviceUserEntity, GroupResponse.class); <START> } catch (WebApplicationException ex) { <END> assertEquals(Response.Status.NOT_FOUND.getStatusCode(), ex.getResponse().getStatus()); } }</code><technical_language>Put a fail() catch. mandate exception is thrown</technical_language>

Target:
public void testRunSyncInvalidTable() throws Exception { GroupRequest groupRequest = new GroupRequest(); groupRequest.setTable(TestUtils.TEST_TABLE_NAME + "-dummy"); groupRequest.setNesting(Arrays.asList("os", "device", "version")); try { Entity<GroupRequest> serviceUserEntity = Entity.json(groupRequest); resources.client().target("/foxtrot/v1/generate/test").request() .post(serviceUserEntity, GroupResponse.class); fail(); } catch (WebApplicationException ex) { assertEquals(Response.Status.NOT_FOUND.getStatusCode(), ex.getResponse().getStatus()); } }
Source:
<code>public IntegrationFlow pollingFlow() { IntegrationFlowBuilder flowBuilder = IntegrationFlows.from(jdbcMessageSource(), new Consumer<SourcePollingChannelAdapterSpec>() { @Override public void accept(SourcePollingChannelAdapterSpec sourcePollingChannelAdapterSpec) { sourcePollingChannelAdapterSpec <START> .autoStartup(false) <END> .poller(poller()); } }); if (properties.isSplit()) { flowBuilder.split(); } flowBuilder.channel(source.output()); return flowBuilder.get(); }</code><technical_language>changed in SCDF XD, need worry auto-startup phase default behavior works is. I this .autoStartup(false) is redundant</technical_language>

Target:
public IntegrationFlow pollingFlow() { IntegrationFlowBuilder flowBuilder = IntegrationFlows.from(jdbcMessageSource(), new Consumer<SourcePollingChannelAdapterSpec>() { @Override public void accept(SourcePollingChannelAdapterSpec sourcePollingChannelAdapterSpec) { sourcePollingChannelAdapterSpec .autoStartup(false) .poller(poller); } }); if (properties.isSplit()) { flowBuilder.split(); } flowBuilder.channel(source.output()); return flowBuilder.get(); }
Source:
<code>public void configureMarker(TraceMarker traceMarker) { RGBA color = traceMarker.getRGBAColor(); String category = traceMarker.getCategory(); <START> if(!fCategories.contains(category)) { <END> fCategories.add(category); } String label = traceMarker.getLabel(); long start = traceMarker.getStartTime(); long duration = traceMarker.getDuration(); MarkerEvent traceMarkerEvent = new MarkerEvent(null, start, duration, category, color, label, true); fTraceMarkerEvents.add(traceMarkerEvent); TmfMarkerEventSourceUpdatedSignal signal = new TmfMarkerEventSourceUpdatedSignal(this); TmfSignalManager.dispatchSignal(signal); }</code><technical_language>missing white space if. automatically format code, ctrl-shift-f file</technical_language>

Target:
public void configureMarker(TraceMarker traceMarker) { RGBA color = traceMarker.getRGBAColor(); String category = traceMarker.getCategory(); if (!fCategories.contains(category)) { fCategories.add(category); } String label = traceMarker.getLabel(); long start = traceMarker.getStartTime(); long duration = traceMarker.getDuration(); MarkerEvent traceMarkerEvent = new MarkerEvent(null, start, duration, category, color, label, true); fTraceMarkerEvents.add(traceMarkerEvent); TmfSignalManager.dispatchSignal(new TmfMarkerEventSourceUpdatedSignal(this)); }
Source:
<code>private TableStatistics pruneStatistics(TableStatistics tableStatistics, Set<ColumnHandle> desiredColumns) { Map<ColumnHandle, ColumnStatistics> columnStatistics = tableStatistics.getColumnStatistics() <START> .entrySet().stream() <END> .filter(entry -> desiredColumns.contains(entry.getKey())) .collect(toImmutableMap(Map.Entry::getKey, Map.Entry::getValue)); return new TableStatistics(tableStatistics.getRowCount(), columnStatistics); }</code><technical_language>nit: put in previous line</technical_language>

Target:
private TableStatistics pruneStatistics(TableStatistics tableStatistics, Set<ColumnHandle> desiredColumns) { Map<ColumnHandle, ColumnStatistics> columnStatistics = tableStatistics.getColumnStatistics().entrySet().stream() .filter(entry -> desiredColumns.contains(entry.getKey())) .collect(toImmutableMap(Entry::getKey, Entry::getValue)); return new TableStatistics(tableStatistics.getRowCount(), columnStatistics); }
Source:
<code>public ClassNameNode(ClassTree tree) { super(TreeUtils.typeOf(tree)); <START> assert TreeUtils.isClassTree(tree); <END> this.tree = tree; this.element = TreeUtils.elementFromDeclaration(tree); this.parent = null; }</code><technical_language>I remove this assert. parameter is a ClassTree I this is guard against</technical_language>

Target:
public ClassNameNode(ClassTree tree) { super(TreeUtils.typeOf(tree)); this.tree = tree; this.element = TreeUtils.elementFromDeclaration(tree); this.parent = null; }
Source:
<code>private static TreeSet<Text> genSplits(int level, int numTablets, long max, int nodeSize) { TreeSet<Text> splits = new TreeSet<>(); int numSplits = numTablets - 1; <START> long distance = ((max - 0) / numTablets) + 1; <END> long split = distance; for (int i = 0; i < numSplits; i++) { Node node = new Node(split, level, nodeSize); splits.add(new Text(node.getRowId())); split += distance; } return splits; }</code><technical_language>is purpose of (max - 0)</technical_language>

Target:
private static TreeSet<Text> genSplits(int level, int numTablets, long max, int nodeSize) { TreeSet<Text> splits = new TreeSet<>(); int numSplits = numTablets - 1; long distance = (max / numTablets) + 1; long split = distance; for (int i = 0; i < numSplits; i++) { Node node = new Node(split, level, nodeSize); splits.add(new Text(node.getRowId())); split += distance; } return splits; }
Source:
<code>public List<IItemDescriptor<T>> getItemDescriptors() { ArrayList<IItemDescriptor<T>> descriptors = Lists.newArrayList(registry.values()); if (descriptors.size() > 0) { <START> Collections.sort(descriptors); <END> } return descriptors; }</code><technical_language>get this sort out of getter</technical_language>

Target:
public List<IItemDescriptor<T>> getItemDescriptors() { return Lists.newArrayList(registry.values()); }
Source:
<code>protected void fetchDocumentationFile() { <START> fetchFile(getDocumentationBaseURL() + "userportal", documentationFileFetchedEvent); END> }</code><technical_language>please reuse branding application name constant</technical_language>

Target:
protected void fetchDocumentationFile() { fetchFile(getDocumentationBaseURL() + "userportal.json", documentationFileFetchedEvent); }
Source:
<code>public void validate(String s) { NumberRepresentation br = new NumberRepresentation( s, true, false, false ) { @Override void parse(String val, int radix) { if ( radix == 10 ) { Integer.parseInt( val, radix ); } <START> else { <END> if ( new BigInteger( val, radix ).bitLength() > 32 ) { throw new NumberFormatException( "integer number too large" ); } } } }; br.validate(); }</code><technical_language>else if</technical_language>

Target:
public void validate(String s) { NumberRepresentation br = new NumberRepresentation( s, true, false, false ) { @Override void parse(String val, int radix) { if ( radix == 10 ) { Integer.parseInt( val, radix ); } else if ( new BigInteger( val, radix ).bitLength() > 32 ) { throw new NumberFormatException( "integer number too large" ); } } }; br.validate(); }
Source:
<code>public void info(String message) { LoggerFactory lf = getLoggerFactory(); if (lf == null) { parentServletContext.log(message); } else { <START> lf.getLogger(consumingContext.getBundle(), HttpServiceRuntimeImpl.class.getName(), <END> Logger.class).info("{}", message); } }</code><technical_language>This is http.servlet context. need getLogger w/ bundle method here</technical_language>

Target:
public void info(String message) { Logger logger = loggerFactoryTracker.getService(); if (logger == null) { parentServletContext.log(String.valueOf(message)); } else { logger.info(String.valueOf(message)); } }
Source:
<code>protected void runInContext() { try { s_logger.debug("HostStatsCollector is running..."); SearchCriteria<HostVO> sc = _hostDao.createSearchCriteria(); sc.addAnd("status", SearchCriteria.Op.EQ, Status.Up.toString()); sc.addAnd("resourceState", SearchCriteria.Op.NIN, ResourceState.Maintenance, ResourceState.PrepareForMaintenance, ResourceState.ErrorInMaintenance); <START> sc.addAnd("type", SearchCriteria.Op.EQ, Host.Type.Routing.toString()); <END> ConcurrentHashMap<Long, HostStats> hostStats = new ConcurrentHashMap<Long, HostStats>(); Map<Object, Object> metrics = new HashMap<>(); List<HostVO> hosts = _hostDao.search(sc, null); for (HostVO host : hosts) { HostStatsEntry hostStatsEntry = (HostStatsEntry)_resourceMgr.getHostStatistics(host.getId()); if (hostStatsEntry != null) { hostStatsEntry.setHostVo(host); metrics.put(hostStatsEntry.getHostId(), hostStatsEntry); _hostStats.put(host.getId(), hostStatsEntry); } else { s_logger.warn("Received invalid host stats for host: " + host.getId()); } } if (externalStatsType == ExternalStatsProtocol.INFLUXDB) { sendMetricsToInfluxdb(metrics); } updateGpuEnabledHostsDetails(hosts); } catch (Throwable t) { s_logger.error("Error trying to retrieve host stats", t); } }</code><technical_language>Awesome!! Instead of defining do want, want</technical_language>

Target:
protected void runInContext() { try { s_logger.debug("HostStatsCollector is running..."); SearchCriteria<HostVO> sc = createSearchCriteriaForHostTypeRoutingStateUpAndNotInMaintenance(); Map<Object, Object> metrics = new HashMap<>(); List<HostVO> hosts = _hostDao.search(sc, null); for (HostVO host : hosts) { HostStatsEntry hostStatsEntry = (HostStatsEntry)_resourceMgr.getHostStatistics(host.getId()); if (hostStatsEntry != null) { hostStatsEntry.setHostVo(host); metrics.put(hostStatsEntry.getHostId(), hostStatsEntry); _hostStats.put(host.getId(), hostStatsEntry); } else { s_logger.warn("The Host stats is null for host: " + host.getId()); } } if (externalStatsType == ExternalStatsProtocol.INFLUXDB) { sendMetricsToInfluxdb(metrics); } updateGpuEnabledHostsDetails(hosts); } catch (Throwable t) { s_logger.error("Error trying to retrieve host stats", t); } }
Source:
<code>public List<PermissionSubject> getPermissionCheckSubjects() { <START> NGuid dataCenterId = getNetwork().getDataCenterId(); <END> return Collections.singletonList(new PermissionSubject(dataCenterId == null ? null : dataCenterId.getValue(), VdcObjectType.StoragePool, getActionType().getActionGroup())); }</code><technical_language>getNetwork() implemented getParameters().getNetwork() - networkExists() is performed validation, i add a check getParameters().getNetwork() returns null. result same: command fail, instead of "oVirt internal error" a long stacktrace log user get a messag of: "User is authorized perform this action"</technical_language>

Target:
public List<PermissionSubject> getPermissionCheckSubjects() { if (getNetwork() == null) { return Collections.<PermissionSubject> emptyList(); } NGuid dataCenterId = getNetwork().getDataCenterId(); return Collections.singletonList(new PermissionSubject(dataCenterId == null ? null : dataCenterId.getValue(), VdcObjectType.StoragePool, getActionType().getActionGroup())); }
Source:
<code>protected void buildVmCD() { Map<String, Object> struct; if (vm.getVmPayload() != null && vm.getVmPayload().getType() == VmDeviceType.CDROM) { VmDevice vmDevice = new VmDevice(new VmDeviceId(Guid.NewGuid(), vm.getId()), VmDeviceType.DISK.getName(), VmDeviceType.CDROM.getName(), "", 0, (vm.getVmPayload() == null) ? null : vm.getVmPayload().getSpecParams(), true, true, true, ""); struct = new HashMap<String, Object>(); addCdDetails(vmDevice, struct); addDevice(struct, vmDevice, ""); } if (vm.isRunOnce() && !StringUtils.isEmpty(vm.getCdPath())) { VmDevice vmDevice = new VmDevice(new VmDeviceId(Guid.NewGuid(), vm.getId()), VmDeviceType.DISK.getName(), VmDeviceType.CDROM.getName(), "", 0, (vm.getVmPayload() == null) ? null : vm.getVmPayload().getSpecParams(), true, true, true, ""); struct = new HashMap<String, Object>(); addCdDetails(vmDevice, struct); addDevice(struct, vmDevice, vm.getCdPath()); } else { List<VmDevice> vmDevices = DbFacade.getInstance() .getVmDeviceDao() .getVmDeviceByVmIdTypeAndDevice(vm.getId(), VmDeviceType.DISK.getName(), VmDeviceType.CDROM.getName()); for (VmDevice vmDevice : vmDevices) { if (!vmDevice.getIsManaged()) { continue; } <START> if (!VmPayload.isPayload(vmDevice.getSpecParams()) && vmDevices.size() > 1) { <END> continue; } struct = new HashMap<String, Object>(); String cdPath = vm.getCdPath(); addCdDetails(vmDevice, struct); addAddress(vmDevice, struct); addDevice(struct, vmDevice, cdPath == null ? "" : cdPath); } } }</code><technical_language>is a bug enable payload other cd: <LINK_0> need ignore if cloud init is</technical_language>

Target:
protected void buildVmCD() { Map<String, Object> struct; if (vm.getVmPayload() != null && vm.getVmPayload().getType() == VmDeviceType.CDROM) { VmDevice vmDevice = new VmDevice(new VmDeviceId(Guid.NewGuid(), vm.getId()), VmDeviceGeneralType.DISK, VmDeviceType.CDROM.getName(), "", 0, (vm.getVmPayload() == null) ? null : vm.getVmPayload().getSpecParams(), true, true, true, "", null); struct = new HashMap<String, Object>(); addCdDetails(vmDevice, struct); addDevice(struct, vmDevice, ""); } if (vm.isRunOnce() && !StringUtils.isEmpty(vm.getCdPath())) { VmDevice vmDevice = new VmDevice(new VmDeviceId(Guid.NewGuid(), vm.getId()), VmDeviceGeneralType.DISK, VmDeviceType.CDROM.getName(), "", 0, (vm.getVmPayload() == null) ? null : vm.getVmPayload().getSpecParams(), true, true, true, "", null); struct = new HashMap<String, Object>(); addCdDetails(vmDevice, struct); addDevice(struct, vmDevice, vm.getCdPath()); } else { List<VmDevice> vmDevices = DbFacade.getInstance() .getVmDeviceDao() .getVmDeviceByVmIdTypeAndDevice(vm.getId(), VmDeviceGeneralType.DISK, VmDeviceType.CDROM.getName()); for (VmDevice vmDevice : vmDevices) { if (!vmDevice.getIsManaged()) { continue; } if (!VmPayload.isPayload(vmDevice.getSpecParams()) && vmDevices.size() > 1) { continue; } struct = new HashMap<String, Object>(); String cdPath = vm.getCdPath(); addCdDetails(vmDevice, struct); addAddress(vmDevice, struct); addDevice(struct, vmDevice, cdPath == null ? "" : cdPath); } } }
Source:
<code>public void setUp() throws Exception { configService = new OpenMRSConfigServiceImpl(); initMocks(this); doNothing().when(eventRelay).sendEventMessage(new MotechEvent(Constants.CONFIG_CHANGE_EVENT, new HashMap<>())); <START> configService.setEventRelay(eventRelay); <END> }</code><technical_language>Do need this? Inject mocks handle that</technical_language>

Target:
public void setUp() throws Exception { configService = new OpenMRSConfigServiceImpl(); initMocks(this); }
Source:
<code>private void validateSchema(Schema inputSchema) { Schema.Type fieldToClassifyType = inputSchema.getField(config.fieldToClassify).getSchema().getType(); Preconditions.checkArgument(fieldToClassifyType == Schema.Type.STRING, "Field to classify must be of type String, but was %s.", fieldToClassifyType); Schema.Field predictionField = inputSchema.getField(config.fieldToSet); Preconditions.checkArgument(predictionField == null, <START> "Prediction field must already not exist in input schema."); <END> }</code><technical_language>nit: 'must already'</technical_language>

Target:
private void validateSchema(Schema inputSchema) { Schema.Type fieldToClassifyType = inputSchema.getField(config.fieldToClassify).getSchema().getType(); Preconditions.checkArgument(fieldToClassifyType == Schema.Type.STRING, "Field to classify must be of type String, but was %s.", fieldToClassifyType); Schema.Field predictionField = inputSchema.getField(config.fieldToSet); Preconditions.checkArgument(predictionField == null, "Prediction field must not already exist in input schema."); }
Source:
<code>public int hashCode() { <START> return Collections.hash(this); <END> }</code><technical_language>I this is wrong way. HAMT's implementations of equals() hashCode() more complex usual (see HAMTTest::shouldEqualsIgnoreOrder() #1823 #1815). This behavior is checked in HashMap this is a bug in tests</technical_language>

Target:
public int hashCode() { return trie.hashCode(); }
Source:
<code>public void onEvent(CourseUpgradedEvent event) { <START> EventBus.getDefault().removeStickyEvent(CourseUpgradedEvent.class); <END> finish(); }</code><technical_language>removeStickyEvent called CourseOutlineActivity other screens closed. <img src="<LINK_0>" height="480"></technical_language>

Target:
public void onEvent(CourseUpgradedEvent event) { finish(); }