Add injector/mapper main classes/entrypoints. Maybe should make those tests use these?

This commit is contained in:
Adam
2016-04-01 23:59:40 -04:00
parent fb31ccecff
commit f5130c1a98
2 changed files with 90 additions and 0 deletions

View File

@@ -0,0 +1,42 @@
package net.runelite.deob.updater;
import java.io.File;
import java.io.IOException;
import net.runelite.asm.ClassGroup;
import net.runelite.deob.injection.Inject;
import net.runelite.deob.util.JarUtil;
public class UpdateInject
{
private final ClassGroup deobfuscated, vanilla;
public UpdateInject(ClassGroup deobfuscated, ClassGroup vanilla)
{
this.deobfuscated = deobfuscated;
this.vanilla = vanilla;
}
public void inject()
{
Inject instance = new Inject(deobfuscated, vanilla);
instance.run();
}
public void save(File out) throws IOException
{
JarUtil.saveJar(vanilla, out);
}
public static void main(String[] args) throws IOException
{
if (args.length < 3)
System.exit(-1);
UpdateInject u = new UpdateInject(
JarUtil.loadJar(new File(args[0])),
JarUtil.loadJar(new File(args[1]))
);
u.inject();
u.save(new File(args[2]));
}
}

View File

@@ -0,0 +1,48 @@
package net.runelite.deob.updater;
import java.io.File;
import java.io.IOException;
import net.runelite.asm.ClassGroup;
import net.runelite.deob.deobfuscators.rename.AnnotationMapper;
import net.runelite.deob.deobfuscators.rename.Mapper;
import net.runelite.deob.deobfuscators.rename.ParallelExecutorMapping;
import net.runelite.deob.util.JarUtil;
public class UpdateMappings
{
private final ClassGroup group1, group2;
public UpdateMappings(ClassGroup group1, ClassGroup group2)
{
this.group1 = group1;
this.group2 = group2;
}
public void update()
{
Mapper mapper = new Mapper(group1, group2);
mapper.run();
ParallelExecutorMapping mapping = mapper.getMapping();
AnnotationMapper amapper = new AnnotationMapper(group1, group2, mapping);
amapper.run();
}
public void save(File out) throws IOException
{
JarUtil.saveJar(group2, out);
}
public static void main(String[] args) throws IOException
{
if (args.length < 3)
System.exit(-1);
UpdateMappings u = new UpdateMappings(
JarUtil.loadJar(new File(args[0])),
JarUtil.loadJar(new File(args[1]))
);
u.update();
u.save(new File(args[2]));
}
}