Je travaille sur une application pour analyser des données à partir d'une arborescence de répertoires et, ce faisant, j'ai un moniteur de progression dans la barre d'outils inférieure. J'utilise java Files.walk() pour marcher dans la structure et j'essaie d'utiliser IEventBroker, pour envoyer un message à la partie barre d'outils pour incrémenter la barre de progression, mais la sienne ne semble pas fonctionner correctement pour moi. Est-ce que quelqu'un sait d'une meilleure approche pour cela?Eclipse - Implémentation et incrémentation d'une barre de progression swt dans la barre d'outils
Ceci est le code où la recherche commence et les événements diffusés.
Path file = Paths.get(directoryPath);
if (!file.toFile().exists())
{
return null;
}
_broker.send(Constants.INITIALISE_PROGRESS_BAR, file.toFile().list().length);
try (final Stream<Path> pathStream = Files.walk(file))
{
pathStream.forEach(path ->
{
_broker.send(Constants.INCREMENT_PROGRESS_BAR, "inc");
........
});
}
Dans ma section barre d'outils j'ai les méthodes suivantes pour la taille maximale l'initialiser des progrès et pour incrémenter quand ils reçoivent un événement. Puisque je ne connais pas la taille de la structure du fichier, il vaut mieux ne pas l'incrémenter, mais plutôt avoir une sorte de progrès continuel.
Alors est-ce une RCP « e4 »? Pour e4 IEventBroker devrait être bien, mais vous devez nous montrer du code. –
C'est Greg, je vais poster maintenant dans une seconde. –
Alors qu'est-ce qui ne va pas? –