Access4Learning / sif3-framework-dotnet

SIF 3.0 Developer Framework for .NET
Apache License 2.0
14 stars 19 forks source link

mustUseAdvisory header logic #26

Open bencart opened 7 years ago

bencart commented 7 years ago

There is an issue with the way the mustUseAdvisory header is being handled in a provider.

Current Logic:

If object has an advisory ref id
    if mustUseAdvisory = true
       process request
    else
       raise error
else
    if mustUseAdvisory = true
       raise error
    else
       process request

Expected Behaviour:

if mustUseAdvisory = true
   if there is a refId clash or the object does not have an advisory ref id
      raise error
   else
      process request
else
   process request assigning a new refid

The response to a create many where the mustUseAdvisory header is unset or set to false should contain a list of "Create Responses" containing advisory refId and it's new refid.