/** * called to let us know we have processed all the META-INF entries, and if we re-read one of * them, don't re-process it. Also gets rid of any data structures we needed when parsing META-INF * entries. */ void doneWithMeta() { parsingMeta = false; anyToVerify = !sigFileSigners.isEmpty(); baos = null; sigFileData = null; pendingBlocks = null; signerCache = null; manDig = null; // MANIFEST.MF is always treated as signed and verified, // move its signers from sigFileSigners to verifiedSigners. if (sigFileSigners.containsKey(JarFile.MANIFEST_NAME)) { verifiedSigners.put(JarFile.MANIFEST_NAME, sigFileSigners.remove(JarFile.MANIFEST_NAME)); } }
public static void main(String[] args) { num_users = 0; int movie_number = 0; MINSUP = Double.parseDouble(args[1]); MINCONF = Double.parseDouble(args[3]); MAXMOVIES = Integer.parseInt(args[5]); String test_raw = args[6]; test = ""; test = test_raw.substring(1); if (test.equals("comb")) { go_to = true; } if ((MINSUP < 0 || MINSUP > 100) || (MINCONF < 0 || MINCONF > 100) || MAXMOVIES < 0 || test == null) { System.out.println("Input variables aren't correct!"); System.exit(0); } ArrayList<User> users = new ArrayList<User>(Collections.nCopies(945, blank)); int[] user_exists = new int[945]; try { FileInputStream fstream = new FileInputStream("src/u.data"); // location of file in eclipse DataInputStream in = new DataInputStream(fstream); BufferedReader br = new BufferedReader(new InputStreamReader(in)); String strLine; while ((strLine = br.readLine()) != null) { StringTokenizer tok = new StringTokenizer(strLine); String ID = tok.nextToken(); int userID = Integer.parseInt(ID); String MID = tok.nextToken(); int movieID = Integer.parseInt(MID); String RANK = tok.nextToken(); int movieRating = Integer.parseInt(RANK); Movie current_movie = new Movie(movieID, movieRating); if (user_exists[userID] == 0) { num_users++; users.set(userID, new User(userID, movieID, movieRating)); user_exists[userID] = 1; } else { users.get(userID).movies.add(current_movie); } } in.close(); } catch (Exception e) { if (e.getMessage() != null) { System.err.println("Error: " + e.getMessage()); } } try { FileInputStream fstream = new FileInputStream("src/u.item"); // location of file in eclipse DataInputStream in = new DataInputStream(fstream); BufferedReader br = new BufferedReader(new InputStreamReader(in)); String strLine; while ((strLine = br.readLine()) != null) { movie_number++; StringTokenizer tok = new StringTokenizer(strLine, "|"); String number = tok.nextToken(); int movieNumber = Integer.parseInt(number); String movieName = tok.nextToken(); for (int i = 0; i < users.size(); i++) { for (int j = 0; j < users.get(i).movies.size(); j++) { if (users.get(i).movies.get(j).movieID == movieNumber) { users.get(i).movies.get(j).setName(movieName); } } } } in.close(); } catch (Exception j) { System.err.println("Error: " + j.getMessage()); } // System.out.println("Num users is "+num_users); if (test.equals("pos")) { for (int user_num = 1; user_num < num_users + 1; user_num++) { for (int usermovies = 0; usermovies < users.get(user_num).movies.size(); usermovies++) { if (users.get(user_num).movies.get(usermovies).ranking <= 3) { users.get(user_num).movies.remove(usermovies); usermovies--; } } } MINSUP *= num_users; MINCONF *= 10; System.out.println(MINSUP); System.out.println(MINCONF); ArrayList<Movie> users_movies = new ArrayList<Movie>(); Hashtable table = new Hashtable(); Hashtable master_table = new Hashtable(); for (int i = 1; i <= num_users; i++) { for (int k = 0; k < users.get(i).movies.size(); k++) { ArrayList<Integer> add = new ArrayList<Integer>(); add.add(users.get(i).movies.get(k).movieID); // System.out.println(users.get(i).movies.get(k).movieID+ " is the current movie from user // "+i); // if(users.get(i).movies.get(k).ranking>3){ if (table.containsKey(add)) { int table_value = (Integer) table.get(add); table_value++; table.put(add, table_value); // System.out.println("added 1 to the existing"); } else { table.put(add, 1); // System.out.println("added a new"); } // } } } System.out.println(table); Iterator final_iter = table.keySet().iterator(); while (final_iter.hasNext()) { ArrayList<Integer> next = (ArrayList<Integer>) final_iter.next(); // System.out.println(t.get(next)); // System.out.println(MINSUP); if ((Integer) table.get(next) < MINSUP) { // System.out.println("hi"); final_iter.remove(); } } // System.out.println(table); master_table.putAll(table); // System.out.println(master_table); for (int i = 2; i <= MAXMOVIES; i++) { table = find_combos(table, users, i); // System.out.println("table generated is "+table); if (!table.isEmpty()) { master_table.putAll(table); } // System.out.println(master_table); } // System.out.println(master_table+" is before print_up"); printup(master_table); } if (test.equals("neg")) { for (int user_num = 1; user_num < num_users + 1; user_num++) { for (int usermovies = 0; usermovies < users.get(user_num).movies.size(); usermovies++) { if (users.get(user_num).movies.get(usermovies).ranking >= 3) { users.get(user_num).movies.remove(usermovies); usermovies--; } } } MINSUP *= num_users; MINCONF *= 10; ArrayList<Movie> users_movies = new ArrayList<Movie>(); Hashtable table = new Hashtable(); Hashtable master_table = new Hashtable(); for (int i = 1; i <= num_users; i++) { for (int k = 0; k < users.get(i).movies.size(); k++) { ArrayList<Integer> add = new ArrayList<Integer>(); add.add(users.get(i).movies.get(k).movieID); // System.out.println(users.get(i).movies.get(k).movieID+ " is the current movie from user // "+i); // if(users.get(i).movies.get(k).ranking>3){ if (table.containsKey(add)) { int table_value = (Integer) table.get(add); table_value++; table.put(add, table_value); // System.out.println("added 1 to the existing"); } else { table.put(add, 1); // System.out.println("added a new"); } // } } } // System.out.println(table); Iterator final_iter = table.keySet().iterator(); while (final_iter.hasNext()) { ArrayList<Integer> next = (ArrayList<Integer>) final_iter.next(); // System.out.println(t.get(next)); // System.out.println(MINSUP); if ((Integer) table.get(next) < MINSUP) { // System.out.println("hi"); final_iter.remove(); } } // System.out.println(table); master_table.putAll(table); // System.out.println(master_table); for (int i = 2; i <= MAXMOVIES; i++) { table = find_combos(table, users, i); if (!table.isEmpty()) { master_table.putAll(table); } } // System.out.println(master_table+" is before print_up"); printup(master_table); } if (test.equals("comb")) { for (int user_num = 1; user_num < num_users + 1; user_num++) { for (int usermovies = 0; usermovies < users.get(user_num).movies.size(); usermovies++) { if (users.get(user_num).movies.get(usermovies).ranking >= 3) { users.get(user_num).movies.remove(usermovies); usermovies--; } } } MINSUP *= num_users; MINCONF *= 10; ArrayList<Movie> users_movies = new ArrayList<Movie>(); Hashtable table = new Hashtable(); Hashtable master_table = new Hashtable(); for (int i = 1; i <= num_users; i++) { for (int k = 0; k < users.get(i).movies.size(); k++) { ArrayList<Integer> add = new ArrayList<Integer>(); add.add(users.get(i).movies.get(k).movieID); // System.out.println(users.get(i).movies.get(k).movieID+ " is the current movie from user // "+i); // if(users.get(i).movies.get(k).ranking>3){ if (table.containsKey(add)) { int table_value = (Integer) table.get(add); table_value++; table.put(add, table_value); // System.out.println("added 1 to the existing"); } else { table.put(add, 1); // System.out.println("added a new"); } // } } } // System.out.println(table); Iterator final_iter = table.keySet().iterator(); while (final_iter.hasNext()) { ArrayList<Integer> next = (ArrayList<Integer>) final_iter.next(); // System.out.println(t.get(next)); // System.out.println(MINSUP); if ((Integer) table.get(next) < MINSUP) { // System.out.println("hi"); final_iter.remove(); } } // System.out.println(table); master_table.putAll(table); // System.out.println(master_table); for (int i = 2; i <= MAXMOVIES; i++) { table = find_combos(table, users, i); if (!table.isEmpty()) { master_table.putAll(table); } } // System.out.println(master_table+" is before print_up"); test = "neg"; printup(master_table); test = "comb2"; } if (test.equals("comb2")) { users = new ArrayList<User>(Collections.nCopies(945, blank)); user_exists = new int[945]; num_users = 0; try { FileInputStream fstream = new FileInputStream("src/u.data"); // location of file in eclipse DataInputStream in = new DataInputStream(fstream); BufferedReader br = new BufferedReader(new InputStreamReader(in)); String strLine; while ((strLine = br.readLine()) != null) { StringTokenizer tok = new StringTokenizer(strLine); String ID = tok.nextToken(); int userID = Integer.parseInt(ID); String MID = tok.nextToken(); int movieID = Integer.parseInt(MID); String RANK = tok.nextToken(); int movieRating = Integer.parseInt(RANK); Movie current_movie = new Movie(movieID, movieRating); if (user_exists[userID] == 0) { num_users++; users.set(userID, new User(userID, movieID, movieRating)); user_exists[userID] = 1; } else { users.get(userID).movies.add(current_movie); } } in.close(); } catch (Exception e) { if (e.getMessage() != null) { System.err.println("Error: " + e.getMessage()); } } try { FileInputStream fstream = new FileInputStream("src/u.item"); // location of file in eclipse DataInputStream in = new DataInputStream(fstream); BufferedReader br = new BufferedReader(new InputStreamReader(in)); String strLine; while ((strLine = br.readLine()) != null) { movie_number++; StringTokenizer tok = new StringTokenizer(strLine, "|"); String number = tok.nextToken(); int movieNumber = Integer.parseInt(number); String movieName = tok.nextToken(); for (int i = 0; i < users.size(); i++) { for (int j = 0; j < users.get(i).movies.size(); j++) { if (users.get(i).movies.get(j).movieID == movieNumber) { users.get(i).movies.get(j).setName(movieName); } } } } in.close(); } catch (Exception j) { System.err.println("Error: " + j.getMessage()); } for (int user_num = 1; user_num < num_users + 1; user_num++) { for (int usermovies = 0; usermovies < users.get(user_num).movies.size(); usermovies++) { if (users.get(user_num).movies.get(usermovies).ranking <= 3) { users.get(user_num).movies.remove(usermovies); usermovies--; } } } ArrayList<Movie> users_movies = new ArrayList<Movie>(); Hashtable table = new Hashtable(); Hashtable master_table = new Hashtable(); for (int i = 1; i <= num_users; i++) { for (int k = 0; k < users.get(i).movies.size(); k++) { ArrayList<Integer> add = new ArrayList<Integer>(); add.add(users.get(i).movies.get(k).movieID); // System.out.println(users.get(i).movies.get(k).movieID+ " is the current movie from user // "+i); if (table.containsKey(add)) { int table_value = (Integer) table.get(add); table_value++; table.put(add, table_value); // System.out.println("added 1 to the existing"); } else { table.put(add, 1); // System.out.println("added a new"); } // } } } // System.out.println(table); Iterator final_iter = table.keySet().iterator(); while (final_iter.hasNext()) { ArrayList<Integer> next = (ArrayList<Integer>) final_iter.next(); // System.out.println(t.get(next)); // System.out.println(MINSUP); if ((Integer) table.get(next) < MINSUP) { // System.out.println("hi"); final_iter.remove(); } } // System.out.println(table); master_table.putAll(table); // System.out.println(master_table); for (int i = 2; i < MAXMOVIES; i++) { table = find_combos(table, users, i); if (!table.isEmpty()) { master_table.putAll(table); } } // System.out.println(master_table+" is before print_up"); test = "pos"; printup(master_table); } }
private void createData(int size, String outputFilename) { int command; int userId; int gameCount = 1; Random randomNum = new Random(); File outputFile = new File(outputFilename); PrintWriter writer = null; JSONObject jObj = null; userIds = new boolean[max_users + 1]; gameRecord = new Hashtable<Integer, GameInfo>(); try { writer = new PrintWriter(new FileWriter(outputFile)); } catch (IOException e) { System.out.println("Could not create file " + outputFilename); } writer.write("[\n"); for (int i = 0; i < size; i++) { if (gameRecord.isEmpty()) { jObj = createNewUser(gameCount++); } else if (gameRecord.size() == max_users) { jObj = endGame(gameCount); } else { command = randomNum.nextInt(14); switch (command) { case 0: jObj = createNewUser(gameCount++); break; case 1: case 2: case 3: case 4: case 5: case 6: case 7: case 8: jObj = moveUser(gameCount); break; case 9: case 10: case 11: case 12: jObj = specialMove(gameCount); break; case 13: jObj = endGame(gameCount); break; } } printObj(jObj, writer); if (i != (size - 1)) { writer.write(",\n"); } else { writer.write("\n"); } } writer.write("]"); writer.close(); }
/** Teste si l'ensemble est vide. */ public boolean estVide() { return table.isEmpty(); }