This Confluence instance is live. Confluence is now part of the Internet2 Collaboration Platform. If you need support, please contact

Skip to end of metadata
Go to start of metadata

The Person Update service of the Entity Registry accepts incoming attributes, attempts to resolve a Person based on those attributes, and modify the found Person's attributes using the information given.


  function Registry.handleUpdate(incomingAttributes) {
  /* if the incoming attributes already contain a registry-assigned unique id, try to resolve the person, and fail if can't */
  if(incomingAttributes.contains(registry_assigned_unique_id) {
    var currentPerson = registry.getPerson(registry_assigned_unique_id);
    if(!currentPerson) {
      throw PersonNotFound_Exception;
    return currentPerson;
  /* otherwise we must run a search-match to find a matching person */
  else {
    var matches = PersonMatchService.findMatchesByAttributes(incomingAttributes);
    if(matches.size() == 1) {
      currentPerson = matches.getNext();
      return currentPerson;
    } else if(matches.size() > 1) {
      var matchResolutionTicket = MatchResolutionQueue.enqueue(new WorkItem(matches, incomingAttributes))
      return matchResolutionTicket;
    } else if(matches.isEmpty()) {
      var newPerson = createNewPerson(incomingAttributes)



  • No labels