Skip to content

Commit f70dbbb

Browse files
author
NatureFreshMeat
committed
Added ClassToJson converter
1 parent 0d0a233 commit f70dbbb

File tree

2 files changed

+106
-0
lines changed

2 files changed

+106
-0
lines changed
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
package ch.ri.jsjvm.utils;
2+
3+
import java.io.IOException;
4+
import java.lang.reflect.Method;
5+
import java.net.URL;
6+
import java.util.Enumeration;
7+
8+
public class ClassToJson
9+
{
10+
11+
public static void main(String[] args) throws Exception
12+
{
13+
14+
ClassConverterLoader loader = new ClassConverterLoader();
15+
Class<?> class1 = loader.loadClass( TestClass.class.getName() );
16+
Method method = class1.getMethod("main", String[].class);
17+
method.invoke(null, new Object[]{null});
18+
}
19+
20+
21+
public static class ClassConverterLoader extends ClassLoader
22+
{
23+
24+
25+
@Override
26+
public Enumeration<URL> getResources(String name) throws IOException
27+
{
28+
System.out.println("getResources: " + name);
29+
return super.getResources(name);
30+
}
31+
32+
@Override
33+
public Class<?> findClass(String name) throws ClassNotFoundException
34+
{
35+
System.out.println("findClass: " + name);
36+
return super.findClass(name);
37+
}
38+
39+
@Override
40+
public Class<?> loadClass(String name) throws ClassNotFoundException
41+
{
42+
System.out.println("loadClass: " + name);
43+
return super.loadClass(name);
44+
}
45+
46+
@Override
47+
protected URL findResource(String name)
48+
{
49+
System.out.println("findResource: " + name);
50+
return super.findResource(name);
51+
}
52+
53+
@Override
54+
protected String findLibrary(String libname)
55+
{
56+
System.out.println("findLibrary: " + libname);
57+
return super.findLibrary(libname);
58+
}
59+
60+
@Override
61+
protected Class<?> loadClass(String name, boolean resolve)
62+
throws ClassNotFoundException
63+
{
64+
System.out.println("loadClass: " + name + "," + resolve);
65+
return super.loadClass(name, resolve);
66+
}
67+
68+
@Override
69+
public URL getResource(String name)
70+
{
71+
System.out.println("getResource" + name);
72+
return super.getResource(name);
73+
}
74+
75+
}
76+
77+
}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package ch.ri.jsjvm.utils;
2+
3+
import java.util.Date;
4+
import java.util.Vector;
5+
6+
public class TestClass
7+
{
8+
static
9+
{
10+
Date d = new Date();
11+
d.getTime();
12+
13+
Vector<String> x = new Vector<String>();
14+
x.clear();
15+
16+
System.out.println("Loaded");
17+
}
18+
19+
/**
20+
* @param args
21+
*/
22+
public static void main(String[] args)
23+
{
24+
System.out.println("main");
25+
date = new Date();
26+
}
27+
28+
public static Date date;
29+
}

0 commit comments

Comments
 (0)