All Downloads are FREE. Search and download functionalities are using the official Maven repository.

xapi.dev.resource.impl.ByteCodeResource Maven / Gradle / Ivy

Go to download

Everything needed to run a comprehensive dev environment. Just type X_ and pick a service from autocomplete; new dev modules will be added as they are built. The only dev service not included in the uber jar is xapi-dev-maven, as it includes all runtime dependencies of maven, adding ~4 seconds to build time, and 6 megabytes to the final output jar size (without xapi-dev-maven, it's ~1MB).

The newest version!
package xapi.dev.resource.impl;

import java.io.DataInputStream;
import java.io.IOException;

import xapi.bytecode.ClassFile;
import xapi.dev.resource.api.ClasspathResource;
import xapi.util.X_Util;

public class ByteCodeResource extends DelegateClasspathResource{

  private ClassFile data;

  public ByteCodeResource(ClasspathResource source) {
    super(source);
  }

  public ClassFile getClassData() {
    if (data == null) {
      try {
        DataInputStream in = new DataInputStream(open());
        try {
          data = new ClassFile(in);
        }finally {
          in.close();
        }
      } catch(IOException e) {
        throw X_Util.rethrow(e);
      }
    }
    return data;
  }
  
  public String toString() {
    return getClassData().getName();
  };
  
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy