Bläddra i källkod

mangler for some grepped XML. QnD

Tom Görner 2 år sedan
förälder
incheckning
19cb4875b1
1 ändrade filer med 86 tillägg och 0 borttagningar
  1. 86 0
      QuickStuff/src/main/java/QuickVerifyCrap/UTPackMangler.java

+ 86 - 0
QuickStuff/src/main/java/QuickVerifyCrap/UTPackMangler.java

@@ -0,0 +1,86 @@
+package QuickVerifyCrap;
+
+import java.io.*;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Set;
+
+public class UTPackMangler {
+    public static void main(String[] args) throws Exception{
+        try{
+        BufferedReader r = new BufferedReader(new FileReader("C:\\LMAA\\packs.dedup.txt.UE"));
+        String line = r.readLine();
+        long totalBytes = 0;
+        long totalCompressedbytes = 0;
+        long linesMangled = 0;
+        Set<String> remotepaths = new HashSet<>();
+        System.out.println("Mangling File...");
+        List<PackData> packs = new LinkedList<>();
+        while(line !=null)
+        {
+            String[] splitted = line.split("\"");
+            if(splitted.length<2)
+            {
+                System.out.println(line);
+            }
+            else
+            {
+            PackData p = new PackData();
+            p.hash = splitted[1];
+            p.remotepath = splitted[7];
+            int size = Integer.valueOf(splitted[3]);
+            int comppressedSize = Integer.valueOf(splitted[5]);
+            totalBytes += size;
+            totalCompressedbytes += comppressedSize;
+            p.size = size;
+            p.compressedSize= comppressedSize;
+
+            remotepaths.add(p.remotepath);
+            linesMangled++;
+            if(linesMangled%1000==0)
+            {
+                System.out.println("Mangled:"+linesMangled);
+            }
+            packs.add(p);
+            }
+            line = r.readLine();
+        }
+        PrintStream w = new PrintStream(new FileOutputStream("C:\\LMAA\\downloader.sh"));
+        w.println("#!/bin/bash");
+        w.println("echo Generating directories");
+        remotepaths.forEach((s)->
+        {
+            w.println("mkdir -p "+s);
+        });
+        w.println("echo Downloading....");
+        long totalMb = totalBytes/1024/1024;
+        long totalMbComp = totalCompressedbytes/1024/1024;
+
+        w.println("echo Total Size: "+ totalMb+ "Total Compressed Size" +totalMbComp);
+        System.out.println("echo Total Size: "+ totalMb+ "Total Compressed Size" +totalMbComp);
+        long progress = 0;
+        for(PackData p:packs)
+        {
+            String serverPath = "http://cdn.unrealengine.com/dependencies/"+p.remotepath+"/"+p.hash;
+            String downloadcmd = "wget -nc -qO ./"+p.remotepath+"/"+p.hash+" "+serverPath;
+            w.println(downloadcmd);
+            progress += p.compressedSize;
+            w.println("echo -ne \"Downloaded "+(progress/1024/1024)+" of" +totalMbComp+" MB\\r\"");
+
+        }
+        }
+        catch (Exception e)
+        {
+            e.printStackTrace();
+        }
+    }
+}
+
+class PackData
+{
+    int size;
+    int compressedSize;
+    String hash;
+    String remotepath;
+}