nus-yam/ex-repair huggingface dataset:
Program: 174722
Project: 174722
Buggy source:
public static List<Block> getDatScriptInfo() throws Exception {
  DataInputStream dataInputStream=new DataInputStream(new FileInputStream(Settings.datFileLocation));
  List<Block> datBlocks=new ArrayList<>();
  int numberOfBlocks=(int)dataInputStream.readShort();
  Block block;
  for (int blockIndex=0; blockIndex < numberOfBlocks; blockIndex++) {
    int numberOfBytesInThisBlock=dataInputStream.readShort();
    if (DataFromFile.getMapOfShopNameToShopBlock().values().contains((Integer)blockIndex)) {
      block=buildShopBlock(blockIndex,dataInputStream,numberOfBytesInThisBlock / 2);
    }
 else {
      block=new Block(blockIndex);
      addBlockContentsToBlock(block,dataInputStream,numberOfBytesInThisBlock / 2);
    }
    datBlocks.add(block);
    GameDataTracker.addBlock(block);
  }
  return datBlocks;
}

Fixed version (ground truth):
public static List<Block> getDatScriptInfo() throws Exception {
  DataInputStream dataInputStream=new DataInputStream(new FileInputStream(Settings.datFileLocation));
  List<Block> datBlocks=new ArrayList<>();
  int numberOfBlocks=(int)dataInputStream.readShort();
  Block block;
  for (int blockIndex=0; blockIndex < numberOfBlocks; blockIndex++) {
    int numberOfBytesInThisBlock=dataInputStream.readShort();
    if (DataFromFile.getMapOfShopNameToShopBlock().values().contains((Integer)blockIndex)) {
      block=buildShopBlock(blockIndex,dataInputStream,numberOfBytesInThisBlock / 2);
    }
 else {
      block=new Block(blockIndex);
      addBlockContentsToBlock(block,dataInputStream,numberOfBytesInThisBlock / 2);
      if (blockIndex == 693) {
        Integer becomingSmallFlagIndex=null;
        BlockContents blockContents;
        for (int i=0; i < block.getBlockContents().size(); i++) {
          blockContents=block.getBlockContents().get(i);
          if (blockContents instanceof BlockFlagData && ((BlockFlagData)blockContents).getWorldFlag() == 554) {
            becomingSmallFlagIndex=i;
          }
          if (becomingSmallFlagIndex != null) {
            block.getBlockContents().remove(becomingSmallFlagIndex);
          }
        }
      }
    }
    datBlocks.add(block);
    GameDataTracker.addBlock(block);
  }
  return datBlocks;
}
Program: 174723
Project: 174723
Buggy source:
public static void updateBlock(String chestLocation,String chestContents){
  Map<String,GameObjectId> nameToDataMap=DataFromFile.getMapOfItemToUsefulIdentifyingRcdData();
  GameObjectId itemNewContentsData=nameToDataMap.get(chestContents);
  GameObjectId itemLocationData=nameToDataMap.get(chestLocation);
  List<Block> blocksToModify=mapOfChestIdentifyingInfoToBlock.get(nameToDataMap.get(chestLocation));
  for (  Block block : blocksToModify) {
    for (    BlockContents blockContents : block.getBlockContents()) {
      if (blockContents instanceof BlockFlagData) {
        BlockFlagData flagData=(BlockFlagData)blockContents;
        if (flagData.getWorldFlag() == itemLocationData.getWorldFlag()) {
          flagData.setWorldFlag((short)itemNewContentsData.getWorldFlag());
          flagData.setFlagValue((short)2);
        }
      }
 else       if (blockContents instanceof BlockItemData) {
        BlockItemData itemData=(BlockItemData)blockContents;
        if (itemData.getItemData() == itemLocationData.getInventoryArg()) {
          itemData.setItemData(itemNewContentsData.getInventoryArg());
        }
      }
    }
  }
}

Fixed version (ground truth):
public static void updateBlock(String itemLocation,String randomizedContents){
  Map<String,GameObjectId> nameToDataMap=DataFromFile.getMapOfItemToUsefulIdentifyingRcdData();
  GameObjectId itemNewContentsData=nameToDataMap.get(randomizedContents);
  GameObjectId itemLocationData=nameToDataMap.get(itemLocation);
  List<Block> blocksToModify=mapOfChestIdentifyingInfoToBlock.get(nameToDataMap.get(itemLocation));
  for (  Block block : blocksToModify) {
    for (    BlockContents blockContents : block.getBlockContents()) {
      if (blockContents instanceof BlockFlagData) {
        BlockFlagData flagData=(BlockFlagData)blockContents;
        if (flagData.getWorldFlag() == itemLocationData.getWorldFlag()) {
          flagData.setWorldFlag((short)itemNewContentsData.getWorldFlag());
          flagData.setFlagValue((short)2);
        }
      }
 else       if (blockContents instanceof BlockItemData) {
        BlockItemData itemData=(BlockItemData)blockContents;
        if (itemData.getItemData() == itemLocationData.getInventoryArg()) {
          itemData.setItemData(itemNewContentsData.getInventoryArg());
        }
      }
    }
  }
}
Program: 174724
Project: 174724
Buggy source:
public static void writeRcd(List<Zone> rcdInfo) throws IOException {
  DataOutputStream dataOutputStream=new DataOutputStream(new FileOutputStream("String_Node_Str"));
  dataOutputStream.writeShort(0);
  for (  Zone zone : rcdInfo) {
    dataOutputStream.writeByte(zone.getName().length());
    dataOutputStream.writeShort(zone.getObjects().size());
    dataOutputStream.writeChars(zone.getName());
    for (    GameObject obj : zone.getObjects()) {
      writeObject(obj,dataOutputStream);
    }
    for (    Room room : zone.getRooms()) {
      dataOutputStream.writeShort(room.getObjects().size());
      for (      GameObject obj : room.getObjects()) {
        writeObject(obj,dataOutputStream);
      }
      for (      Screen screen : room.getScreens()) {
        dataOutputStream.writeByte(screen.getName().length());
        dataOutputStream.writeShort(screen.getObjects().size());
        dataOutputStream.writeByte(getNoPositionScreenObjectCount(screen.getObjects()));
        for (        GameObject obj : room.getObjects()) {
          writeObject(obj,dataOutputStream);
        }
        dataOutputStream.writeChars(screen.getName());
        for (        ScreenExit exit : screen.getScreenExits()) {
          dataOutputStream.writeByte(exit.getZoneIndex());
          dataOutputStream.writeByte(exit.getRoomIndex());
          dataOutputStream.writeByte(exit.getScreenIndex());
        }
      }
    }
  }
  dataOutputStream.flush();
  dataOutputStream.close();
}

Fixed version (ground truth):
public static void writeRcd(List<Zone> rcdInfo) throws IOException {
  DataOutputStream dataOutputStream=new DataOutputStream(new FileOutputStream("String_Node_Str"));
  dataOutputStream.writeShort(0);
  for (  Zone zone : rcdInfo) {
    dataOutputStream.writeByte(zone.getName().length());
    dataOutputStream.writeShort(zone.getObjects().size());
    dataOutputStream.writeChars(zone.getName());
    for (    GameObject obj : zone.getObjects()) {
      writeObject(obj,dataOutputStream);
    }
    for (    Room room : zone.getRooms()) {
      dataOutputStream.writeShort(room.getObjects().size());
      for (      GameObject obj : room.getObjects()) {
        writeObject(obj,dataOutputStream);
      }
      for (      Screen screen : room.getScreens()) {
        dataOutputStream.writeByte(screen.getName().length());
        dataOutputStream.writeShort(screen.getObjects().size());
        dataOutputStream.writeByte(getNoPositionScreenObjectCount(screen.getObjects()));
        for (        GameObject obj : screen.getObjects()) {
          writeObject(obj,dataOutputStream);
        }
        dataOutputStream.writeChars(screen.getName());
        for (        ScreenExit exit : screen.getScreenExits()) {
          dataOutputStream.writeByte(exit.getZoneIndex());
          dataOutputStream.writeByte(exit.getRoomIndex());
          dataOutputStream.writeByte(exit.getScreenIndex());
        }
      }
    }
  }
  dataOutputStream.flush();
  dataOutputStream.close();
}
Program: 174725
Project: 174725
Buggy source:
public static void main(final String[] args){
  try {
    final Injector injector=Guice.createInjector(new ElasticSearchModule());
    injector.getInstance(GrpcServer.class).start().awaitTermination();
  }
 catch (  Exception ex) {
    log.error("String_Node_Str",ex);
    throw new IllegalStateException("String_Node_Str",ex);
  }
}

Fixed version (ground truth):
/** 
 * Start the micro service.
 */
public static void main(final String[] args){
  try {
    final Injector injector=Guice.createInjector(new ElasticSearchModule());
    injector.getInstance(GrpcServer.class).start().awaitTermination();
  }
 catch (  Exception ex) {
    log.error("String_Node_Str",ex);
    throw new IllegalStateException("String_Node_Str",ex);
  }
}
Program: 174726
Project: 174726
Buggy source:
/** 
 * Calculate product score based on product price for demo only.
 * @param product        given product to be calculated
 * @param downloadStream the download stream for score
 */
public void calculateProductScore(Product product,PublishSubject<CalculateProductScoreResponse> downloadStream){
  downloadStream.onNext(CalculateProductScoreResponse.newBuilder().setProduct(product).setScore(new Double(product.getProductPrice()).longValue()).build());
}

Fixed version (ground truth):
/** 
 * Calculate product score based on product price for demo only.
 * @param product        given product to be calculated
 * @param downloadStream the download stream for score
 */
public void calculateProductScore(Product product,PublishSubject<CalculateProductScoreResponse> downloadStream){
  downloadStream.onNext(CalculateProductScoreResponse.newBuilder().setProduct(product).setScore((long)product.getProductPrice()).build());
}
Program: 174727
Project: 174727
Buggy source:
@Override public void execute(WebScriptRequest webScriptRequest,WebScriptResponse res) throws IOException {
  try {
    SearchSQLQuery searchQuery=extractJsonContent(webScriptRequest,assistant.getJsonHelper(),SearchSQLQuery.class);
    SearchParameters sparams=buildSearchParameters(searchQuery);
    ResultSet results=searchService.query(sparams);
    FilteringResultSet frs=(FilteringResultSet)results;
    SolrSQLJSONResultSet ssjr=(SolrSQLJSONResultSet)frs.getUnFilteredResultSet();
    if (searchQuery.getFormat().equalsIgnoreCase("String_Node_Str")) {
      res.getWriter().write(ssjr.getSolrResponse());
    }
 else {
      CollectionWithPagingInfo<TupleList> nodes=resultMapper.toCollectionWithPagingInfo(ssjr.getDocs(),searchQuery);
      renderJsonResponse(res,nodes,assistant.getJsonHelper());
    }
    setResponse(res,DEFAULT_SUCCESS);
  }
 catch (  Exception exception) {
    renderException(exception,res,assistant);
  }
}

Fixed version (ground truth):
@Override public void execute(WebScriptRequest webScriptRequest,WebScriptResponse res) throws IOException {
  try {
    SearchSQLQuery searchQuery=extractJsonContent(webScriptRequest,assistant.getJsonHelper(),SearchSQLQuery.class);
    SearchParameters sparams=buildSearchParameters(searchQuery);
    if (searchQuery.getFormat().equalsIgnoreCase("String_Node_Str")) {
      sparams.addExtraParameter("String_Node_Str","String_Node_Str");
    }
    ResultSet results=searchService.query(sparams);
    FilteringResultSet frs=(FilteringResultSet)results;
    SolrSQLJSONResultSet ssjr=(SolrSQLJSONResultSet)frs.getUnFilteredResultSet();
    if (searchQuery.getFormat().equalsIgnoreCase("String_Node_Str")) {
      res.getWriter().write(ssjr.getSolrResponse());
    }
 else {
      CollectionWithPagingInfo<TupleList> nodes=resultMapper.toCollectionWithPagingInfo(ssjr.getDocs(),searchQuery);
      renderJsonResponse(res,nodes,assistant.getJsonHelper());
    }
    setResponse(res,DEFAULT_SUCCESS);
  }
 catch (  Exception exception) {
    if (exception instanceof LuceneQueryParserException) {
      renderException(exception,res,assistant);
    }
 else {
      renderException(new WebScriptException(400,exception.getMessage()),res,assistant);
    }
  }
}
Program: 174731
Project: 174731
Buggy source:
public String validatePerson(String personId,boolean validateIsCurrentUser){
  if (personId.equalsIgnoreCase(DEFAULT_USER)) {
    personId=AuthenticationUtil.getFullyAuthenticatedUser();
  }
  personId=personService.getUserIdentifier(personId);
  if (personId == null) {
    throw new EntityNotFoundException("String_Node_Str");
  }
  if (validateIsCurrentUser) {
    String currentUserId=AuthenticationUtil.getFullyAuthenticatedUser();
    if (!currentUserId.equalsIgnoreCase(personId)) {
      throw new EntityNotFoundException(personId);
    }
  }
  return personId;
}

Fixed version (ground truth):
public String validatePerson(String personId,boolean validateIsCurrentUser){
  if (personId == null) {
    throw new InvalidArgumentException("String_Node_Str");
  }
  if (personId.equalsIgnoreCase(DEFAULT_USER)) {
    personId=AuthenticationUtil.getFullyAuthenticatedUser();
  }
  personId=personService.getUserIdentifier(personId);
  if (personId == null) {
    throw new EntityNotFoundException("String_Node_Str");
  }
  if (validateIsCurrentUser) {
    String currentUserId=AuthenticationUtil.getFullyAuthenticatedUser();
    if (!currentUserId.equalsIgnoreCase(personId)) {
      throw new EntityNotFoundException(personId);
    }
  }
  return personId;
}
Program: 174732
Project: 174732
Buggy source:
protected SiteMember addSiteMember(String siteId,String userId,final SiteRole siteRole) throws Exception {
  SiteMember siteMember=new SiteMember(userId,siteRole.name());
  HttpResponse response=publicApiClient.post(getScope(),"String_Node_Str",siteId,"String_Node_Str",null,siteMember.postJSON().toString());
  checkStatus(201,response.getStatusCode());
  return SiteMember.parseSiteMember(siteMember.getSiteId(),(JSONObject)response.getJsonResponse().get("String_Node_Str"));
}

Fixed version (ground truth):
protected SiteMember addSiteMember(String siteId,String userId,final SiteRole siteRole) throws Exception {
  SiteMember siteMember=new SiteMember(userId,siteRole.name());
  HttpResponse response=publicApiClient.post(getScope(),"String_Node_Str",siteId,"String_Node_Str",null,siteMember.toJSON().toString());
  checkStatus(201,response.getStatusCode());
  return SiteMember.parseSiteMember(siteMember.getSiteId(),(JSONObject)response.getJsonResponse().get("String_Node_Str"));
}
Program: 174735
Project: 174735
Buggy source:
private SiteMembershipRequest getSiteMembershipRequest(ModeratedInvitation moderatedInvitation){
  SiteMembershipRequest siteMembershipRequest=null;
  ResourceType resourceType=moderatedInvitation.getResourceType();
  if (resourceType.equals(ResourceType.WEB_SITE)) {
    final String siteId=moderatedInvitation.getResourceName();
    SiteInfo siteInfo=AuthenticationUtil.runAsSystem(new RunAsWork<SiteInfo>(){
      @Override public SiteInfo doWork() throws Exception {
        SiteInfo siteInfo=sites.validateSite(siteId);
        return siteInfo;
      }
    }
);
    if (siteInfo.getVisibility().equals(SiteVisibility.MODERATED)) {
      siteMembershipRequest=new SiteMembershipRequest();
      String title=siteInfo.getTitle();
      siteMembershipRequest.setTitle(title);
      siteMembershipRequest.setId(siteId);
      siteMembershipRequest.setMessage(moderatedInvitation.getInviteeComments());
      siteMembershipRequest.setCreatedAt(moderatedInvitation.getCreatedAt());
      siteMembershipRequest.setModifiedAt(moderatedInvitation.getModifiedAt());
    }
  }
 else {
    logger.warn("String_Node_Str" + resourceType + "String_Node_Str");
  }
  return siteMembershipRequest;
}

Fixed version (ground truth):
private SiteMembershipRequest getSiteMembershipRequest(ModeratedInvitation moderatedInvitation){
  SiteMembershipRequest siteMembershipRequest=null;
  ResourceType resourceType=moderatedInvitation.getResourceType();
  if (resourceType.equals(ResourceType.WEB_SITE)) {
    final String siteId=moderatedInvitation.getResourceName();
    SiteInfo siteInfo=AuthenticationUtil.runAsSystem(new RunAsWork<SiteInfo>(){
      @Override public SiteInfo doWork() throws Exception {
        SiteInfo siteInfo=sites.validateSite(siteId);
        return siteInfo;
      }
    }
);
    if (siteInfo == null) {
      throw new EntityNotFoundException(siteId);
    }
    if (siteInfo.getVisibility().equals(SiteVisibility.MODERATED)) {
      siteMembershipRequest=new SiteMembershipRequest();
      String title=siteInfo.getTitle();
      siteMembershipRequest.setTitle(title);
      siteMembershipRequest.setId(siteId);
      siteMembershipRequest.setMessage(moderatedInvitation.getInviteeComments());
      siteMembershipRequest.setCreatedAt(moderatedInvitation.getCreatedAt());
      siteMembershipRequest.setModifiedAt(moderatedInvitation.getModifiedAt());
    }
  }
 else {
    logger.warn("String_Node_Str" + resourceType + "String_Node_Str");
  }
  return siteMembershipRequest;
}
Program: 174737
Project: 174737
Buggy source:
/** 
 * * This method gets all nodes from the archive which were originally contained within the specified StoreRef.
 * @param storeRef mandatory store ref
 * @param paging mandatory paging
 * @param filter optional filter
 * @return PagingResults<NodeRef>
 */
protected PagingResults<NodeRef> getArchivedNodesFrom(StoreRef storeRef,ScriptPagingDetails paging,String filter){
  NodeService nodeService=serviceRegistry.getNodeService();
  NodeRef archiveStoreRootNodeRef=nodeService.getStoreArchiveNode(storeRef);
  ArchivedNodesCannedQueryBuilder queryBuilder=new ArchivedNodesCannedQueryBuilder.Builder(archiveStoreRootNodeRef,paging).filter(filter).sortOrderAscending(false).build();
  PagingResults<NodeRef> result=nodeArchiveService.listArchivedNodes(queryBuilder);
  return result;
}

Fixed version (ground truth):
/** 
 * * This method gets all nodes from the archive which were originally contained within the specified StoreRef.
 * @param storeRef mandatory store ref
 * @param paging mandatory paging
 * @param filter optional filter
 */
protected PagingResults<NodeRef> getArchivedNodesFrom(StoreRef storeRef,ScriptPagingDetails paging,String filter){
  NodeService nodeService=serviceRegistry.getNodeService();
  NodeRef archiveStoreRootNodeRef=nodeService.getStoreArchiveNode(storeRef);
  ArchivedNodesCannedQueryBuilder queryBuilder=new ArchivedNodesCannedQueryBuilder.Builder(archiveStoreRootNodeRef,paging).filter(filter).sortOrderAscending(false).build();
  PagingResults<NodeRef> result=nodeArchiveService.listArchivedNodes(queryBuilder);
  return result;
}
Program: 174738
Project: 174738
Buggy source:
/** 
 * This method is used to inject   {@link org.alfresco.repo.web.scripts.archive.ArchivedNodesFilter node filters} on this GET call.
 * @param nodeFilters List<ArchivedNodesFilter>
 */
public void setArchivedNodeFilters(List<ArchivedNodesFilter> nodeFilters){
  this.nodeFilters=nodeFilters;
}

Fixed version (ground truth):
/** 
 * This method is used to inject   {@link org.alfresco.repo.web.scripts.archive.ArchivedNodesFilter node filters} on this GET call.
 */
public void setArchivedNodeFilters(List<ArchivedNodesFilter> nodeFilters){
  this.nodeFilters=nodeFilters;
}
Program: 174739
Project: 174739
Buggy source:
/** 
 * Set the cache settings on the response
 * @param res WebScriptResponse
 * @param modified Date
 * @param eTag String
 * @param model Map<String, Object>
 */
protected void setResponseCache(WebScriptResponse res,Date modified,String eTag,Map<String,Object> model){
  Cache cache=new Cache();
  Object obj;
  if (model != null && (obj=model.get(KEY_CACHE_DIRECTIVE)) instanceof CacheDirective) {
    CacheDirective cacheDirective=(CacheDirective)obj;
    cache.setNeverCache(cacheDirective.isNeverCache());
    cache.setMustRevalidate(cacheDirective.isMustRevalidate());
    cache.setMaxAge(cacheDirective.getMaxAge());
    cache.setLastModified(cacheDirective.getLastModified());
    cache.setETag(cacheDirective.getETag());
    cache.setIsPublic(cacheDirective.isPublic());
  }
 else   if (model == null || !getBooleanValue(model.get(KEY_ALLOW_BROWSER_TO_CACHE))) {
    cache.setNeverCache(false);
    cache.setMustRevalidate(true);
    cache.setMaxAge(0L);
    cache.setLastModified(modified);
    cache.setETag(eTag);
  }
 else {
    cache.setNeverCache(false);
    cache.setMustRevalidate(false);
    cache.setMaxAge(Long.valueOf(31536000));
    cache.setLastModified(modified);
    cache.setETag(eTag);
  }
  res.setCache(cache);
}

Fixed version (ground truth):
/** 
 * Set the cache settings on the response
 * @param res WebScriptResponse
 * @param modified Date
 * @param eTag String
 */
protected void setResponseCache(WebScriptResponse res,Date modified,String eTag,Map<String,Object> model){
  Cache cache=new Cache();
  Object obj;
  if (model != null && (obj=model.get(KEY_CACHE_DIRECTIVE)) instanceof CacheDirective) {
    CacheDirective cacheDirective=(CacheDirective)obj;
    cache.setNeverCache(cacheDirective.isNeverCache());
    cache.setMustRevalidate(cacheDirective.isMustRevalidate());
    cache.setMaxAge(cacheDirective.getMaxAge());
    cache.setLastModified(cacheDirective.getLastModified());
    cache.setETag(cacheDirective.getETag());
    cache.setIsPublic(cacheDirective.isPublic());
  }
 else   if (model == null || !getBooleanValue(model.get(KEY_ALLOW_BROWSER_TO_CACHE))) {
    cache.setNeverCache(false);
    cache.setMustRevalidate(true);
    cache.setMaxAge(0L);
    cache.setLastModified(modified);
    cache.setETag(eTag);
  }
 else {
    cache.setNeverCache(false);
    cache.setMustRevalidate(false);
    cache.setMaxAge(Long.valueOf(31536000));
    cache.setLastModified(modified);
    cache.setETag(eTag);
  }
  res.setCache(cache);
}
Program: 174740
Project: 174740
Buggy source:
/** 
 * Sets the map of content transformer worker bean names to message formatting labels
 * @param knownWorkerBeanLabels Map<String, String>
 */
public void setKnownWorkerBeanLabels(Map<String,String> knownWorkerBeanLabels){
  this.knownWorkerBeanLabels=knownWorkerBeanLabels;
}

Fixed version (ground truth):
/** 
 * Sets the map of content transformer worker bean names to message formatting labels
 */
public void setKnownWorkerBeanLabels(Map<String,String> knownWorkerBeanLabels){
  this.knownWorkerBeanLabels=knownWorkerBeanLabels;
}
Program: 174741
Project: 174741
Buggy source:
/** 
 * Do the actual search
 * @param searchQuery Pair with query string in first and query language in second
 * @param sortAscending boolean
 * @param paging PagingRequest
 * @return PagingResults<TopicInfo>
 */
protected PagingResults<TopicInfo> doSearch(Pair<String,String> searchQuery,boolean sortAscending,PagingRequest paging){
  ResultSet resultSet=null;
  PagingResults<TopicInfo> pagedResults=new EmptyPagingResults<TopicInfo>();
  String sortOn="String_Node_Str";
  SearchParameters sp=new SearchParameters();
  sp.addStore(SPACES_STORE);
  sp.setQuery(searchQuery.getFirst());
  sp.setLanguage(searchQuery.getSecond());
  sp.addSort(sortOn,sortAscending);
  if (paging.getMaxItems() > 0) {
    sp.setLimit(paging.getMaxItems() * 10);
    sp.setLimitBy(LimitBy.FINAL_SIZE);
  }
  if (paging.getSkipCount() > 0) {
    sp.setSkipCount(paging.getSkipCount());
  }
  try {
    resultSet=searchService.query(sp);
    pagedResults=wrap(resultSet,paging);
  }
  finally {
    try {
      resultSet.close();
    }
 catch (    Exception e) {
    }
  }
  return pagedResults;
}

Fixed version (ground truth):
/** 
 * Do the actual search
 * @param searchQuery Pair with query string in first and query language in second
 * @param sortAscending boolean
 * @param paging PagingRequest
 */
protected PagingResults<TopicInfo> doSearch(Pair<String,String> searchQuery,boolean sortAscending,PagingRequest paging){
  ResultSet resultSet=null;
  PagingResults<TopicInfo> pagedResults=new EmptyPagingResults<TopicInfo>();
  String sortOn="String_Node_Str";
  SearchParameters sp=new SearchParameters();
  sp.addStore(SPACES_STORE);
  sp.setQuery(searchQuery.getFirst());
  sp.setLanguage(searchQuery.getSecond());
  sp.addSort(sortOn,sortAscending);
  if (paging.getMaxItems() > 0) {
    sp.setLimit(paging.getMaxItems() * 10);
    sp.setLimitBy(LimitBy.FINAL_SIZE);
  }
  if (paging.getSkipCount() > 0) {
    sp.setSkipCount(paging.getSkipCount());
  }
  try {
    resultSet=searchService.query(sp);
    pagedResults=wrap(resultSet,paging);
  }
  finally {
    try {
      resultSet.close();
    }
 catch (    Exception e) {
    }
  }
  return pagedResults;
}
Program: 174743
Project: 174743
Buggy source:
/** 
 * Parses ISO8601 formatted Date Strings.
 * @param start If start is null then defaults to 1 month
 * @param end If end is null then it defaults to now();
 * @return Pair <Start,End>
 */
public static Pair<LocalDate,LocalDate> getStartAndEndDates(String start,String end){
  if (start == null)   return null;
  LocalDate startDate=LocalDate.parse(start);
  LocalDate endDate=end != null ? LocalDate.parse(end) : LocalDate.now();
  return new Pair<LocalDate,LocalDate>(startDate,endDate);
}

Fixed version (ground truth):
/** 
 * Parses ISO8601 formatted Date Strings.
 * @param start If start is null then defaults to 1 month
 * @param end If end is null then it defaults to now();
 */
public static Pair<LocalDate,LocalDate> getStartAndEndDates(String start,String end){
  if (start == null)   return null;
  LocalDate startDate=LocalDate.parse(start);
  LocalDate endDate=end != null ? LocalDate.parse(end) : LocalDate.now();
  return new Pair<LocalDate,LocalDate>(startDate,endDate);
}
Program: 174744
Project: 174744
Buggy source:
/** 
 * Setter for sharedLockTokens list.
 * @param sharedLockTokens Set<String>
 */
@Override public void setSharedLockTokens(Set<String> sharedLockTokens){
  if (!sharedLockTokens.isEmpty() && isExclusive()) {
    throw new IllegalStateException("String_Node_Str" + sharedLockTokens + "String_Node_Str"+ toString()+ "String_Node_Str");
  }
  this.sharedLockTokens.clear();
  this.sharedLockTokens.addAll(sharedLockTokens);
}

Fixed version (ground truth):
/** 
 * Setter for sharedLockTokens list.
 */
@Override public void setSharedLockTokens(Set<String> sharedLockTokens){
  if (!sharedLockTokens.isEmpty() && isExclusive()) {
    throw new IllegalStateException("String_Node_Str" + sharedLockTokens + "String_Node_Str"+ toString()+ "String_Node_Str");
  }
  this.sharedLockTokens.clear();
  this.sharedLockTokens.addAll(sharedLockTokens);
}
Program: 174745
Project: 174745
Buggy source:
/** 
 * Getter for sharedLockTokens list.
 * @return LinkedList<String>
 */
@Override public Set<String> getSharedLockTokens(){
  return sharedLockTokens;
}

Fixed version (ground truth):
/** 
 * Getter for sharedLockTokens list.
 */
@Override public Set<String> getSharedLockTokens(){
  return sharedLockTokens;
}
Program: 174746
Project: 174746
Buggy source:
/** 
 * Return the Alfresco property value for the specified WebDAV property
 * @param props Map<QName, Serializable>
 * @param davPropName String
 * @return Object
 */
public static Object getDAVPropertyValue(Map<QName,Serializable> props,String davPropName){
  QName propName=_propertyNameMap.get(davPropName);
  if (propName == null)   throw new AlfrescoRuntimeException("String_Node_Str" + davPropName);
  Object value=props.get(propName);
  if (value instanceof ContentData) {
    ContentData contentData=(ContentData)value;
    if (davPropName.equals(WebDAV.XML_GET_CONTENT_TYPE)) {
      value=contentData.getMimetype();
    }
 else     if (davPropName.equals(WebDAV.XML_GET_CONTENT_LENGTH)) {
      value=new Long(contentData.getSize());
    }
  }
  return value;
}

Fixed version (ground truth):
/** 
 * Return the Alfresco property value for the specified WebDAV property
 * @param davPropName String
 * @return Object
 */
public static Object getDAVPropertyValue(Map<QName,Serializable> props,String davPropName){
  QName propName=_propertyNameMap.get(davPropName);
  if (propName == null)   throw new AlfrescoRuntimeException("String_Node_Str" + davPropName);
  Object value=props.get(propName);
  if (value instanceof ContentData) {
    ContentData contentData=(ContentData)value;
    if (davPropName.equals(WebDAV.XML_GET_CONTENT_TYPE)) {
      value=contentData.getMimetype();
    }
 else     if (davPropName.equals(WebDAV.XML_GET_CONTENT_LENGTH)) {
      value=new Long(contentData.getSize());
    }
  }
  return value;
}
Program: 174747
Project: 174747
Buggy source:
/** 
 * Set the regular expression that will be applied to filenames during renames to detect whether clients are performing a renaming shuffle - common during file saving on various clients. <p/> <bALF-3856, ALF-7079, MNT-181</b>
 * @param renameShufflePattern      a regular expression filename match
 */
public void setRenameShufflePattern(Pattern renameShufflePattern){
  this.m_renameShufflePattern=renameShufflePattern;
}

Fixed version (ground truth):
/** 
 * Set the regular expression that will be applied to filenames during renames to detect whether clients are performing a renaming shuffle - common during file saving on various clients. <p/> <b>ALF-3856, ALF-7079, MNT-181</b>
 * @param renameShufflePattern      a regular expression filename match
 */
public void setRenameShufflePattern(Pattern renameShufflePattern){
  this.m_renameShufflePattern=renameShufflePattern;
}
Program: 174748
Project: 174748
Buggy source:
/** 
 * Set the headers passed to the gateway for authentication.
 * @param outboundHeaders Set<String>
 */
public void setOutboundHeaders(Set<String> outboundHeaders){
  if (outboundHeaders != null) {
    Set<String> trimmed=new HashSet<String>();
    for (    String value : outboundHeaders) {
      trimmed.add(value.toLowerCase(Locale.ENGLISH).trim());
    }
    outboundHeaders=trimmed;
  }
  this.outboundHeaderNames=outboundHeaders;
}

Fixed version (ground truth):
/** 
 * Set the headers passed to the gateway for authentication.
 */
public void setOutboundHeaders(Set<String> outboundHeaders){
  if (outboundHeaders != null) {
    Set<String> trimmed=new HashSet<String>();
    for (    String value : outboundHeaders) {
      trimmed.add(value.toLowerCase(Locale.ENGLISH).trim());
    }
    outboundHeaders=trimmed;
  }
  this.outboundHeaderNames=outboundHeaders;
}
Program: 174750
Project: 174750
Buggy source:
/** 
 * Inspects the resource to determine what api it belongs to. It does this by looking for the WebApi package annotation.
 * @param resource Class<?>
 * @return Api
 */
public static Api inspectApi(Class<?> resource){
  Package myPackage=resource.getPackage();
  Annotation annot=myPackage.getAnnotation(WebApi.class);
  if (annot != null) {
    Map<String,Object> annotAttribs=AnnotationUtils.getAnnotationAttributes(annot);
    String apiName=String.valueOf(annotAttribs.get("String_Node_Str"));
    String apiScope=String.valueOf(annotAttribs.get("String_Node_Str"));
    String apiVersion=String.valueOf(annotAttribs.get("String_Node_Str"));
    return Api.valueOf(apiName,apiScope,apiVersion);
  }
  return null;
}

Fixed version (ground truth):
/** 
 * Inspects the resource to determine what api it belongs to. It does this by looking for the WebApi package annotation.
 * @return Api
 */
public static Api inspectApi(Class<?> resource){
  Package myPackage=resource.getPackage();
  Annotation annot=myPackage.getAnnotation(WebApi.class);
  if (annot != null) {
    Map<String,Object> annotAttribs=AnnotationUtils.getAnnotationAttributes(annot);
    String apiName=String.valueOf(annotAttribs.get("String_Node_Str"));
    String apiScope=String.valueOf(annotAttribs.get("String_Node_Str"));
    String apiVersion=String.valueOf(annotAttribs.get("String_Node_Str"));
    return Api.valueOf(apiName,apiScope,apiVersion);
  }
  return null;
}
Program: 174751
Project: 174751
Buggy source:
/** 
 * Returns the method for the interface
 * @param resourceInterfaceWithOneMethod Class<? extends ResourceAction>
 * @param resource Class<?>
 * @return null or a Method
 */
public static Method findMethod(Class<? extends ResourceAction> resourceInterfaceWithOneMethod,Class<?> resource){
  Method[] resourceMethods=resourceInterfaceWithOneMethod.getMethods();
  if (resourceMethods == null || resourceMethods.length != 1) {
    throw new IllegalArgumentException(resourceInterfaceWithOneMethod + "String_Node_Str");
  }
  Method method=ReflectionUtils.findMethod(resource,resourceMethods[0].getName(),null);
  return method;
}

Fixed version (ground truth):
/** 
 * Returns the method for the interface
 * @return null or a Method
 */
public static Method findMethod(Class<? extends ResourceAction> resourceInterfaceWithOneMethod,Class<?> resource){
  Method[] resourceMethods=resourceInterfaceWithOneMethod.getMethods();
  if (resourceMethods == null || resourceMethods.length != 1) {
    throw new IllegalArgumentException(resourceInterfaceWithOneMethod + "String_Node_Str");
  }
  Method method=ReflectionUtils.findMethod(resource,resourceMethods[0].getName(),null);
  return method;
}
Program: 174752
Project: 174752
Buggy source:
/** 
 * Inspects the method and returns meta data about its operations
 * @param resource Class<?>
 * @param aMethod Method
 * @param httpMethod HttpMethod
 * @return ResourceOperation
 */
public static ResourceOperation inspectOperation(Class<?> resource,Method aMethod,HttpMethod httpMethod){
  Annotation annot=AnnotationUtils.findAnnotation(aMethod,WebApiDescription.class);
  List<ResourceParameter> parameters=new ArrayList<ResourceParameter>();
  parameters.addAll(inspectParameters(resource,aMethod,httpMethod));
  if (annot != null) {
    Map<String,Object> annotAttribs=AnnotationUtils.getAnnotationAttributes(annot);
    String title=String.valueOf(annotAttribs.get("String_Node_Str"));
    String desc=String.valueOf(annotAttribs.get("String_Node_Str"));
    Integer success=(Integer)annotAttribs.get("String_Node_Str");
    return new ResourceOperation(httpMethod,title,desc,parameters,validSuccessCode(httpMethod,success));
  }
 else {
    return new ResourceOperation(httpMethod,"String_Node_Str","String_Node_Str",parameters,validSuccessCode(httpMethod,ResourceOperation.UNSET_STATUS));
  }
}

Fixed version (ground truth):
/** 
 * Inspects the method and returns meta data about its operations
 * @param aMethod Method
 * @param httpMethod HttpMethod
 * @return ResourceOperation
 */
public static ResourceOperation inspectOperation(Class<?> resource,Method aMethod,HttpMethod httpMethod){
  Annotation annot=AnnotationUtils.findAnnotation(aMethod,WebApiDescription.class);
  List<ResourceParameter> parameters=new ArrayList<ResourceParameter>();
  parameters.addAll(inspectParameters(resource,aMethod,httpMethod));
  if (annot != null) {
    Map<String,Object> annotAttribs=AnnotationUtils.getAnnotationAttributes(annot);
    String title=String.valueOf(annotAttribs.get("String_Node_Str"));
    String desc=String.valueOf(annotAttribs.get("String_Node_Str"));
    Integer success=(Integer)annotAttribs.get("String_Node_Str");
    return new ResourceOperation(httpMethod,title,desc,parameters,validSuccessCode(httpMethod,success));
  }
 else {
    return new ResourceOperation(httpMethod,"String_Node_Str","String_Node_Str",parameters,validSuccessCode(httpMethod,ResourceOperation.UNSET_STATUS));
  }
}
Program: 174753
Project: 174753
Buggy source:
/** 
 * Finds the name of the entity using its annotation.
 * @param annotAttribs Map<String, Object>
 * @return the entity name/path
 */
protected static String findEntityNameByAnnotationAttributes(Map<String,Object> annotAttribs){
  Class<?> entityResourceRef=(Class<?>)annotAttribs.get("String_Node_Str");
  EntityResource entityAnnot=AnnotationUtils.findAnnotation(entityResourceRef,EntityResource.class);
  return findEntityName(entityAnnot);
}

Fixed version (ground truth):
/** 
 * Finds the name of the entity using its annotation.
 * @return the entity name/path
 */
protected static String findEntityNameByAnnotationAttributes(Map<String,Object> annotAttribs){
  Class<?> entityResourceRef=(Class<?>)annotAttribs.get("String_Node_Str");
  EntityResource entityAnnot=AnnotationUtils.findAnnotation(entityResourceRef,EntityResource.class);
  return findEntityName(entityAnnot);
}
Program: 174754
Project: 174754
Buggy source:
/** 
 * For a given class, looks for @EmbeddedEntityResource annotations, using the annotation produce a Map of the property name key and the entity key
 * @param anyClass Class<?>
 * @return A map of property key name and a value of the entity path name
 */
public static Map<String,Pair<String,Method>> findEmbeddedResources(Class<?> anyClass){
  Map<String,Pair<String,Method>> embeds=new HashMap<String,Pair<String,Method>>();
  List<Method> annotatedMethods=ResourceInspectorUtil.findMethodsByAnnotation(anyClass,EmbeddedEntityResource.class);
  if (annotatedMethods != null && !annotatedMethods.isEmpty()) {
    for (    Method annotatedMethod : annotatedMethods) {
      Annotation annot=AnnotationUtils.findAnnotation(annotatedMethod,EmbeddedEntityResource.class);
      if (annot != null) {
        Map<String,Object> annotAttribs=AnnotationUtils.getAnnotationAttributes(annot);
        String entityPath=findEntityNameByAnnotationAttributes(annotAttribs);
        String key=String.valueOf(annotAttribs.get("String_Node_Str"));
        embeds.put(key,new Pair<String,Method>(entityPath,annotatedMethod));
      }
    }
  }
  return embeds;
}

Fixed version (ground truth):
/** 
 * For a given class, looks for @EmbeddedEntityResource annotations, using the annotation produce a Map of the property name key and the entity key
 * @return A map of property key name and a value of the entity path name
 */
public static Map<String,Pair<String,Method>> findEmbeddedResources(Class<?> anyClass){
  Map<String,Pair<String,Method>> embeds=new HashMap<String,Pair<String,Method>>();
  List<Method> annotatedMethods=ResourceInspectorUtil.findMethodsByAnnotation(anyClass,EmbeddedEntityResource.class);
  if (annotatedMethods != null && !annotatedMethods.isEmpty()) {
    for (    Method annotatedMethod : annotatedMethods) {
      Annotation annot=AnnotationUtils.findAnnotation(annotatedMethod,EmbeddedEntityResource.class);
      if (annot != null) {
        Map<String,Object> annotAttribs=AnnotationUtils.getAnnotationAttributes(annot);
        String entityPath=findEntityNameByAnnotationAttributes(annotAttribs);
        String key=String.valueOf(annotAttribs.get("String_Node_Str"));
        embeds.put(key,new Pair<String,Method>(entityPath,annotatedMethod));
      }
    }
  }
  return embeds;
}
Program: 174755
Project: 174755
Buggy source:
/** 
 * Inspect a resource to find operations on it.
 * @param api Api
 * @param resource Class<?>
 * @param entityPath String
 * @param metainfo List<ResourceMetadata>
 */
public static void inspectOperations(Api api,Class<?> resource,final String entityPath,List<ResourceMetadata> metainfo){
  Map<String,Pair<ResourceOperation,Method>> operations=findOperations(entityPath,resource);
  if (operations != null && !operations.isEmpty()) {
    for (    Entry<String,Pair<ResourceOperation,Method>> opera : operations.entrySet()) {
      if (isDeleted(opera.getValue().getSecond())) {
        metainfo.add(new OperationResourceMetaData(opera.getKey(),api,new HashSet(Arrays.asList(opera.getValue().getFirst()))));
      }
 else {
        metainfo.add(new OperationResourceMetaData(opera.getKey(),Arrays.asList(opera.getValue().getFirst()),api,opera.getValue().getSecond()));
      }
    }
  }
}

Fixed version (ground truth):
/** 
 * Inspect a resource to find operations on it.
 * @param api Api
 * @param entityPath String
 */
public static void inspectOperations(Api api,Class<?> resource,final String entityPath,List<ResourceMetadata> metainfo){
  Map<String,Pair<ResourceOperation,Method>> operations=findOperations(entityPath,resource);
  if (operations != null && !operations.isEmpty()) {
    for (    Entry<String,Pair<ResourceOperation,Method>> opera : operations.entrySet()) {
      if (isDeleted(opera.getValue().getSecond())) {
        metainfo.add(new OperationResourceMetaData(opera.getKey(),api,new HashSet(Arrays.asList(opera.getValue().getFirst()))));
      }
 else {
        metainfo.add(new OperationResourceMetaData(opera.getKey(),Arrays.asList(opera.getValue().getFirst()),api,opera.getValue().getSecond()));
      }
    }
  }
}
Program: 174756
Project: 174756
Buggy source:
/** 
 * Indicates if this resource action is no longer supported.
 * @param resourceAction Class<? extends ResourceAction>
 * @return true if it is no longer supported
 */
public boolean isDeleted(Class<? extends ResourceAction> resourceAction){
  return apiDeleted.contains(resourceAction);
}

Fixed version (ground truth):
/** 
 * Indicates if this resource action is no longer supported.
 * @return true if it is no longer supported
 */
public boolean isDeleted(Class<? extends ResourceAction> resourceAction){
  return apiDeleted.contains(resourceAction);
}
Program: 174757
Project: 174757
Buggy source:
/** 
 * @param httpMethod HttpMethod
 * @param title String
 * @param description String
 * @param parameters List<ResourceParameter>
 * @param successStatus HTTP status
 */
public ResourceOperation(HttpMethod httpMethod,String title,String description,List<ResourceParameter> parameters,int successStatus){
  super();
  this.httpMethod=httpMethod;
  this.title=title;
  this.description=description;
  this.parameters=parameters;
  this.successStatus=successStatus;
}

Fixed version (ground truth):
/** 
 * @param httpMethod HttpMethod
 * @param title String
 * @param description String
 * @param successStatus HTTP status
 */
public ResourceOperation(HttpMethod httpMethod,String title,String description,List<ResourceParameter> parameters,int successStatus){
  super();
  this.httpMethod=httpMethod;
  this.title=title;
  this.description=description;
  this.parameters=parameters;
  this.successStatus=successStatus;
}
Program: 174758
Project: 174758
Buggy source:
/** 
 * Constructs the object based on the content as a List, the JSON can be an array or just a single value without the [] symbols
 * @param content Reader
 * @param requiredType Class<T>
 * @return A collection of the specified type
 * @throws IOException
 */
public <T>List<T> constructList(Reader content,Class<T> requiredType) throws IOException, JsonMappingException, JsonParseException {
  ObjectReader reader=objectMapper.reader(TypeFactory.defaultInstance().constructParametricType(List.class,requiredType));
  try {
    List<T> toReturn=reader.readValue(content);
    if (toReturn == null || toReturn.isEmpty()) {
      throw new InvalidArgumentException("String_Node_Str");
    }
    return toReturn;
  }
 catch (  IOException error) {
    throw new InvalidArgumentException("String_Node_Str" + error.getMessage());
  }
}

Fixed version (ground truth):
/** 
 * Constructs the object based on the content as a List, the JSON can be an array or just a single value without the [] symbols
 * @param content Reader
 * @return A collection of the specified type
 * @throws IOException
 */
public <T>List<T> constructList(Reader content,Class<T> requiredType) throws IOException, JsonMappingException, JsonParseException {
  ObjectReader reader=objectMapper.reader(TypeFactory.defaultInstance().constructParametricType(List.class,requiredType));
  try {
    List<T> toReturn=reader.readValue(content);
    if (toReturn == null || toReturn.isEmpty()) {
      throw new InvalidArgumentException("String_Node_Str");
    }
    return toReturn;
  }
 catch (  IOException error) {
    throw new InvalidArgumentException("String_Node_Str" + error.getMessage());
  }
}
Program: 174759
Project: 174759
Buggy source:
/** 
 * Constructs the object based on the content.
 * @param content Reader
 * @param requiredType Class<T>
 * @return T
 * @throws IOException
 */
public <T>T construct(Reader content,Class<T> requiredType) throws IOException, JsonMappingException, JsonParseException {
  ObjectReader reader=objectMapper.reader(requiredType);
  try {
    return reader.readValue(content);
  }
 catch (  IOException error) {
    throw new InvalidArgumentException("String_Node_Str" + error.getMessage());
  }
}

Fixed version (ground truth):
/** 
 * Constructs the object based on the content.
 * @param content Reader
 * @return T
 * @throws IOException
 */
public <T>T construct(Reader content,Class<T> requiredType) throws IOException, JsonMappingException, JsonParseException {
  ObjectReader reader=objectMapper.reader(requiredType);
  try {
    return reader.readValue(content);
  }
 catch (  IOException error) {
    throw new InvalidArgumentException("String_Node_Str" + error.getMessage());
  }
}
Program: 174760
Project: 174760
Buggy source:
/** 
 * Reads all the entries from the collection. Paging information is provided.
 * @param params - will never be null and will have the PAGING default values
 * @return CollectionWithPagingInfo<E>
 */
public CollectionWithPagingInfo<E> readAll(Parameters params,WithResponse withResponse);

Fixed version (ground truth):
/** 
 * Reads all the entries from the collection. Paging information is provided.
 * @param params - will never be null and will have the PAGING default values
 */
public CollectionWithPagingInfo<E> readAll(Parameters params,WithResponse withResponse);
Program: 174761
Project: 174761
Buggy source:
/** 
 * Reads all the relationship entities from the collection using the related entityResourceId. Paging information is provided.
 * @param entityResourceId Entity resource context for this relationship
 * @param params - will never be null and will have the PAGING default values
 * @return CollectionWithPagingInfo<E>
 */
public CollectionWithPagingInfo<E> readAll(String entityResourceId,Parameters params,WithResponse withResponse);

Fixed version (ground truth):
/** 
 * Reads all the relationship entities from the collection using the related entityResourceId. Paging information is provided.
 * @param entityResourceId Entity resource context for this relationship
 * @param params - will never be null and will have the PAGING default values
 */
public CollectionWithPagingInfo<E> readAll(String entityResourceId,Parameters params,WithResponse withResponse);
Program: 174762
Project: 174762
Buggy source:
/** 
 * A list of property names passed in the request using the json pointer syntax Specified by the "INCLUDE" request parameter.
 * @return List<String> the propertyNames
 */
List<String> getInclude();

Fixed version (ground truth):
/** 
 * A list of property names passed in the request using the json pointer syntax Specified by the "INCLUDE" request parameter.
 * @return the propertyNames
 */
List<String> getInclude();
Program: 174763
Project: 174763
Buggy source:
/** 
 * A list of property names passed in the request using the json pointer syntax Specified by the "SELECT" request parameter.
 * @return List<String> the propertyNames
 */
@Deprecated List<String> getSelectedProperties();

Fixed version (ground truth):
/** 
 * A list of property names passed in the request using the json pointer syntax Specified by the "SELECT" request parameter.
 */
@Deprecated List<String> getSelectedProperties();
Program: 174764
Project: 174764
Buggy source:
/** 
 * Takes the "include" parameter and turns it into a List<String> property names
 * @param includeParam String
 * @return List<String> bean property names potentially using JSON Pointer syntax
 */
@SuppressWarnings("String_Node_Str") public static List<String> getIncludeClause(String includeParam) throws InvalidArgumentException {
  return getClause(includeParam,"String_Node_Str");
}

Fixed version (ground truth):
/** 
 * Takes the "include" parameter and turns it into a List<String> property names
 * @param includeParam String
 * @return bean property names potentially using JSON Pointer syntax
 */
@SuppressWarnings("String_Node_Str") public static List<String> getIncludeClause(String includeParam) throws InvalidArgumentException {
  return getClause(includeParam,"String_Node_Str");
}
Program: 174765
Project: 174765
Buggy source:
/** 
 * Takes the "select" parameter and turns it into a List<String> property names
 * @param selectParam String
 * @return List<String> bean property names potentially using JSON Pointer syntax
 */
@SuppressWarnings("String_Node_Str") @Deprecated public static List<String> getSelectClause(String selectParam) throws InvalidArgumentException {
  return getClause(selectParam,"String_Node_Str");
}

Fixed version (ground truth):
/** 
 * Takes the "select" parameter and turns it into a List<String> property names
 * @param selectParam String
 * @return bean property names potentially using JSON Pointer syntax
 */
@SuppressWarnings("String_Node_Str") @Deprecated public static List<String> getSelectClause(String selectParam) throws InvalidArgumentException {
  return getClause(selectParam,"String_Node_Str");
}