WsRestGetSubjectsRequest with multiple subjectIdentifiers specified collapsing SUBJECT_NOT_FOUND results.

XMLWordPrintable

    • Type: Bug
    • Resolution: Unresolved
    • Priority: Minor
    • None
    • Affects Version/s: None
    • Component/s: subject API
    • None
    • Environment:
      Using Python 3.12 with "httpx" client pointed at Grouper REST API.

      When issuing a WsRestGetSubjectsRequest request via the Grouper REST API, and specifying multiple subjectIdentifiers, e.g. (in Python representation):

       

      {'WsRestGetSubjectsRequest': {'subjectAttributeNames': ['employeenumber',
                                                              'description',
                                                              'givenname', 'sn',
                                                              'mail'],
                                    'wsSubjectLookups': [{'subjectIdentifier': 'bar'},
                                                         {'subjectIdentifier': 'C54735441'},
                                                         {'subjectIdentifier': 'C15882409'},
                                                         {'subjectIdentifier': 'foo'}]}} 

      Hits are each correctly returned with a resultCode of SUCCESS, but it looks like all misses collectively return a single SUBJECT_NOT_FOUND result for only one of the misses, e.g. (again in Python representation):

      {'WsGetSubjectsResults': {'responseMetadata': {'millis': '365',
                                                     'serverVersion': '4.12.0'},
                                'resultMetadata': {'resultCode': 'SUCCESS',
                                                   'resultMessage': 'Queried 3 '
                                                                    'subjects',
                                                   'success': 'T'},
                                'subjectAttributeNames': ['employeenumber',
                                                          'description', 'givenname',
                                                          'sn', 'mail'],
                                'wsSubjects': [{'identifierLookup': 'foo',
                                                'resultCode': 'SUBJECT_NOT_FOUND',
                                                'success': 'F'},
                                               {'attributeValues': ['C15882409',
                                                                    'Christopher '
                                                                    'Green '
                                                                    '(cgreen@internet2.edu) '
                                                                    '- '
                                                                    'christopher.green@at.internet2.edu',
                                                                    'Christopher',
                                                                    'Green',
                                                                    'cgreen@internet2.edu'],
                                                'id': 'christopher.green@at.internet2.edu',
                                                'identifierLookup': 'C15882409',
                                                'name': 'Christopher Green',
                                                'resultCode': 'SUCCESS',
                                                'sourceId': 'i2user',
                                                'success': 'T'},
                                               {'attributeValues': ['C54735441',
                                                                    'Mike Simpson '
                                                                    '(msimpson@internet2.edu) '
                                                                    '- '
                                                                    'mike.simpson@at.internet2.edu',
                                                                    'Mike', 'Simpson',
                                                                    'msimpson@internet2.edu'],
                                                'id': 'mike.simpson@at.internet2.edu',
                                                'identifierLookup': 'C54735441',
                                                'name': 'Mike Simpson',
                                                'resultCode': 'SUCCESS',
                                                'sourceId': 'i2user',
                                                'success': 'T'}]}} 

      I think a more correct behavior would be to return a SUBJECT_NOT_FOUND result for each of the identifier searches that resulted in a miss.

       

       

            Assignee:
            Chris Hyzer (upenn.edu)
            Reporter:
            Mike Simpson
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: