Hi Matt,

On 10/4/07, Matt Peterson <ickydude@gmail.com> wrote:
I'm not sure that including two sets of operational parameters for calls to the partition is the right answer.  Doing this would allow partitions to be written that could not benefit from optimizations made by interceptors. 

Well we may need to anyway because of other reasons.  Several users have complained that the
optimizations are actually preventing their ability to make their partitions work properly.  Letting them
see both sets to decide which to use gives the most freedom.  Incidentally the original parameters can
be made read-only to prevent tampering.

I like the interceptor paradigm because it encourages modularity and code reuse. I think that it would be wise to "encourage" partition authors to use interceptors appropriately and not embed into the partition what should be in an interceptor.

Yes this was the intent of using this pattern although it does have it's issues.  I just have not found
better alternatives.  At some point you have to use the best you have and roll forward with features
until the feature additions show that the pattern starts breaking down.  I think we're seeing that to a
certain degree.

However, it would also be wise to allow users the option of not using certain interceptors with a particular partition.

Yes you're right.  After thinking about it some more it's apparent that we need to define skip lists
for at least partitions.  Perhaps partitions can expose a skip list that can be used by the interceptor
chain to make sure certain interceptors are bypassed for your partition (the entries under it's suffix). 
Another approach may be to configure the interceptor chain directly to bypass specific suffix DNs. 

I like the idea of keeping the partition specific "skip list" (not the SkipList data structure but the list
of interceptors to skip) close to the partition itself.  This information can then be used by the interceptor
chain in the core.

Do you have any preferences? David you?

In other words, we need per-partition interceptor configuration.  I'm fairly focused on my current project, but I think it would be generally useful to make the interceptor configurations a property of the partition configuration (in server.xml).  This way users can select the set of interceptors that they'd like to use with a given partition. 

I think the per partition "skip list" does this no?