R/makeLink.R

makeLink <- function(fileId, parentId, linkName = NULL, annotations = list())
{
  # Get synapse properties of the source object

  obj = synapseClient::synGet(fileId, downloadFile=F)
  if (is.null(linkName)) {
     linkName = obj@properties$name
  }
  # Create a linksTo list

  linksTo = list( targetVersionNumber = obj@properties$versionNumber, targetId = obj@properties$id )
  #Create a linkClass list

  linkClass = list(concreteType='org.sagebionetworks.repo.model.Link',
    linksTo	= linksTo,
    entityType = 'org.sagebionetworks.repo.model.Link',
    parentId	= parentId,
    name = linkName,
    annotations	= annotations,
    linksToClassName = 'org.sagebionetworks.repo.model.FileEntity')

  foo <- synapseClient::synRestPOST('/entity',linkClass)
}
Sage-Bionetworks/synapseUtilities documentation built on May 9, 2019, 12:15 p.m.