lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Busch <>
Subject Re: Payloads
Date Thu, 21 Dec 2006 16:49:01 GMT
Doug Cutting wrote:
> A reason not to commit something like this now would be if it 
> complicates the effort to make the format extensible.  Each index 
> feature we add now will require back-compatibility in the future, and 
> we should be hesitant to add features that might be difficult to 
> support in the future.
Yes, I agree.

I had the idea of defining Payload as an interface:

public interface Payload {
    void serialize(IndexOutput out) throws IOException;
    int serializedLength();
    void deserialize(IndexInput in, int length) throws IOException;

and to have a default implementation ByteArrayPayload that works like my 
current patch. Then people could write their own implementation of 
Payload and define how to serialize the content.
> For example, this modifies the Token API.  If, long-term, we think 
> that Token should be extensible, then perhaps we should make it 
> extensible now, and add this through a subclass of Token (perhaps a 
> mixin interface that Tokens can implement).
Yes I could introduce a new class called e.g. PayloadToken that extends 
Token (good that it is not final anymore). Not sure if I understand your 
mixin interface idea... could you elaborate, please?

> I like the Payload feature, and think it should probably be added.  I 
> just want to make sure that we've first thought a bit about its 
> future-compatibility.
> Doug
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message