matthieu637 / cpp-2a-crawler

2 stars 0 forks source link

Une configuration flexible CrawlerConfig #50

Open matthieu637 opened 7 years ago

matthieu637 commented 7 years ago

Ce ticket est plus complexe que les autres. Il nécessite la compréhension des annotations et de la réflexivité en Java. Par ailleurs, il n'est pas primordial mais sert à votre apprentissage.

La classe CrawlerConfig va contenir un ensemble de paramètre de configuration. Relancer une compilation du code java à chaque fois que ces paramètres changent n'est pas très propre. En général, on utilisera plutôt un fichier de configuration (.properties). Cependant dans ce fichier de configuration, on peut oublier des valeurs, d'où l'utilisation d'annotation pour définir ces valeurs par défaut. Si la valeur est présente dans le fichier, elle est prise, si ce n'est pas le cas, on utilise l'annotation.

Exemple d'une implémentation ici : description property pour l'annotation, reflexivite, ce qui donne au final.