Advertisement
Guest User

Untitled

a guest
Jan 17th, 2018
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.80 KB | None | 0 0
  1. import java.io.File;
  2. import java.io.FileNotFoundException;
  3. import java.util.ArrayList;
  4. import java.util.Scanner;
  5.  
  6. public class ProcesKwestieRegister {
  7.  
  8. private ArrayList<ProcesKwestie> register;
  9.  
  10. public ProcesKwestieRegister(File f){
  11.  
  12. register = new ArrayList<>();
  13.  
  14. int aantalIngeladen = leesProcesKwesties(f);
  15.  
  16. System.out.println(aantalIngeladen + " proces kwesties ingeladen!");
  17.  
  18. }
  19.  
  20. public int leesProcesKwesties(File f){
  21.  
  22. Scanner inputStream = null;
  23.  
  24. try
  25. {
  26. inputStream = new Scanner(f);
  27. }
  28. catch(FileNotFoundException e)
  29. {
  30. System.out.println("Het bestand kan niet ingelezen worden!");
  31. return 0;
  32. }
  33.  
  34. int counter = 0;
  35.  
  36. while(inputStream.hasNextLine()){
  37.  
  38. String line = inputStream.nextLine(); //als het eerste element er is, weet je direct dat de rest er ook sowieso is : 7 in totaal
  39. line += inputStream.nextLine();
  40. line += inputStream.nextLine();
  41. line += inputStream.nextLine();
  42. line += inputStream.nextLine();
  43. line += inputStream.nextLine();
  44. line += inputStream.nextLine();
  45.  
  46. ProcesKwestie kwestie = ProcesKwestie.parse(line);
  47.  
  48. register.add(kwestie);
  49. counter++;
  50. }
  51.  
  52. return counter;
  53. }
  54.  
  55. public void setPrioriteitenProces(String procesID){
  56.  
  57. ArrayList<ProcesKwestie> kwesties = new ArrayList<>();
  58.  
  59. for(ProcesKwestie nextKwestie : register)
  60. {
  61. if(procesID.equals(nextKwestie.getProces())) //er zijn meerdere Proceskwesties met dezelfde procesID
  62. {
  63.  
  64. kwesties.add(nextKwestie);
  65.  
  66. }
  67.  
  68. }
  69.  
  70. if(kwesties.isEmpty()){
  71.  
  72. throw new IllegalArgumentException("Er zijn geen proces kwesties voor " + procesID +"!"); //bij het oproepen van deze methode kan het exception gooien -> bij oproep try-catch toepassen
  73. }
  74.  
  75. ProcesKwestie[] arrayKwesties = new ProcesKwestie[kwesties.size()];
  76. kwesties.toArray(arrayKwesties);
  77.  
  78. ArrayList<IKwestie> arrayListKwesties = ParetoAnalyse.paretoAnalyse(arrayKwesties);
  79.  
  80. for( int i = 0 ; i < arrayListKwesties.size() ; i++) {
  81.  
  82. arrayListKwesties.get(i).setPrioriteit(i+1);
  83. }
  84.  
  85. for(IKwestie nextKwestie : kwesties)
  86. {
  87. if(!arrayListKwesties.contains(nextKwestie)) {
  88. nextKwestie.setPrioriteit(0);
  89. }
  90.  
  91. }
  92. }
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement