Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public HashMap<Long, ArrayList<HashMap<Integer, ArrayList<HashMap<String, String>>>>> loadRecords(String recordname) {
- // Tick / (list: (entityid, action))
- HashMap<Long, ArrayList<HashMap<Integer, ArrayList<HashMap<String, String>>>>> entries = new HashMap<Long, ArrayList<HashMap<Integer, ArrayList<HashMap<String, String>>>>>();
- Iterator it = FileUtils.iterateFiles(new File(FileUtil.formatPath("records/" + recordname)), null, false);
- while (it.hasNext()) {
- File f = (File) it.next();
- System.out.println("Proccessing " + f.getName() + "...");
- LineIterator lit;
- try {
- // Integer.parseInt(f.getName()) - Entity ID
- // line.replace(commarr[0] + "/", "") - action
- lit = FileUtils.lineIterator(f, "UTF-8");
- try {
- while (lit.hasNext()) {
- String line = lit.nextLine();
- // Parse line!
- String[] commarr = line.split("/");
- if (entries.containsKey(Long.parseLong(commarr[0]))) {
- ArrayList<HashMap<Integer, ArrayList<HashMap<String, String>>>> actionlist = entries.get(Long.parseLong(commarr[0]));
- ArrayList<HashMap<Integer, ArrayList<HashMap<String, String>>>> newactionlist = new ArrayList<HashMap<Integer, ArrayList<HashMap<String, String>>>>();
- for(HashMap<Integer, ArrayList<HashMap<String, String>>> map : actionlist) {
- ArrayList<HashMap<String, String>> entitylist;
- if(map.containsKey(Integer.parseInt(f.getName()))) {
- entitylist = map.get(Integer.parseInt(f.getName()));
- } else {
- entitylist = new ArrayList<HashMap<String, String>>();
- }
- HashMap<String, String> curaction = new HashMap<String, String>();
- String[] commargs = line.replace(commarr[0] + "/", "").split("/");
- String key = commargs[0];
- String value = line.replace(commarr[0] + "/" + commargs[0] + "/", "");
- curaction.put(key, value);
- entitylist.add(curaction);
- map.put(Integer.parseInt(f.getName()), entitylist);
- newactionlist.add(map);
- }
- } else {
- ArrayList<HashMap<Integer, ArrayList<HashMap<String, String>>>> actionlist = new ArrayList<HashMap<Integer, ArrayList<HashMap<String, String>>>>();
- HashMap<Integer, ArrayList<HashMap<String, String>>> map = new HashMap<Integer, ArrayList<HashMap<String, String>>>();
- String[] commargs = line.replace(commarr[0] + "/", "").split("/");
- String key = commargs[0];
- String value = line.replace(commarr[0] + "/" + commargs[0] + "/", "");
- ArrayList<HashMap<String, String>> actionslist = new ArrayList<HashMap<String, String>>();
- HashMap<String, String> actionsmap = new HashMap<String, String>();
- actionsmap.put(key, value);
- actionslist.add(actionsmap);
- map.put(Integer.parseInt(f.getName()), actionslist);
- actionlist.add(map);
- entries.put(Long.parseLong(commarr[0]), actionlist);
- }
- }
- } finally {
- lit.close();
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- System.out.println(nicegson.toJson(entries));
- return entries;
- }
Advertisement
Add Comment
Please, Sign In to add comment