Tag: filewatcher

FileWatcher para variables ¿ VariableWatcher ?

by Desendoll on Dic.16, 2008, under JAVA

Hace un tiempo que estoy trabajando con Java, y aun que llevo poco tiempo, ya me voy dando cuenta de sus pros y sus contras. No voy hacer un VS. de estos que podéis encontrar en internet, pero si que voy a colgar un script que me ha sido de mucha utilidad.
Todos conocéis, o podéis encontrar con facilidad un script que compruebe si hay cambios en un fichero, ej: tenéis un .ini de configuración y miráis todo el rato si ha habido alguna modificación para detectarlo. Pues bien, he tenido la necesidad de hacer lo mismo con una clase y este ha sido el resultado.

Primero la clase, que ataque de originalidad le pondremos el nombre de VariableWarcher:

(tiene que ser un extends de TimerTask para ejecutarlo periódicamente)

public abstract class VariableWatcher extends TimerTask {

    private nuestraClase clase;

    public VariableWatcher( nuestraClasse clase) {
this.clase = clase;
}

    public final void run() {
if ( /* lo que queramos encontrar de cambio */ )
{

onChangeConn(clase);

        }
}
/* Para hacerlo mas dinámico la función onChangeVar no la programamos aun*/
protected abstract void onChangeVar(nuestraClase clase);

}

Y por ultimo la función, o el main o donde lo queramos colocar:

public void controlVariable() {

     TimerTask task = new VariableWatcher( Obj.nuestraClase) {
protected void onChangeVar( nuestraClasse nuestraClase) {
/* Lo que queremos que haga cuando se realice el cambio */
}};

     /* Inicialización del timer, y ejecución cada segundo. */
Timer timer = new Timer();
timer.schedule( task , new Date(), 1000 );
}

PD: Si, he tenido un montón de problemas de sincronización y concurrencia, pero esto ya lo comentare otro día.

1 Comment :, , , more...

Visita nuestros amigos!

Unos amigos muy recomendables ...