Example #1
0
 @SuppressWarnings({"rawtypes", "unchecked"})
 private LinkedHashMap computePersonFreq(LinkedHashMap map) {
   if (map == null) return null;
   ArrayList<PersonFrequency> values;
   ArrayList ev;
   LinkedHashMap res = new LinkedHashMap<Object, ArrayList<PersonFrequency>>(map.size(), 1);
   Entry e;
   Set<Entry> es = map.entrySet();
   Iterator<Entry> esit = es.iterator();
   Iterator<Commit> evit;
   PersonFrequency p;
   long pTs;
   Commit c;
   int i;
   while (esit.hasNext()) {
     e = esit.next();
     ev = (ArrayList) e.getValue();
     evit = ev.iterator();
     values = new ArrayList<PersonFrequency>(ev.size());
     while (evit.hasNext()) {
       c = evit.next();
       pTs = c.getCommittingInfo().getWhen().getTime();
       i = Collections.binarySearch(allAuthors, c.getAuthoringInfo());
       p = new PersonFrequency(i);
       i = GitWorks.addUnique(values, p);
       p = values.get(i);
       p.freq++;
       if (p.since > pTs) p.since = pTs;
       if (p.until < pTs) p.until = pTs;
     }
     values.trimToSize();
     res.put(e.getKey(), values);
   }
   return res;
 }
Example #2
0
 @SuppressWarnings({"rawtypes", "unchecked"})
 private LinkedHashMap importMap(ObjectInput in) throws IOException {
   int j, i, size, vsize, keyType, valueType;
   PersonFrequency p;
   size = in.readInt();
   if (size == 0) {
     return null;
   }
   keyType = in.readInt();
   valueType = in.readInt();
   LinkedHashMap res = new LinkedHashMap(size, 1);
   ArrayList values;
   for (i = 0; i < size; i++) {
     vsize = in.readInt();
     values = new ArrayList(vsize);
     switch (valueType) {
       case 0:
         for (j = 0; j < vsize; j++) {
           values.add(allCommits.get(in.readInt()));
         }
         break;
       case 1:
         for (j = 0; j < vsize; j++) {
           values.add(allBranches.get(in.readInt()));
         }
         break;
       default:
         for (j = 0; j < vsize; j++) {
           p = new PersonFrequency(in.readInt());
           p.freq = in.readInt();
           p.since = in.readLong();
           p.until = in.readLong();
           values.add(p);
         }
     }
     switch (keyType) {
       case 0:
         res.put(allCommits.get(in.readInt()), values);
         break;
       case 1:
         res.put(in.readUTF(), values);
     }
   }
   return res;
 }