In the STS I am working on, my customer's requirements allow an AppliesTo
element to take on either of these forms:
<wsp:AppliesTo>
<wsa:EndpointReference>
<wsa:Address>http://some.relevant.address/</wsa:Address>
</wsa:EndpointReference>
</wsp:AppliesTo>
OR
<wsp:AppliesTo>
<wsp:URI>http://some.relevant.address/</wsp:URI>
</wsp:AppliesTo>
AbstractOperation deals with the endpoint reference without a problem, but
doesn't deal with the URI version at all. Ideally, I'd override
AbstractOperation.extractAddressFromAppliesTo() to handle it and call it a
day, but AbstractOperation defines that as a static method so it can't
really be overridden. So instead, I've overridden
createTokenProviderParameters to check if an AppliesTo address has been
parsed, and if not, look for a URI. That works, but there's a drawback -
when it finds the URI form, it will bypass the check to see if it is in
the service list as well as some of the subsequent processing. I can
replicate it, but that seems a little sub-optimal.
Is there a better way to go about this?
Stephen W. Chappell
Engility Holdings, Inc., SSE TAL
William J. Hughes Technical Center, FAA
Information Security Team, ANG-B31
(609) 485-6710