Claire instance du Singleton en Java

J'ai une classe Singleton pour enregistrer l'état d'une application module.
Cette classe n'ont tout simplement beaucoup de variables de classe avec les setters et getters :

public class ModuleState{

private static ModuleState instance;

private A a;
private B b;
private C c;
..
..
..
..

private ModuleState (){}

public ModuleState getInstance(){
    if(instance==null)
        instance=new ModuleState();

    return instance;
}

}

À un moment précis de la vie de l'application, j'ai le besoin d'EFFACER le module de l'état. Ce que je fais maintenant est de réinitialiser TOUTES les variables dans ModuleState par un clearAll() la méthode comme ceci:

public void clearAll(){
    a=null;
    b=null;
    c=null;

    ..
    ..
}

Ma question est la suivante : il y a une méthode plus propre pour faire ce reset? Éventuellement de compensation de l'instance du singleton lui-même, sans remise à zéro à chaque variable de classe?

Le problème avec cette approche est que je peut avoir besoin d'ajouter une nouvelle variable de classe à la ModuleState. Dans ce cas, je dois me rappeler d'ajouter une ligne dans le clearAll() méthode pour réinitialiser la nouvelle variable.

OriginalL'auteur Nameless | 2013-05-12