test_class.declarator: tempFolder = new TemporaryFolder()
test_class.modifier: @Rule
      public
test_class.original_string: @Rule
      public TemporaryFolder tempFolder = new TemporaryFolder();
test_class.type: TemporaryFolder
test_class.var_name: tempFolder
test_class.declarator: archiver
test_class.modifier: private
test_class.original_string: private TarGzArchiver archiver;
test_class.type: TarGzArchiver
test_class.var_name: archiver
test_class.declarator: tarGzArchive
test_class.modifier: private
test_class.original_string: private File tarGzArchive;
test_class.type: File
test_class.var_name: tarGzArchive
test_class.declarator: archiveRoot
test_class.modifier: private
test_class.original_string: private File archiveRoot;
test_class.type: File
test_class.var_name: archiveRoot
test_class.declarator: testPermissionsFile
test_class.modifier: private
test_class.original_string: private File testPermissionsFile;
test_class.type: File
test_class.var_name: testPermissionsFile
test_class.declarator: testOwnerAndGroupFile
test_class.modifier: private
test_class.original_string: private File testOwnerAndGroupFile;
test_class.type: File
test_class.var_name: testOwnerAndGroupFile
test_class.file: tycho-p2/tycho-p2-director-plugin/src/test/java/org/eclipse/tycho/plugins/tar/TarGzArchiverTest.java
test_class.identifier: TarGzArchiverTest
test_case.body: @Test
      public void testCreateArchivePermissionsPreserved() throws Exception {
          setPermissionsTo700();
          archiver.createArchive();
          assertEquals(0700, getTarEntries().get("dir2/testPermissions").getMode());
      }
test_case.class_method_signature: TarGzArchiverTest.testCreateArchivePermissionsPreserved()
test_case.full_signature: @Test public void testCreateArchivePermissionsPreserved()
test_case.identifier: testCreateArchivePermissionsPreserved
test_case.invocations: setPermissionsTo700 createArchive assertEquals getMode get getTarEntries
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testCreateArchivePermissionsPreserved()
focal_class.declarator: destFile
focal_class.modifier: private
focal_class.original_string: private File destFile;
focal_class.type: File
focal_class.var_name: destFile
focal_class.declarator: sourceDirs = new ArrayList<>()
focal_class.modifier: private
focal_class.original_string: private List<File> sourceDirs = new ArrayList<>();
focal_class.type: List<File>
focal_class.var_name: sourceDirs
focal_class.declarator: log = new SystemStreamLog()
focal_class.modifier: private
focal_class.original_string: private Log log = new SystemStreamLog();
focal_class.type: Log
focal_class.var_name: log
focal_class.file: tycho-p2/tycho-p2-director-plugin/src/main/java/org/eclipse/tycho/plugins/tar/TarGzArchiver.java
focal_class.identifier: TarGzArchiver
focal_class.class_method_signature: TarGzArchiver.TarGzArchiver()
focal_class.full_signature: public  TarGzArchiver()
focal_class.identifier: TarGzArchiver
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  TarGzArchiver()
focal_class.class_method_signature: TarGzArchiver.setLog(Log log)
focal_class.full_signature: public void setLog(Log log)
focal_class.identifier: setLog
focal_class.modifiers: public
focal_class.parameters: (Log log)
focal_class.return: void
focal_class.signature: void setLog(Log log)
focal_class.class_method_signature: TarGzArchiver.setDestFile(File destFile)
focal_class.full_signature: public void setDestFile(File destFile)
focal_class.identifier: setDestFile
focal_class.modifiers: public
focal_class.parameters: (File destFile)
focal_class.return: void
focal_class.signature: void setDestFile(File destFile)
focal_class.class_method_signature: TarGzArchiver.addDirectory(File directory)
focal_class.full_signature: public void addDirectory(File directory)
focal_class.identifier: addDirectory
focal_class.modifiers: public
focal_class.parameters: (File directory)
focal_class.return: void
focal_class.signature: void addDirectory(File directory)
focal_class.class_method_signature: TarGzArchiver.createArchive()
focal_class.full_signature: public void createArchive()
focal_class.identifier: createArchive
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void createArchive()
focal_class.class_method_signature: TarGzArchiver.validate()
focal_class.full_signature: private void validate()
focal_class.identifier: validate
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void validate()
focal_class.class_method_signature: TarGzArchiver.addToTarRecursively(File tarRootDir, File source, TarArchiveOutputStream tarStream)
focal_class.full_signature: private void addToTarRecursively(File tarRootDir, File source, TarArchiveOutputStream tarStream)
focal_class.identifier: addToTarRecursively
focal_class.modifiers: private
focal_class.parameters: (File tarRootDir, File source, TarArchiveOutputStream tarStream)
focal_class.return: void
focal_class.signature: void addToTarRecursively(File tarRootDir, File source, TarArchiveOutputStream tarStream)
focal_class.class_method_signature: TarGzArchiver.createTarEntry(File tarRootDir, File source)
focal_class.full_signature: private TarArchiveEntry createTarEntry(File tarRootDir, File source)
focal_class.identifier: createTarEntry
focal_class.modifiers: private
focal_class.parameters: (File tarRootDir, File source)
focal_class.return: TarArchiveEntry
focal_class.signature: TarArchiveEntry createTarEntry(File tarRootDir, File source)
focal_class.class_method_signature: TarGzArchiver.slashify(Path path)
focal_class.full_signature: private static String slashify(Path path)
focal_class.identifier: slashify
focal_class.modifiers: private static
focal_class.parameters: (Path path)
focal_class.return: String
focal_class.signature: String slashify(Path path)
focal_class.class_method_signature: TarGzArchiver.getAttributes(File source)
focal_class.full_signature: private PosixFileAttributes getAttributes(File source)
focal_class.identifier: getAttributes
focal_class.modifiers: private
focal_class.parameters: (File source)
focal_class.return: PosixFileAttributes
focal_class.signature: PosixFileAttributes getAttributes(File source)
focal_class.class_method_signature: TarGzArchiver.copyFileContentToTarStream(File source, TarArchiveOutputStream tarStream)
focal_class.full_signature: private static void copyFileContentToTarStream(File source, TarArchiveOutputStream tarStream)
focal_class.identifier: copyFileContentToTarStream
focal_class.modifiers: private static
focal_class.parameters: (File source, TarArchiveOutputStream tarStream)
focal_class.return: void
focal_class.signature: void copyFileContentToTarStream(File source, TarArchiveOutputStream tarStream)
focal_class.class_method_signature: TarGzArchiver.resolvesBelow(File source, File baseDir)
focal_class.full_signature: private boolean resolvesBelow(File source, File baseDir)
focal_class.identifier: resolvesBelow
focal_class.modifiers: private
focal_class.parameters: (File source, File baseDir)
focal_class.return: boolean
focal_class.signature: boolean resolvesBelow(File source, File baseDir)
focal_class.class_method_signature: TarGzArchiver.getRelativeSymLinkTarget(File source, File baseDir)
focal_class.full_signature: private Path getRelativeSymLinkTarget(File source, File baseDir)
focal_class.identifier: getRelativeSymLinkTarget
focal_class.modifiers: private
focal_class.parameters: (File source, File baseDir)
focal_class.return: Path
focal_class.signature: Path getRelativeSymLinkTarget(File source, File baseDir)
focal_class.class_method_signature: TarGzArchiver.isSymbolicLink(File file)
focal_class.full_signature: private static boolean isSymbolicLink(File file)
focal_class.identifier: isSymbolicLink
focal_class.modifiers: private static
focal_class.parameters: (File file)
focal_class.return: boolean
focal_class.signature: boolean isSymbolicLink(File file)
focal_method.body: public void createArchive() throws IOException {
          validate();
          log.info("Building tar: " + destFile);
          TarArchiveOutputStream tarStream = null;
          try {
              destFile.getAbsoluteFile().getParentFile().mkdirs();
              GzipCompressorOutputStream gzipStream = new GzipCompressorOutputStream(
                      new BufferedOutputStream(new FileOutputStream(destFile)));
              tarStream = new TarArchiveOutputStream(gzipStream, "UTF-8");
              // allow "long" file paths (> 100 chars)
              tarStream.setLongFileMode(TarArchiveOutputStream.LONGFILE_GNU);
              for (File sourceDir : sourceDirs) {
                  for (File child : sourceDir.listFiles()) {
                      addToTarRecursively(sourceDir, child, tarStream);
                  }
              }
          } finally {
              if (tarStream != null) {
                  tarStream.close();
              }
          }
      }
focal_method.class_method_signature: TarGzArchiver.createArchive()
focal_method.full_signature: public void createArchive()
focal_method.identifier: createArchive
focal_method.invocations: validate info mkdirs getParentFile getAbsoluteFile setLongFileMode listFiles addToTarRecursively close
focal_method.modifiers: public
focal_method.parameters: ()
focal_method.return: void
focal_method.signature: void createArchive()