JStream est un logiciel de traitement de flux. Il permet d'effectuer plusieurs opérations sur un flux d'entrée et d'envoyer le résultat sur un flux de sortie.
JStream utilise une architecture basée sur des plugins. L'utilisateur a donc la possibilité de créer ses propres plugins afin d'ajouter de nouvelles fonctionnalités au programme.
JStream utilise 3 types de plugins : les plugins d'entrée qui sont chargés de lire des données depuis différentes sources; les plugins de sortie qui sont chargés d'écrire le résultat du traitement; les processeurs qui sont chargés de manipuler et transformer le flux.
JStream utilise un interpreteur Java, ce qui permet à l'utilisateur de créer ses propres script de traitement.
JStream utilise les NIO Java, ce qui lui permet d'effectuer des traitements avec de très bonnes performances.
Voici les différents plugins actuellement disponibles :
Plugins d'entrée :
PluginI_File (lecture depuis un fichier)
Plugins de sortie :
PluginO_File (écriture dans un fichier)
PluginO_MessageBox (affichage dans une message box)
PluginO_Null (aucune sortie)
PluginO_Stdout (affichage sur la console)
Processeurs :
PluginP_CRC (calcul du CRC du flux)
PluginP_MD5 (calcul du hash MD5 du flux)
PluginP_Not (opération binaire Not sur le flux)
PluginP_Null (ne fait rien)
PluginP_Reverse (inverse le flux)
PluginP_Xor (opération binaire Xor sur le flux)
Voici quelques exemples de scripts qui peuvent être créés avec JStream :
Calcul du MD5 d'un fichier
Calcul du CRC d'un fichier
Encodage d'un fichier (utilisation de PluginP_Xor avec clée, PluginP_Not et PluginP_Reverse par exemple)