com.javageeks.classloader
Class SocketClassLoader

java.lang.Object
  |
  +--java.lang.ClassLoader
        |
        +--com.javageeks.classloader.SocketClassLoader
All Implemented Interfaces:
ClassLoaderStrategy, java.io.Serializable

public class SocketClassLoader
extends java.lang.ClassLoader
implements ClassLoaderStrategy

SocketClassLoader retrieves bytecode for a given class via a HTTP-like protocol.

See Also:
Serialized Form

Constructor Summary
SocketClassLoader(java.lang.ClassLoader parent, java.lang.String host, int port)
          Constructor.
SocketClassLoader(java.lang.String host, int port)
          Constructor.
 
Method Summary
 java.lang.Class findClass(java.lang.String className)
          ClassLoader-overridden method to retrive teh bytes
 byte[] findClassBytes(java.lang.String className)
          Return byte array (which will be turned into a Class instance via ClassLoader.defineClass) for class
 java.lang.String findLibraryPath(java.lang.String libraryName)
          Return full path to native library given by the name libraryName.
 java.util.Enumeration findResourcesEnum(java.lang.String resourceName)
          Return Enumeration of resources corresponding to resourceName.
 java.net.URL findResourceURL(java.lang.String resourceName)
          Return URL for resource given by resourceName
static void main(java.lang.String[] args)
           
 
Methods inherited from class java.lang.ClassLoader
defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findResource, findResources, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, loadClass, resolveClass, setSigners
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SocketClassLoader

public SocketClassLoader(java.lang.String host,
                         int port)
Constructor.
Parameters:
host - TCP/IP host name to contact
port - TCP/IP port to contact host on

SocketClassLoader

public SocketClassLoader(java.lang.ClassLoader parent,
                         java.lang.String host,
                         int port)
Constructor.
Parameters:
host - TCP/IP host name to contact
port - TCP/IP port to contact host on
Method Detail

findClassBytes

public byte[] findClassBytes(java.lang.String className)
Return byte array (which will be turned into a Class instance via ClassLoader.defineClass) for class
Specified by:
findClassBytes in interface ClassLoaderStrategy

findResourceURL

public java.net.URL findResourceURL(java.lang.String resourceName)
Return URL for resource given by resourceName
Specified by:
findResourceURL in interface ClassLoaderStrategy

findResourcesEnum

public java.util.Enumeration findResourcesEnum(java.lang.String resourceName)
Return Enumeration of resources corresponding to resourceName.
Specified by:
findResourcesEnum in interface ClassLoaderStrategy

findLibraryPath

public java.lang.String findLibraryPath(java.lang.String libraryName)
Return full path to native library given by the name libraryName.
Specified by:
findLibraryPath in interface ClassLoaderStrategy

findClass

public java.lang.Class findClass(java.lang.String className)
                          throws java.lang.ClassNotFoundException
ClassLoader-overridden method to retrive teh bytes
Overrides:
findClass in class java.lang.ClassLoader

main

public static void main(java.lang.String[] args)
                 throws java.lang.Exception