Hi,
I think it's not necessary to wirte a PolicyRepository completely on your own.
You can extend from our
MapBasedSimplePolicyRepository. Then you have to override the
checkReferenceConsistency Method.
You will also then extend the
getEvaluatable and
getEvaluatables methods, so that they resolve remote references on demand (meanig lazy).
The returned policies should then be already resolved when the return happens.
Important is that you mustn't
deploy resolved references into the repository. Remote references should every time be resolved when
getEvaluatables is called.
Hint: Look at the java comments in
MapBasedSimplePolicyRepository:
http://dev.herasaf.org/source/browse/XACMLCORE/trunk/src/main/java/org/herasaf/xacml/core/simplePDP/MapBasedSimplePolicyRepository.java?hb=true. That should give you a clear idea about how it behaves and how you could hook it up for your needs.
Regards,
René
PS: Make sure that you follow exactly the XACML specification.