java.lang.Object
org.codehaus.mojo.extraenforcer.dependencies.ClassFile

public class ClassFile extends Object
This class represents a binary class file. The path to the class file should be a relative, file system path to the actual file. Examples: - CORRECT: org/apache/maven/Stuff.class - NO: /org/apache/maven/Stuff.class - NO: org.apache.maven.Stuff - NO: maven.jar!org.apache.maven.Stuff - NO: maven.jar!/org/apache/maven/Stuff.class - NO: /path/to/some/directory/org.apache.maven.Stuff - NO: /path/to/some/directory/org/apache/maven/Stuff.class The file must exist in either a directory or a jar file, but the path of the directory/jar is not included in the class file path. Rather, it's included in the Artifact. See Artifact.getFile()
  • Constructor Details

    • ClassFile

      public ClassFile(String classFilePath, org.apache.maven.artifact.Artifact artifactThisClassWasFoundIn, InputStreamSupplier inputStreamSupplier) throws IOException
      Constructor.
      Parameters:
      classFilePath - path to the class file. Example: org/apache/maven/Stuff.class
      artifactThisClassWasFoundIn - the maven artifact the class appeared in (example: a jar file)
      inputStreamSupplier - a supplier for class content input stream
      Throws:
      IOException
  • Method Details

    • getClassFilePath

      public String getClassFilePath()
      Returns:
      the path to the .class file. Example: org/apache/maven/Stuff.class
    • getArtifactThisClassWasFoundIn

      public org.apache.maven.artifact.Artifact getArtifactThisClassWasFoundIn()
      Returns:
      the maven artifact the class appeared in (example: a jar file)
    • getHash

      public String getHash()
      Returns:
      a hash or checksum of the binary file. If two files have the same hash then they are the same binary file.