private boolean tryLoadFile(final File file, final Buffer buffer) { if (LOG.isLoggable(Level.FINER)) { LOG.finer("Probing for file: " + file.getAbsolutePath() + "..."); } if (!file.exists() || file.isDirectory()) { return false; } try (final FileInputStream in = new FileInputStream(file)) { int remainingBytes = in.available(); buffer.position(0); buffer.reset(remainingBytes); while (remainingBytes > 0) { final int bytesRead = in.read(buffer.array(), buffer.position(), remainingBytes); if (bytesRead < 0) { break; } remainingBytes -= bytesRead; buffer.advance(bytesRead); } buffer.position(0); return true; } catch (IOException e) { return false; } }
private boolean tryLoadFile(final File file, final Buffer buffer) { if (LOG.isLoggable(Level.FINER)) { LOG.finer("Probing for file: " + file.getAbsolutePath() + "..."); } if (!file.exists() || file.isDirectory()) { return false; } try (final FileInputStream in = new FileInputStream(file)) { int remainingBytes = in.available(); buffer.position(0); buffer.reset(remainingBytes); while (remainingBytes > 0) { final int bytesRead = in.read(buffer.array(), buffer.position(), remainingBytes); if (bytesRead < 0) { break; } remainingBytes -= bytesRead; buffer.advance(bytesRead); } buffer.position(0); return true; } catch (IOException e) { return false; } }
private boolean tryLoadFile(final File file, final Buffer buffer) { if (LOG.isLoggable(Level.FINER)) { LOG.finer("Probing for file: " + file.getAbsolutePath() + "..."); } if (!file.exists() || file.isDirectory()) { return false; } try (final FileInputStream in = new FileInputStream(file)) { int remainingBytes = in.available(); buffer.position(0); buffer.reset(remainingBytes); while (remainingBytes > 0) { final int bytesRead = in.read(buffer.array(), buffer.position(), remainingBytes); if (bytesRead < 0) { break; } remainingBytes -= bytesRead; buffer.advance(bytesRead); } buffer.position(0); return true; } catch (IOException e) { return false; } }
private static String getInternalNameFromClassFile(final Buffer b) { final long magic = b.readInt() & 0xFFFFFFFFL; if (magic != 0xCAFEBABEL) { throw new IllegalStateException("Bad magic number: 0x" + Long.toHexString(magic)); } b.readUnsignedShort(); // minor version b.readUnsignedShort(); // major version final ConstantPool constantPool = ConstantPool.read(b); b.readUnsignedShort(); // access flags final ConstantPool.TypeInfoEntry thisClass = constantPool.getEntry(b.readUnsignedShort()); b.position(0); return thisClass.getName(); } }
private static String getInternalNameFromClassFile(final Buffer b) { final long magic = b.readInt() & 0xFFFFFFFFL; if (magic != 0xCAFEBABEL) { throw new IllegalStateException("Bad magic number: 0x" + Long.toHexString(magic)); } b.readUnsignedShort(); // minor version b.readUnsignedShort(); // major version final ConstantPool constantPool = ConstantPool.read(b); b.readUnsignedShort(); // access flags final ConstantPool.TypeInfoEntry thisClass = constantPool.getEntry(b.readUnsignedShort()); b.position(0); return thisClass.getName(); } }
private static String getInternalNameFromClassFile(final Buffer b) { final long magic = b.readInt() & 0xFFFFFFFFL; if (magic != 0xCAFEBABEL) { throw new IllegalStateException("Bad magic number: 0x" + Long.toHexString(magic)); } b.readUnsignedShort(); // minor version b.readUnsignedShort(); // major version final ConstantPool constantPool = ConstantPool.read(b); b.readUnsignedShort(); // access flags final ConstantPool.TypeInfoEntry thisClass = constantPool.getEntry(b.readUnsignedShort()); b.position(0); return thisClass.getName(); } }
@Override public boolean tryLoadType(final String internalName, final Buffer buffer) { ensureParsed(false); if (StringUtilities.equals(internalName, _className)) { buffer.reset(_buffer.size()); buffer.putByteArray(_buffer.array(), 0, _buffer.size()); buffer.position(0); return true; } return false; }
@Override public boolean tryLoadType(final String internalName, final Buffer buffer) { ensureParsed(false); if (StringUtilities.equals(internalName, _className)) { buffer.reset(_buffer.size()); buffer.putByteArray(_buffer.array(), 0, _buffer.size()); buffer.position(0); return true; } return false; }
@Override public boolean tryLoadType(final String internalName, final Buffer buffer) { ensureParsed(false); if (StringUtilities.equals(internalName, _className)) { buffer.reset(_buffer.size()); buffer.putByteArray(_buffer.array(), 0, _buffer.size()); buffer.position(0); return true; } return false; }
private static String getInternalNameFromClassFile(final Buffer b) { final long magic = b.readInt() & 0xFFFFFFFFL; if (magic != 0xCAFEBABEL) { return null; } b.readUnsignedShort(); // minor version b.readUnsignedShort(); // major version final ConstantPool constantPool = ConstantPool.read(b); b.readUnsignedShort(); // access flags final ConstantPool.TypeInfoEntry thisClass = constantPool.getEntry(b.readUnsignedShort()); b.position(0); return thisClass.getName(); } }
private static String getInternalNameFromClassFile(final Buffer b) { final long magic = b.readInt() & 0xFFFFFFFFL; if (magic != 0xCAFEBABEL) { return null; } b.readUnsignedShort(); // minor version b.readUnsignedShort(); // major version final ConstantPool constantPool = ConstantPool.read(b); b.readUnsignedShort(); // access flags final ConstantPool.TypeInfoEntry thisClass = constantPool.getEntry(b.readUnsignedShort()); b.position(0); return thisClass.getName(); } }
private static String getInternalNameFromClassFile(final Buffer b) { final long magic = b.readInt() & 0xFFFFFFFFL; if (magic != 0xCAFEBABEL) { return null; } b.readUnsignedShort(); // minor version b.readUnsignedShort(); // major version final ConstantPool constantPool = ConstantPool.read(b); b.readUnsignedShort(); // access flags final ConstantPool.TypeInfoEntry thisClass = constantPool.getEntry(b.readUnsignedShort()); b.position(0); return thisClass.getName(); } }
private static String getInternalNameFromClassFile(final Buffer b) { final long magic = b.readInt() & 0xFFFFFFFFL; if (magic != 0xCAFEBABEL) { return null; } b.readUnsignedShort(); // minor version b.readUnsignedShort(); // major version final ConstantPool constantPool = ConstantPool.read(b); b.readUnsignedShort(); // access flags final ConstantPool.TypeInfoEntry thisClass = constantPool.getEntry(b.readUnsignedShort()); b.position(0); return thisClass.getName(); } }
private static String getInternalNameFromClassFile(final Buffer b) { final long magic = b.readInt() & 0xFFFFFFFFL; if (magic != 0xCAFEBABEL) { return null; } b.readUnsignedShort(); // minor version b.readUnsignedShort(); // major version final ConstantPool constantPool = ConstantPool.read(b); b.readUnsignedShort(); // access flags final ConstantPool.TypeInfoEntry thisClass = constantPool.getEntry(b.readUnsignedShort()); b.position(0); return thisClass.getName(); } }
private static String getInternalNameFromClassFile(final Buffer b) { final long magic = b.readInt() & 0xFFFFFFFFL; if (magic != 0xCAFEBABEL) { return null; } b.readUnsignedShort(); // minor version b.readUnsignedShort(); // major version final ConstantPool constantPool = ConstantPool.read(b); b.readUnsignedShort(); // access flags final ConstantPool.TypeInfoEntry thisClass = constantPool.getEntry(b.readUnsignedShort()); b.position(0); return thisClass.getName(); } }
private static String getInternalNameFromClassFile(final Buffer b) { final long magic = b.readInt() & 0xFFFFFFFFL; if (magic != 0xCAFEBABEL) { return null; } b.readUnsignedShort(); // minor version b.readUnsignedShort(); // major version final ConstantPool constantPool = ConstantPool.read(b); b.readUnsignedShort(); // access flags final ConstantPool.TypeInfoEntry thisClass = constantPool.getEntry(b.readUnsignedShort()); b.position(0); return thisClass.getName(); } }
private static String getInternalNameFromClassFile(final Buffer b) { final long magic = b.readInt() & 0xFFFFFFFFL; if (magic != 0xCAFEBABEL) { return null; } b.readUnsignedShort(); // minor version b.readUnsignedShort(); // major version final ConstantPool constantPool = ConstantPool.read(b); b.readUnsignedShort(); // access flags final ConstantPool.TypeInfoEntry thisClass = constantPool.getEntry(b.readUnsignedShort()); b.position(0); return thisClass.getName(); } }