Uploaded image for project: 'Grouper'
  1. Grouper
  2. GRP-4162

chained SubjectFinder with subject identifier querying it as subject id

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Minor
    • 2.6.10
    • 2.2.0
    • None
    • None

    Description

      Using SubjectFinder().assignSubjectIdentifier(ident) does not work, as the code path ends up querying the subject id which wasn't defined. Note that if you add the sourceId, it does work, since it is a different code path.

      groovy:000> new SubjectFinder().assignSubjectId("800000252").findSubject()
      ===> Subject id: 800000252, sourceId: eduLDAP, name: Jennifer Arnold
       
      groovy:000> new SubjectFinder().assignSubjectIdentifier("jarnold").findSubject()
      ERROR java.lang.IllegalArgumentException:
      null Subject Id
       
      groovy:000> new SubjectFinder().assignSubjectIdentifier("jarnold").assignSourceId("eduLDAP") findSubject()
      ===> Subject id: 800000252, sourceId: eduLDAP, name: Jennifer Arnold
      

      The problem code may be around line 290

          if (!StringUtils.isBlank(this.subjectIdentifier)) {
            if (!StringUtils.isBlank(this.sourceId)) {
              return SubjectFinder.findByIdentifierAndSource(this.subjectIdentifier, this.sourceId, this.ignoreCachedSubjects, false);
            }
            return SubjectFinder.findByIdentifier(this.subjectId, this.ignoreCachedSubjects, false);
          }
      

      Attachments

        Activity

          People

            chad.redman@at.internet2.edu Chad Redman (unc.edu)
            chad.redman@at.internet2.edu Chad Redman (unc.edu)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: