87 lines
2.7 KiB
Java
87 lines
2.7 KiB
Java
|
package calcul;
|
||
|
|
||
|
import java.util.Enumeration;
|
||
|
import java.util.regex.Matcher;
|
||
|
import java.util.regex.Pattern;
|
||
|
|
||
|
import javax.swing.JOptionPane;
|
||
|
|
||
|
import cXML.node;
|
||
|
|
||
|
public class calculNombrePointEvaluation {
|
||
|
|
||
|
public static int calculNombreDepoint(node nod, int point) {
|
||
|
|
||
|
if(nod.getAttributs().get("evaluer")!=null) if(nod.getAttributs().get("evaluer").equalsIgnoreCase("true")){
|
||
|
if(nod.getAttributs().get("allContent")!=null) {
|
||
|
Pattern pt = Pattern.compile("[0-9]{1,}$");
|
||
|
Matcher match= pt.matcher(nod.getAttributs().get("allContent"));
|
||
|
if(match.find()) {
|
||
|
String s= match.group();
|
||
|
try {
|
||
|
point = point + Integer.valueOf(s);
|
||
|
} catch (Exception e) {
|
||
|
JOptionPane.showInternalMessageDialog(null, "Erreur dans la valeur de l'attribut allContent");
|
||
|
}
|
||
|
System.out.println("match point pour allcontent = " + s);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if(nod.getAttributs().get("evalNameInitialCreator")!=null) {
|
||
|
try {
|
||
|
point = point + Integer.valueOf(nod.getAttributs().get("evalNameInitialCreator"));
|
||
|
} catch (Exception e) {
|
||
|
JOptionPane.showInternalMessageDialog(null, "Erreur dans la valeur de l'attribut evalNameInitialCreator");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if(nod.getAttributs().get("evalNameCreator")!=null) {
|
||
|
try {
|
||
|
point = point + Integer.valueOf(nod.getAttributs().get("evalNameCreator"));
|
||
|
} catch (Exception e) {
|
||
|
JOptionPane.showInternalMessageDialog(null, "Erreur dans la valeur de l'attribut evalNameCreator");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if(nod.getAttributs().get("evalNameNode")!=null) {
|
||
|
try {
|
||
|
point = point + Integer.valueOf(nod.getAttributs().get("evalNameNode"));
|
||
|
} catch (Exception e) {
|
||
|
JOptionPane.showInternalMessageDialog(null, "Erreur dans la valeur de l'attribut evalNameCreator");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
Enumeration<String> key = nod.getAttributs().keys();
|
||
|
while(key.hasMoreElements()) {
|
||
|
String k = key.nextElement();
|
||
|
if(nod.getAttributs().get(k).contains("‽")||nod.getAttributs().get(k).contains("‼")) {
|
||
|
Pattern pt = Pattern.compile("[0-9]{1,}$");
|
||
|
Matcher match= pt.matcher(nod.getAttributs().get(k));
|
||
|
if(match.find()) {
|
||
|
String s= match.group();
|
||
|
try {
|
||
|
point = point + Integer.valueOf(s);
|
||
|
} catch (Exception e) {
|
||
|
JOptionPane.showInternalMessageDialog(null, "Erreur dans la valeur de l'attribut "+ k);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
for(int i = 0 ; i < nod.getNodes().size();i++) {
|
||
|
if(nod.getNodes().get(i)!=null) {
|
||
|
point = calculNombreDepoint(nod.getNodes().get(i), point);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
return point;
|
||
|
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
|
||
|
}
|