| 1 package edu.umd.cs.findbugs.classfile.impl; 2 3 import java.io.IOException ; 4 import java.io.InputStream ; 5 6 import edu.umd.cs.findbugs.classfile.ClassDescriptor; 7 import edu.umd.cs.findbugs.classfile.ICodeBase; 8 import edu.umd.cs.findbugs.classfile.ICodeBaseEntry; 9 import edu.umd.cs.findbugs.classfile.InvalidClassFileFormatException; 10 import edu.umd.cs.findbugs.classfile.ResourceNotFoundException; 11 12 17 public class SingleFileCodeBaseEntry implements ICodeBaseEntry { 18 private final SingleFileCodeBase codeBase; 19 20 25 public SingleFileCodeBaseEntry(SingleFileCodeBase codeBase) { 26 this.codeBase = codeBase; 27 } 28 29 32 public int getNumBytes() { 33 return codeBase.getNumBytes(); 34 } 35 36 39 public String getResourceName() { 40 return codeBase.getResourceName(); 41 } 42 43 46 public InputStream openResource() throws IOException { 47 return codeBase.openFile(); 48 } 49 50 53 public ICodeBase getCodeBase() { 54 return codeBase; 55 } 56 57 60 public ClassDescriptor getClassDescriptor() throws ResourceNotFoundException, InvalidClassFileFormatException { 61 return codeBase.getClassDescriptor(); 62 } 63 64 67 public void overrideResourceName(String resourceName) { 68 } 70 71 74 @Override  75 public boolean equals(Object obj) { 76 if (obj == null || obj.getClass() != this.getClass()) { 77 return false; 78 } 79 SingleFileCodeBaseEntry other = (SingleFileCodeBaseEntry) obj; 80 return other.codeBase.equals(this.codeBase); 81 } 82 83 86 @Override  87 public int hashCode() { 88 return codeBase.hashCode(); 89 } 90 91 94 @Override  95 public String toString() { 96 return codeBase.getPathName(); 97 } 98 } 99 | Popular Tags |