Browse Source

fix: tailleMax + erreur

Martin Passard 7 years ago
parent
commit
c8eda28124
3 changed files with 45 additions and 2 deletions
  1. 2 0
      src/main/AffichableSurIRC.java
  2. 22 2
      src/main/Bot.java
  3. 21 0
      src/main/Cache.java

+ 2 - 0
src/main/AffichableSurIRC.java

@@ -4,6 +4,8 @@ import java.util.List;
 
 public interface AffichableSurIRC {
 	
+	public static final long MAX_CHARACTERS=400;
+	
 	public List<String> toStringIRC ();
 
 }

+ 22 - 2
src/main/Bot.java

@@ -89,17 +89,35 @@ public class Bot extends PircBot {
 				e1.printStackTrace();
 			}
 		}
+		
+		
 
 		List<String> messages = new LinkedList<>();
 		messages.add("Les FAI surveillés par mes petits yeux mignons de bot sont:");
 		String s="";
-
+		
+		
+		if(message.indexOf(' ')!=-1 && message.substring(message.indexOf(" ")).contains("all")) {
+			messages.add("=== Hors fédé: ===");
+			for(ISP isp: listeFAI) {
+				if(!isp.isFFDNMember()) {
+					s+= isp.getBetterName()+", ";
+				}
+				if(s.length()>=AffichableSurIRC.MAX_CHARACTERS) {
+					messages.add(s);
+					s="";
+				}
+			}
+			messages.add(s);
+			s="";
+		}
+			messages.add("=== Dans la fédé: ===");
 		for(ISP isp: listeFAI ) {
 			if(isp.isFFDNMember()) {
 
 				s+= isp.getBetterName();
 
-				if(s.length()>=80) {
+				if(s.length()>=AffichableSurIRC.MAX_CHARACTERS) {
 					messages.add(s);
 					s="";
 				}else {
@@ -112,6 +130,8 @@ public class Bot extends PircBot {
 
 
 	}
+	
+	
 
 
 	public void info(String channel, String sender,

+ 21 - 0
src/main/Cache.java

@@ -100,6 +100,26 @@ public class Cache implements AffichableSurIRC {
 		return i;
 	}
 	
+	public int getMemberCountOutFede() {
+		int i = 0;
+		for(ISP isp : getListe()) {
+			if(!isp.isFFDNMember()) {
+				i += isp.getMembersCount();
+			}
+		}
+		return i;
+	}
+	
+	public int getSubscribersCountOutFede() {
+		int i = 0;
+		for(ISP isp : getListe()) {
+			if(!isp.isFFDNMember()) {
+				i += isp.getSubscribersCount();
+			}
+		}
+		return i;
+	}
+	
 	public String getSubscribersPercents(int val) {
 		NumberFormat nf = NumberFormat.getInstance();
 		nf.setMaximumFractionDigits(2);
@@ -158,6 +178,7 @@ public class Cache implements AffichableSurIRC {
 		List<String> liste = new LinkedList<String>();
 		liste.add("Il y a "+cache.size()+" FAI dont "+getISPCount(Boolean.TRUE)+" dans la fédé");
 		liste.add("Cela représente en tout (dans la fédé) "+getSubscribersCountInFede()+" Abonné.e.s et "+getMemberCountInFede()+" Membres");
+		liste.add("Et hors fédé : "+getSubscribersCountOutFede()+" Abonné.e.s et "+getMemberCountOutFede()+" Membres");
 		return liste;
 	}