sdx-developers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sdx-developers] FieldList


From: Martin Sevigny
Subject: Re: [sdx-developers] FieldList
Date: Mon, 12 Jul 2004 17:52:46 +0200
User-agent: Mozilla Thunderbird 0.6 (Windows/20040502)

Salut,

Si je comprend bien, on cherche à récupérer une FieldList globale via l'attribut REF, fieldlist à laquelle on pourra éventuellement ajouter des champs "locaux". OK.

Je ne savais pas qu'on pouvait ajouter des champs locaux, mais sinon l'idée c'est d'éviter de réécrire une fieldlist pour une "base conceptuelle" éclatée en plusieurs bases de documents SDX.

Ca veut donc dire que, pendant un très court instant, la FieldList de l'instance de SDXDocumentBase est la *même* que la FieldListGlobale ? Wow ! Quid si la FieldList globale est modifiée/détruite pendant ce temps ?

Ne vaut-il mieux pas :

if (appFieldLists != null)
    this._fieldList = (FieldList) appFieldLists.get(ref).clone();

Si tu veux...

... ou, mieux, une instanciation intermédiaire, éventuellement synchronisée ?

synchronized (appFieldLists) {
  FieldList tmpFieldList = (FieldList) appFieldLists.get(ref);
  this._fieldList = tmpFieldList.clone();
}

Mais y a-t-il vraiment une possibilité que plus d'une liste soit instanciée en parallèle?

i.e. dans un cas on initialise "à la main" et dans l'autre on le fait en se servant des utilitaires (qui seraient peut-être également à rationnaliser eux aussi car, pourquoi déporter la configuration en dehors de la classe ?).

Par ailleurs, les commentaires de cette méthode seraient peut-être à revoir : il y a eu des rechercher/remplacer

Un peu de ménage à faire, certe.

D'ailleurs, je réalise que cette option va perdre de son intérêt si on fait ce qu'on pense faire pour les gros index : fragmentation automatique et transparente par SDX (si on le souhaite bien sûr)... A suivre...

Martin Sévigny





reply via email to

[Prev in Thread] Current Thread [Next in Thread]