Return-Path: Delivered-To: apmail-lucene-java-dev-archive@www.apache.org Received: (qmail 69075 invoked from network); 19 Mar 2008 10:46:29 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 19 Mar 2008 10:46:29 -0000 Received: (qmail 42370 invoked by uid 500); 19 Mar 2008 10:46:25 -0000 Delivered-To: apmail-lucene-java-dev-archive@lucene.apache.org Received: (qmail 42329 invoked by uid 500); 19 Mar 2008 10:46:25 -0000 Mailing-List: contact java-dev-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: java-dev@lucene.apache.org Delivered-To: mailing list java-dev@lucene.apache.org Received: (qmail 42318 invoked by uid 99); 19 Mar 2008 10:46:24 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 19 Mar 2008 03:46:24 -0700 X-ASF-Spam-Status: No, hits=1.2 required=10.0 tests=SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (athena.apache.org: local policy) Received: from [217.146.189.34] (HELO web23009.mail.ird.yahoo.com) (217.146.189.34) by apache.org (qpsmtpd/0.29) with SMTP; Wed, 19 Mar 2008 10:45:46 +0000 Received: (qmail 3712 invoked by uid 60001); 19 Mar 2008 10:45:55 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.co.uk; h=X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-ID; b=S2sGa5y8le3c8Ss+6XqCGq1BXWLt8pI2eoPJJc5765DwjRdwKVnZkOfGpYBb1n5eX2v6Za/ICkUrwiyx4AzDBcL4PJFhBUoDl3/2127exwR5DjtQcabDNQNcHhiz3SsxKkPuBrs/prYOyCUsgphknso2vYczc6NVbRh5+0KARZA=; X-YMail-OSG: 5HS2AaEVM1nefDPjD8_VLbvPr8lSEfhgop9Z03Jw1uwI_xfcaW0KvEkoKO5QlIGQ5vv5s726.iNDm01KLysxPRy8SsMIa5PkboyDAJ4ubweAe2uETLug8WOl8Ls- Received: from [84.131.254.176] by web23009.mail.ird.yahoo.com via HTTP; Wed, 19 Mar 2008 10:45:55 GMT X-Mailer: YahooMailRC/902.38 YahooMailWebService/0.7.185 Date: Wed, 19 Mar 2008 10:45:55 +0000 (GMT) From: eks dev Subject: Re: Fieldable, AbstractField, Field To: java-dev@lucene.apache.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Message-ID: <678787.3575.qm@web23009.mail.ird.yahoo.com> X-Virus-Checked: Checked by ClamAV on apache.org Hoss, thanks for kicking-in with your "design purist" hat on :)=0A=0Aabout = your proposal, =0A"The best short term approach I can think of for addressi= ng LUCENE-1219 =0Ain 2.4: =0A 1) list the new methods in a new interface th= at extends Fieldable =0A (ByteArrayReuseFieldable or something)=0A 2) ad= d the new methods to AbstractField so that it implements =0A ByteArrayRe= useFieldable =0A 3) put an instanceof check for ByteArrayReuseFieldable in = =0A DocumentsWriter. =0AIt's not pretty, but it's backwards compatible."= =0A=0A=0AFor short term, It is not even necessary to add new interface, we = can, just like allready done in LUCENE-1219 add these methods to AbstractFi= eld and check instanceof for AbstractField. Keeps "not pretty" level a bit = lower. =0A=0ABut, If I read Mike's proposal well, he wanted to go one step = further (preserving backwards compatibility, of course!).=0A=0ASomething al= ong the lines:=0A=0A1. Deprecate Fieldable=0A2. Fold Field and AbstractFiel= d into one class, e.g. Field implements Fieldable=0A3. replace all usages o= f Fildable in Lucene core with Field=0A4. deprecate, the following methods= in Document:=0Aadd(Fieldable field)=0AFieldable getFieldable(String name)= =0AFieldable[] getFieldables(String name)=0Athese are the only way for Fiel= dable to enter/leave Lucene core! =0A5. Add equivalents that use Field=0A= =0Aimo, this could work smoothly and would be good intermediate step for so= me real refactoring that would later (3.0) separate reading/Iindexing uses.= =0A =0A =0A=0A=0A=0A=0A=0A=0A=0A ____________________________________= _______________________ =0ARise to the challenge for Sport Relief with Yaho= o! For Good =0A=0Ahttp://uk.promotions.yahoo.com/forgood/ --------------------------------------------------------------------- To unsubscribe, e-mail: java-dev-unsubscribe@lucene.apache.org For additional commands, e-mail: java-dev-help@lucene.apache.org