|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 1545
|
Refactoring parte 1: Eliminazione Log
Sto guardando il codice e ho iniziato a eliminare la parte di logging.
Il fatto è che non conosco bene questa parte, qualcuno mi vuole dare una mano? Non vorrei lasciare cose inutilizzate |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 4739
|
archivio con la directory che prima stava sotto ..\Diamonds\src\it\diamonds\
(ex package it.diamonds.log ) per un eventuale futuro riuso del materiale credo che il package si possa rimuovere in modo safe a patto di eliminare anche le occorrenze del logwriter in grid e gameloop e i test
__________________
Jappilas is a character created by a friend for his own comic - I feel honored he allowed me to bear his name Saber's true name belongs to myth - a Heroic Soul out of legends, fighting in our time to fullfill her only wish Let her image remind of her story, and of the emotions that flew from my heart when i assisted to her Fate
Ultima modifica di jappilas : 04-11-2006 alle 00:01. |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 1545
|
Ok credo di avere finito, per favore chi aveva lavorato al logging può dare un'occhiata?
Ultima modifica di Ufo13 : 04-11-2006 alle 00:41. |
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Apr 2003
Città: Genova
Messaggi: 4739
|
Log della rimozione *definitiva* del Log [Warning - long post]
Quote:
In GameLoop i metodi: Codice:
private void startPlayLogging()
{
playFieldOne.createLogFile("playerOne.log");
playFieldTwo.createLogFile("playerTwo.log");
}
Codice:
private void shutdownPlayFields()
{
if(playFieldOne != null)
{
LogFileWriter playFieldOneLogFile = playFieldOne.getLogFile();
if(playFieldOneLogFile != null)
{
playFieldOneLogFile.close();
}
}
if(playFieldTwo != null)
{
LogFileWriter playFieldTwoLogFile = playFieldTwo.getLogFile();
if(playFieldTwoLogFile != null)
{
playFieldTwoLogFile.close();
}
}
}
Codice:
private void logGridController()
{
if(logFile == null)
{
return;
}
getLogFile().write(gridController.getStateLogString());
}
Codice:
private void logActions()
{
if(logFile == null)
{
return;
}
if(gridController.getNumberOfPairInserted() == numberOfPairLogged
&& gridController.getEventLogString().length() == 0)
{
return;
}
logFile.write(inputServed + "");
if(gridController.getNumberOfPairInserted() > numberOfPairLogged)
{
logFile.write("pair " + gridController.getGemsPair().toString());
numberOfPairLogged = gridController.getNumberOfPairInserted();
}
logFile.write(gridController.getEventLogString());
}
Codice:
public void createLogFile(String logFilePath)
{
logFile = LogFileWriter.create("data/" + logFilePath);
logFile.write("seed " + sessionSeed + "\n");
}
Codice:
public void createTestingLogFile()
{
logFile = LogFileWriter.createForTesting();
logFile.write("seed " + sessionSeed + "\n");
}
Codice:
public LogFileWriter getLogFile()
{
return logFile;
}
Codice:
private LogFileWriter logFile; private int numberOfPairLogged = 0; Codice:
public String getEventLogString()
{
return inputReactor.getLogString();
}
Codice:
public void addLineOfStateLog(String log)
{
logBuffer.append(log + "\n");
}
Codice:
public String getStateLogString()
{
if(logBuffer != null)
{
String res = logBuffer.toString();
return res;
}
return "";
}
In ogni classe di test degli states un Codice:
public void testLogState()
{
state.update(environment.getTimer().getTime(), controller);
assertEquals("bad WaitNextCrushState state log",
state.getClass().getName() + "\n", controller.getStateLogString());
}
Codice:
public void testGetLogBuffer()
{
assertEquals("Log buffer not initialized", "",
controller.getStateLogString());
}
Codice:
public void testAddLineOfStateLog()
{
controller.addLineOfStateLog("asdLul");
assertEquals("asdLul\n", controller.getStateLogString());
}
Codice:
public void testAddTwoLineOfStateLog()
{
controller.addLineOfStateLog("asdLul");
controller.addLineOfStateLog("foo");
assertEquals("asdLul\nfoo\n", controller.getStateLogString());
}
Codice:
public void testResetLogOnUpdate()
{
insertAndDropGemsPair();
controller.addLineOfStateLog("asdLul");
controller.addLineOfStateLog("foo");
assertTrue(controller.getStateLogString().startsWith("asdLul"));
controller.update(environment.getTimer().getTime());
assertFalse(controller.getStateLogString().startsWith("asdLul"));
}
Codice:
private StringBuffer logString; Codice:
public void logEvent(AbstractEventHandler handler)
{
Integer eventStatus = handler.isPressed() ? 1 : 0;
logString.append(handler.getClass().getName() + " "
+ eventStatus.toString() + "\n");
}
Codice:
public String getLogString()
{
return logString.toString();
}
Codice:
void logEvent(AbstractEventHandler handler);
String getLogString();
Codice:
... inputReactor.logEvent(this); Codice:
public void testHandlerPressedLogged()
{
input.notify(Event.create(Code.ENTER, State.PRESSED));
reactor.reactToInput(environment.getTimer().getTime());
assertEquals(
"it.diamonds.tests.engine.input.HandlerForTestInputReactor 1\n",
reactor.getLogString());
}
Codice:
public void testHandlerReleasedLogged()
{
input.notify(Event.create(Code.ENTER, State.RELEASED));
reactor.reactToInput(environment.getTimer().getTime());
assertEquals(
"it.diamonds.tests.engine.input.HandlerForTestInputReactor 0\n",
reactor.getLogString());
}
Tutti i riferimenti; le classi LogReader e LogWriter sotto engine ; il relativo TestLog; Per cui adesso: LOG.Terminated; ps: Alberto, mi dispiace per tutto il lavoro che avevi fatto e che ho dovuto distruggere
__________________
Jappilas is a character created by a friend for his own comic - I feel honored he allowed me to bear his name Saber's true name belongs to myth - a Heroic Soul out of legends, fighting in our time to fullfill her only wish Let her image remind of her story, and of the emotions that flew from my heart when i assisted to her Fate
Ultima modifica di jappilas : 18-11-2006 alle 19:26. |
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 1545
|
Ottimo lavoro Jappi
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:08.


















