Ho un piccola problema con l'utilizzo di questo pattern insieme alla formattazione delle date in java.... preso questo pezzo di codice:
Codice:
public void update(Observable o, Object arg) {
SimpleDateFormat giorno = new SimpleDateFormat("dd/MM/yyyy");
/* una o più discussioni presenti in questo
* newsgroup sono state aggiornate */
Discussion d = (Discussion)o;
List<String> list = d.getDifferentDate();
System.out.println("---> 1ab");
for(String data : list) {
System.out.println("ciao");
String aux = giorno.format(data); <----
System.out.println("ciao2");
if(!differentdate.contains(aux));
differentdate.add(aux);
}
System.out.println("---> 2cd");
howarticles++;
System.out.println("###-->"+howarticles);
System.out.println("###-->"+differentdate.size());
modify();
}
mi trovo nell'assurda situazione in cui, quando un oggetto observable viene modificato e di conseguenza viene chiamato il metodo update dell'oggetto osservatore, il flusso di controllo al momento di arrivare alla riga di codice definita dalla feccia rossa "sparisce"!! ...nel senso che in console vedo una sfilza di "---> 1ab" ....come se andasse in loop il for! ....il problema è che in realtà il programma non va in loop (un solo thread e quindi un solo flusso di controllo) e cosa + strana, quando vado a togliere la stringa che mi parsa la data il flusso di controllo mi stampa correttamente anche la "---> 2cd" !
O siamo entrati nel campo della metafisica oppure sono io che non ho capito bene il concetto di flusso di controllo, thread, ecc....