|
@@ -21,54 +21,64 @@ public class Info extends Action {
|
|
|
|
|
|
@Override
|
|
|
public void react(String channel, String sender, String login, String hostname, String message) {
|
|
|
- String s = message.substring(message.indexOf(' ')+1);
|
|
|
- ISPDAO idao = ISPDAO.getInstance();
|
|
|
- Bot ib = (Bot)bot;
|
|
|
- if(!EntierPositifNonVide.verifie(s)) { // Un mot après +info
|
|
|
+ String messageSansEspace = message.toLowerCase().replaceAll("\\s", "");
|
|
|
+ if(messageSansEspace.equals(CARACTERE_COMMANDE+keyWords.get(0))) {
|
|
|
+ bot.sendMessage(channel,CARACTERE_COMMANDE+messageSansEspace+" doit être suivi d'une chaine de caractère ou d'un numero");
|
|
|
|
|
|
+ }else {
|
|
|
+
|
|
|
+
|
|
|
+ String s = message.substring(message.indexOf(' ')+1);
|
|
|
+ ISPDAO idao = ISPDAO.getInstance();
|
|
|
+ Bot ib = (Bot)bot;
|
|
|
+
|
|
|
+
|
|
|
+ if(!EntierPositifNonVide.verifie(s)) { // Un mot après +info
|
|
|
|
|
|
- if(s.equalsIgnoreCase("all")) { // +info all
|
|
|
- Cache c = Cache.getInstance();
|
|
|
- ib.sendMessage(channel, c.toStringIRC());
|
|
|
- for(ISP i : c.getListe()) {
|
|
|
- if(i.isFFDNMember()) {
|
|
|
- ib.sendMessage(channel, i.toStringIRC());
|
|
|
- }
|
|
|
- }
|
|
|
|
|
|
- }else if(s.equalsIgnoreCase("ffdn")) { //+info ffdn
|
|
|
- Cache c = Cache.getInstance();
|
|
|
- ib.sendMessage(channel, c.toStringIRC());
|
|
|
-
|
|
|
- }else {
|
|
|
- Cache c = Cache.getInstance();
|
|
|
- ISP i = c.getISPWithName(s);
|
|
|
- if(i == null) {
|
|
|
- bot.sendMessage(channel, "Recherche d'une zone "+s);
|
|
|
- ISP j = c.getISPWithGeoZone(s);
|
|
|
- if(j == null)
|
|
|
- bot.sendMessage(channel, "Le FAI "+s+" est Inconnu, désolé. Et aucun FAI n'opère sur une sone dénomée "+s+" ...");
|
|
|
- else {
|
|
|
- bot.sendMessage(channel, "Un FAI opère sur la zone "+s+" : ");
|
|
|
- ib.sendMessage(channel, j.toStringIRC());
|
|
|
- List<CoveredAreas> cas = j.getCoveredAreas(s);
|
|
|
- String technos = "";
|
|
|
- for(CoveredAreas ca: cas) {
|
|
|
- technos+=ca.getTechnos()+" ";
|
|
|
+ if(s.equalsIgnoreCase("all")) { // +info all
|
|
|
+ Cache c = Cache.getInstance();
|
|
|
+ ib.sendMessage(channel, c.toStringIRC());
|
|
|
+ for(ISP i : c.getListe()) {
|
|
|
+ if(i.isFFDNMember()) {
|
|
|
+ ib.sendMessage(channel, i.toStringIRC());
|
|
|
}
|
|
|
- bot.sendMessage(channel, "Avec pour techno "+technos);
|
|
|
}
|
|
|
+
|
|
|
+ }else if(s.equalsIgnoreCase("ffdn")) { //+info ffdn
|
|
|
+ Cache c = Cache.getInstance();
|
|
|
+ ib.sendMessage(channel, c.toStringIRC());
|
|
|
+
|
|
|
}else {
|
|
|
- ib.sendMessage(channel, i.toStringIRC());
|
|
|
+ Cache c = Cache.getInstance();
|
|
|
+ ISP i = c.getISPWithName(s);
|
|
|
+ if(i == null) {
|
|
|
+ bot.sendMessage(channel, "Recherche d'une zone "+s);
|
|
|
+ ISP j = c.getISPWithGeoZone(s);
|
|
|
+ if(j == null)
|
|
|
+ bot.sendMessage(channel, "Le FAI "+s+" est Inconnu, désolé. Et aucun FAI n'opère sur une sone dénomée "+s+" ...");
|
|
|
+ else {
|
|
|
+ bot.sendMessage(channel, "Un FAI opère sur la zone "+s+" : ");
|
|
|
+ ib.sendMessage(channel, j.toStringIRC());
|
|
|
+ List<CoveredAreas> cas = j.getCoveredAreas(s);
|
|
|
+ String technos = "";
|
|
|
+ for(CoveredAreas ca: cas) {
|
|
|
+ technos+=ca.getTechnos()+" ";
|
|
|
+ }
|
|
|
+ bot.sendMessage(channel, "Avec pour techno "+technos);
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ ib.sendMessage(channel, i.toStringIRC());
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
|
|
|
- }else { // Un nombre après +info
|
|
|
+ }else { // Un nombre après +info
|
|
|
|
|
|
- int id = Integer.parseInt(message.substring(message.indexOf(' ')+1));
|
|
|
- List<String> strings = idao.getISP(id).toStringIRC();
|
|
|
- for(String response : strings) {
|
|
|
- bot.sendMessage(channel,response);
|
|
|
+ int id = Integer.parseInt(message.substring(message.indexOf(' ')+1));
|
|
|
+ List<String> strings = idao.getISP(id).toStringIRC();
|
|
|
+ for(String response : strings) {
|
|
|
+ bot.sendMessage(channel,response);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|