List of usage examples for java.nio.file.attribute PosixFilePermission OWNER_EXECUTE
PosixFilePermission OWNER_EXECUTE
To view the source code for java.nio.file.attribute PosixFilePermission OWNER_EXECUTE.
Click Source Link
From source file:net.krotscheck.util.ResourceUtilTest.java
/** * Assert that we can read a resource as a string. * * @throws Exception Should not be thrown. *///from w ww. j av a 2 s . c om @Test public void testGetResourceAsString() throws Exception { String name = "/valid-resource-file.txt"; String content = ResourceUtil.getResourceAsString(name); Assert.assertEquals("valid resource content", content); String invalidName = "/invalid-resource-file.txt"; String invalidContent = ResourceUtil.getResourceAsString(invalidName); Assert.assertEquals("", invalidContent); // Make the file write only File resource = ResourceUtil.getFileForResource(name); Set<PosixFilePermission> oldPerms = Files.getPosixFilePermissions(resource.toPath()); Set<PosixFilePermission> perms = new HashSet<>(); perms.add(PosixFilePermission.OWNER_WRITE); perms.add(PosixFilePermission.OWNER_EXECUTE); perms.add(PosixFilePermission.GROUP_WRITE); perms.add(PosixFilePermission.GROUP_EXECUTE); perms.add(PosixFilePermission.OTHERS_WRITE); perms.add(PosixFilePermission.OTHERS_EXECUTE); // Write only... Files.setPosixFilePermissions(resource.toPath(), perms); String writeOnlyName = "/valid-resource-file.txt"; String writeOnlyContent = ResourceUtil.getResourceAsString(writeOnlyName); Assert.assertEquals("", writeOnlyContent); Files.setPosixFilePermissions(resource.toPath(), oldPerms); }
From source file:com.streamsets.pipeline.stage.origin.spooldir.TestWholeFileSpoolDirSource.java
@Test public void testWholeFileRecordsForFile() throws Exception { Path sourcePath = Paths.get(testDir + "/source.txt"); Files.write(sourcePath, "Sample Text 1".getBytes()); Files.setAttribute(sourcePath, "posix:permissions", ImmutableSet.of(PosixFilePermission.OWNER_READ, PosixFilePermission.OWNER_WRITE, PosixFilePermission.OWNER_EXECUTE, PosixFilePermission.GROUP_READ)); SpoolDirSource source = createSource(); PushSourceRunner runner = new PushSourceRunner.Builder(SpoolDirDSource.class, source).addOutputLane("lane") .setOnRecordError(OnRecordError.TO_ERROR).build(); final List<Record> records = Collections.synchronizedList(new ArrayList<>(10)); AtomicInteger batchCount = new AtomicInteger(0); runner.runInit();/*www . j a va 2 s.co m*/ try { runner.runProduce(new HashMap<>(), 10, output2 -> { synchronized (records) { records.addAll(output2.getRecords().get("lane")); } batchCount.incrementAndGet(); runner.setStop(); }); runner.waitOnProduce(); Assert.assertNotNull(records); Assert.assertEquals(1, records.size()); Record record = records.get(0); Assert.assertTrue(record.has(FileRefUtil.FILE_INFO_FIELD_PATH)); Assert.assertTrue(record.has(FileRefUtil.FILE_REF_FIELD_PATH)); Assert.assertEquals(Field.Type.FILE_REF, record.get(FileRefUtil.FILE_REF_FIELD_PATH).getType()); Assert.assertEquals(Field.Type.MAP, record.get(FileRefUtil.FILE_INFO_FIELD_PATH).getType()); Map<String, Object> metadata = Files.readAttributes(sourcePath, "posix:*"); Assert.assertTrue(record.get(FileRefUtil.FILE_INFO_FIELD_PATH).getValueAsMap().keySet() .containsAll(metadata.keySet())); //Check permissions Assert.assertTrue(record.has(FileRefUtil.FILE_INFO_FIELD_PATH + "/" + SpoolDirRunnable.PERMISSIONS)); Assert.assertEquals("rwxr-----", record .get(FileRefUtil.FILE_INFO_FIELD_PATH + "/" + SpoolDirRunnable.PERMISSIONS).getValueAsString()); Assert.assertEquals(Field.Type.FILE_REF, record.get(FileRefUtil.FILE_REF_FIELD_PATH).getType()); Assert.assertEquals(Field.Type.MAP, record.get(FileRefUtil.FILE_INFO_FIELD_PATH).getType()); } finally { runner.runDestroy(); } }
From source file:org.everit.osgi.dev.maven.util.FileManager.java
private static void setPermissionsOnFile(final File file, final ZipArchiveEntry entry) throws IOException { if (entry.getPlatform() == ZipArchiveEntry.PLATFORM_FAT) { return;/*from w ww. j a va2 s. c o m*/ } int unixPermissions = entry.getUnixMode(); Set<PosixFilePermission> perms = new HashSet<>(); if ((unixPermissions & OWNER_EXECUTE_BITMASK) > 0) { perms.add(PosixFilePermission.OWNER_EXECUTE); } if ((unixPermissions & GROUP_EXECUTE_BITMASK) > 0) { perms.add(PosixFilePermission.GROUP_EXECUTE); } if ((unixPermissions & OTHERS_EXECUTE_BITMASK) > 0) { perms.add(PosixFilePermission.OTHERS_EXECUTE); } if ((unixPermissions & OWNER_READ_BITMASK) > 0) { perms.add(PosixFilePermission.OWNER_READ); } if ((unixPermissions & GROUP_READ_BITMASK) > 0) { perms.add(PosixFilePermission.GROUP_READ); } if ((unixPermissions & OTHERS_READ_BITMASK) > 0) { perms.add(PosixFilePermission.OTHERS_READ); } if ((unixPermissions & OWNER_WRITE_BITMASK) > 0) { perms.add(PosixFilePermission.OWNER_WRITE); } if ((unixPermissions & GROUP_WRITE_BITMASK) > 0) { perms.add(PosixFilePermission.GROUP_WRITE); } if ((unixPermissions & OTHERS_WRITE_BITMASK) > 0) { perms.add(PosixFilePermission.OTHERS_WRITE); } Path path = file.toPath(); if (path.getFileSystem().supportedFileAttributeViews().contains("posix")) { Files.setPosixFilePermissions(path, perms); } else { setPermissionsOnFileInNonPosixSystem(file, perms); } }
From source file:org.roda.core.plugins.ReplicationPluginTest.java
@BeforeClass public void setUp() throws Exception { basePath = TestsHelper.createBaseTempDir(getClass(), true, PosixFilePermissions.asFileAttribute(new HashSet<>(Arrays.asList(PosixFilePermission.OWNER_READ, PosixFilePermission.OWNER_WRITE, PosixFilePermission.OWNER_EXECUTE, PosixFilePermission.OTHERS_READ, PosixFilePermission.OTHERS_EXECUTE)))); boolean deploySolr = true; boolean deployLdap = true; boolean deployFolderMonitor = true; boolean deployOrchestrator = true; boolean deployPluginManager = true; boolean deployDefaultResources = false; // embedded Apache Solr RodaCoreFactory.instantiateTest(deploySolr, deployLdap, deployFolderMonitor, deployOrchestrator, deployPluginManager, deployDefaultResources, SolrType.EMBEDDED); // // HTTP Apache Solr // RodaCoreFactory.instantiateTest(deploySolr, deployLdap, // deployFolderMonitor, deployOrchestrator, // deployPluginManager, deployDefaultResources, SolrType.HTTP); // // Cloud Apache Solr // RodaCoreFactory.instantiateTest(deploySolr, deployLdap, // deployFolderMonitor, deployOrchestrator, // deployPluginManager, deployDefaultResources, SolrType.HTTP_CLOUD); model = RodaCoreFactory.getModelService(); index = RodaCoreFactory.getIndexService(); storage = RodaCoreFactory.getStorageService(); testPath = TestsHelper.createBaseTempDir(getClass(), true, PosixFilePermissions.asFileAttribute(new HashSet<>(Arrays.asList(PosixFilePermission.OWNER_READ, PosixFilePermission.OWNER_WRITE, PosixFilePermission.OWNER_EXECUTE, PosixFilePermission.OTHERS_READ, PosixFilePermission.OTHERS_EXECUTE)))); Files.createDirectories(//from w w w . jav a2 s . c o m testPath.resolve(RodaConstants.CORE_STORAGE_FOLDER).resolve(RodaConstants.STORAGE_CONTAINER_AIP)); Files.createDirectories(testPath.resolve(RodaConstants.CORE_STORAGE_FOLDER) .resolve(RodaConstants.STORAGE_CONTAINER_PRESERVATION) .resolve(RodaConstants.STORAGE_CONTAINER_PRESERVATION_AGENTS)); LOGGER.info("Running {} tests under storage {}", getClass().getSimpleName(), basePath); }
From source file:com.streamsets.pipeline.stage.BaseHiveIT.java
/** * Start all required mini clusters.//from w w w . j av a 2 s . c o m */ @BeforeClass public static void setUpClass() throws Exception { // Conf dir new File(confDir).mkdirs(); // HDFS File minidfsDir = new File("target/minidfs").getAbsoluteFile(); if (!minidfsDir.exists()) { Assert.assertTrue(minidfsDir.mkdirs()); } Set<PosixFilePermission> set = new HashSet<>(); set.add(PosixFilePermission.OWNER_EXECUTE); set.add(PosixFilePermission.OWNER_READ); set.add(PosixFilePermission.OWNER_WRITE); set.add(PosixFilePermission.OTHERS_READ); java.nio.file.Files.setPosixFilePermissions(minidfsDir.toPath(), set); System.setProperty(MiniDFSCluster.PROP_TEST_BUILD_DATA, minidfsDir.getPath()); final Configuration conf = new HdfsConfiguration(); conf.set("hadoop.proxyuser." + System.getProperty("user.name") + ".hosts", "*"); conf.set("hadoop.proxyuser." + System.getProperty("user.name") + ".groups", "*"); miniDFS = new MiniDFSCluster.Builder(conf).build(); miniDFS.getFileSystem().setPermission(new Path("/"), FsPermission.createImmutable((short) 0777)); writeConfiguration(miniDFS.getConfiguration(0), confDir + "/core-site.xml"); writeConfiguration(miniDFS.getConfiguration(0), confDir + "/hdfs-site.xml"); writeConfiguration(miniDFS.getConfiguration(0), confDir + "/mapred-site.xml"); writeConfiguration(miniDFS.getConfiguration(0), confDir + "/yarn-site.xml"); // Configuration for both HMS and HS2 final HiveConf hiveConf = new HiveConf(miniDFS.getConfiguration(0), HiveConf.class); hiveConf.set(HiveConf.ConfVars.METASTORECONNECTURLKEY.varname, "jdbc:derby:;databaseName=target/metastore_db;create=true"); hiveConf.set(HiveConf.ConfVars.METASTOREURIS.varname, Utils.format("thrift://{}:{}", HOSTNAME, METASTORE_PORT)); hiveConf.set(HiveConf.ConfVars.HIVE_SERVER2_THRIFT_BIND_HOST.varname, "localhost"); hiveConf.setInt(HiveConf.ConfVars.HIVE_SERVER2_THRIFT_PORT.varname, HIVE_SERVER_PORT); // Hive metastore Callable<Void> metastoreService = new Callable<Void>() { public Void call() throws Exception { try { HiveMetaStore.startMetaStore(METASTORE_PORT, ShimLoader.getHadoopThriftAuthBridge(), hiveConf); while (true) ; } catch (Throwable e) { throw new Exception("Error starting metastore", e); } } }; hiveMetastoreExecutor.submit(metastoreService); NetworkUtils.waitForStartUp(HOSTNAME, METASTORE_PORT, MINICLUSTER_BOOT_RETRY, MINICLUSTER_BOOT_SLEEP); // HiveServer 2 hiveServer2 = new HiveServer2(); hiveServer2.init(hiveConf); hiveServer2.start(); writeConfiguration(hiveServer2.getHiveConf(), confDir + "/hive-site.xml"); NetworkUtils.waitForStartUp(HOSTNAME, HIVE_SERVER_PORT, MINICLUSTER_BOOT_RETRY, MINICLUSTER_BOOT_SLEEP); // JDBC Connection to Hive Class.forName(HIVE_JDBC_DRIVER); hiveConnection = HiveMetastoreUtil.getHiveConnection(getHiveJdbcUrl(), HadoopSecurityUtil.getLoginUser(conf)); hiveQueryExecutor = new HiveQueryExecutor(hiveConnection); }
From source file:com.spectralogic.ds3client.metadata.MetadataReceivedListenerImpl_Test.java
@Test public void testGettingMetadata() throws IOException, InterruptedException { final String tempPathPrefix = null; final Path tempDirectory = Files.createTempDirectory(Paths.get("."), tempPathPrefix); final String fileName = "Gracie.txt"; final Path filePath = Files.createFile(Paths.get(tempDirectory.toString(), fileName)); try {//w w w .ja va 2 s . c o m // set permissions if (!Platform.isWindows()) { final PosixFileAttributes attributes = Files.readAttributes(filePath, PosixFileAttributes.class); final Set<PosixFilePermission> permissions = attributes.permissions(); permissions.clear(); permissions.add(PosixFilePermission.OWNER_READ); permissions.add(PosixFilePermission.OWNER_WRITE); Files.setPosixFilePermissions(filePath, permissions); } // get permissions final ImmutableMap.Builder<String, Path> fileMapper = ImmutableMap.builder(); fileMapper.put(filePath.toString(), filePath); final ImmutableMap<String, Path> immutableFileMapper = fileMapper.build(); final Map<String, String> metadataFromFile = new MetadataAccessImpl(immutableFileMapper) .getMetadataValue(filePath.toString()); // change permissions if (Platform.isWindows()) { Runtime.getRuntime().exec("attrib -A " + filePath.toString()).waitFor(); } else { final PosixFileAttributes attributes = Files.readAttributes(filePath, PosixFileAttributes.class); final Set<PosixFilePermission> permissions = attributes.permissions(); permissions.clear(); permissions.add(PosixFilePermission.OWNER_READ); permissions.add(PosixFilePermission.OWNER_WRITE); permissions.add(PosixFilePermission.OWNER_EXECUTE); Files.setPosixFilePermissions(filePath, permissions); } // put old permissions back final Metadata metadata = new MetadataImpl(new MockedHeadersReturningKeys(metadataFromFile)); new MetadataReceivedListenerImpl(tempDirectory.toString()).metadataReceived(fileName, metadata); // see that we put back the original metadata fileMapper.put(filePath.toString(), filePath); final Map<String, String> metadataFromUpdatedFile = new MetadataAccessImpl(immutableFileMapper) .getMetadataValue(filePath.toString()); if (Platform.isWindows()) { assertEquals("A", metadataFromUpdatedFile .get(MetadataKeyConstants.METADATA_PREFIX + MetadataKeyConstants.KEY_FLAGS)); } else { assertEquals("100600", metadataFromUpdatedFile .get(MetadataKeyConstants.METADATA_PREFIX + MetadataKeyConstants.KEY_MODE)); assertEquals("600(rw-------)", metadataFromUpdatedFile .get(MetadataKeyConstants.METADATA_PREFIX + MetadataKeyConstants.KEY_PERMISSION)); } } finally { FileUtils.deleteDirectory(tempDirectory.toFile()); } }
From source file:org.springframework.boot.loader.tools.JarWriter.java
private void setExecutableFilePermission(File file) { try {// w w w.j ava 2 s .c om Path path = file.toPath(); Set<PosixFilePermission> permissions = new HashSet<>(Files.getPosixFilePermissions(path)); permissions.add(PosixFilePermission.OWNER_EXECUTE); Files.setPosixFilePermissions(path, permissions); } catch (Throwable ex) { // Ignore and continue creating the jar } }
From source file:org.darkware.wpman.wpcli.WPCLI.java
/** * Update the local WP-CLI tool to the most recent version. *///from www . ja v a 2 s . c om public static void update() { try { WPManager.log.info("Downloading new version of WP-CLI."); CloseableHttpClient httpclient = HttpClients.createDefault(); URI pharURI = new URIBuilder().setScheme("http").setHost("raw.githubusercontent.com") .setPath("/wp-cli/builds/gh-pages/phar/wp-cli.phar").build(); WPManager.log.info("Downloading from: {}", pharURI); HttpGet downloadRequest = new HttpGet(pharURI); CloseableHttpResponse response = httpclient.execute(downloadRequest); WPManager.log.info("Download response: {}", response.getStatusLine()); WPManager.log.info("Download content type: {}", response.getFirstHeader("Content-Type").getValue()); FileChannel wpcliFile = FileChannel.open(WPCLI.toolPath, StandardOpenOption.CREATE, StandardOpenOption.TRUNCATE_EXISTING, StandardOpenOption.WRITE); response.getEntity().writeTo(Channels.newOutputStream(wpcliFile)); wpcliFile.close(); Set<PosixFilePermission> wpcliPerms = new HashSet<>(); wpcliPerms.add(PosixFilePermission.OWNER_READ); wpcliPerms.add(PosixFilePermission.OWNER_WRITE); wpcliPerms.add(PosixFilePermission.OWNER_EXECUTE); wpcliPerms.add(PosixFilePermission.GROUP_READ); wpcliPerms.add(PosixFilePermission.GROUP_EXECUTE); Files.setPosixFilePermissions(WPCLI.toolPath, wpcliPerms); } catch (URISyntaxException e) { WPManager.log.error("Failure building URL for WPCLI download.", e); System.exit(1); } catch (IOException e) { WPManager.log.error("Error while downloading WPCLI client.", e); e.printStackTrace(); System.exit(1); } }
From source file:com.linkedin.pinot.core.segment.index.converter.SegmentV1V2ToV3FormatConverter.java
private void setDirectoryPermissions(File v3Directory) throws IOException { EnumSet<PosixFilePermission> permissions = EnumSet.of(PosixFilePermission.OWNER_READ, PosixFilePermission.OWNER_WRITE, PosixFilePermission.OWNER_EXECUTE, PosixFilePermission.GROUP_READ, PosixFilePermission.GROUP_WRITE, PosixFilePermission.GROUP_EXECUTE, PosixFilePermission.OTHERS_READ, PosixFilePermission.OTHERS_EXECUTE); Files.setPosixFilePermissions(v3Directory.toPath(), permissions); }
From source file:org.kitodo.command.CommandTest.java
private static void setFileExecuteable(File file) throws IOException { Set<PosixFilePermission> perms = new HashSet<>(); perms.add(PosixFilePermission.OWNER_READ); perms.add(PosixFilePermission.OWNER_WRITE); perms.add(PosixFilePermission.OWNER_EXECUTE); perms.add(PosixFilePermission.OTHERS_READ); perms.add(PosixFilePermission.OTHERS_WRITE); perms.add(PosixFilePermission.OTHERS_EXECUTE); perms.add(PosixFilePermission.GROUP_READ); perms.add(PosixFilePermission.GROUP_WRITE); perms.add(PosixFilePermission.GROUP_EXECUTE); Files.setPosixFilePermissions(file.toPath(), perms); }