List of usage examples for org.apache.commons.vfs2 FileName getRoot
FileName getRoot();
From source file:org.pentaho.big.data.impl.vfs.hdfs.HDFSFileProvider.java
@Override protected FileSystem doCreateFileSystem(final FileName name, final FileSystemOptions fileSystemOptions) throws FileSystemException { GenericFileName genericFileName = (GenericFileName) name.getRoot(); String hostName = genericFileName.getHostName(); int port = genericFileName.getPort(); // TODO: load from metastore NamedCluster namedCluster = namedClusterService.getClusterTemplate(); namedCluster.setHdfsHost(hostName);//w w w . j a va2 s .c o m if (port > 0) { namedCluster.setHdfsPort(String.valueOf(port)); } else { namedCluster.setHdfsPort(""); } namedCluster.setMapr(MAPRFS.equals(name.getScheme())); try { return new HDFSFileSystem(name, fileSystemOptions, hadoopFileSystemLocator .getHadoopFilesystem(namedCluster, URI.create(name.getURI() == null ? "" : name.getURI()))); } catch (ClusterInitializationException e) { throw new FileSystemException(e); } }
From source file:org.pentaho.big.data.impl.vfs.hdfs.HDFSFileProviderTest.java
@Test public void testDoCreateFileSystemNoPort() throws FileSystemException, ClusterInitializationException { String testHostname = "testHostname"; FileName fileName = mock(FileName.class); GenericFileName genericFileName = mock(GenericFileName.class); when(fileName.getURI()).thenReturn(""); when(fileName.getRoot()).thenReturn(genericFileName); when(genericFileName.getHostName()).thenReturn(testHostname); when(genericFileName.getPort()).thenReturn(-1); assertTrue(hdfsFileProvider.doCreateFileSystem(fileName, null) instanceof HDFSFileSystem); verify(hadoopFileSystemLocator).getHadoopFilesystem(namedCluster, URI.create("")); verify(namedCluster).setHdfsHost(testHostname); verify(namedCluster).setHdfsPort(""); }
From source file:org.pentaho.big.data.impl.vfs.hdfs.HDFSFileProviderTest.java
@Test public void testDoCreateFileSystemPort() throws FileSystemException, ClusterInitializationException { String testHostname = "testHostname"; FileName fileName = mock(FileName.class); GenericFileName genericFileName = mock(GenericFileName.class); when(fileName.getURI()).thenReturn(""); when(fileName.getRoot()).thenReturn(genericFileName); when(genericFileName.getHostName()).thenReturn(testHostname); when(genericFileName.getPort()).thenReturn(111); assertTrue(hdfsFileProvider.doCreateFileSystem(fileName, null) instanceof HDFSFileSystem); verify(hadoopFileSystemLocator).getHadoopFilesystem(namedCluster, URI.create("")); verify(namedCluster).setHdfsHost(testHostname); verify(namedCluster).setHdfsPort("111"); }
From source file:org.pentaho.big.data.impl.vfs.hdfs.nc.NamedClusterProvider.java
@Override protected FileSystem doCreateFileSystem(FileName name, FileSystemOptions fileSystemOptions) throws FileSystemException { GenericFileName genericFileName = (GenericFileName) name.getRoot(); String clusterName = genericFileName.getHostName(); String path = genericFileName.getPath(); NamedCluster namedCluster = getNamedClusterByName(clusterName, fileSystemOptions); try {// w w w. ja v a 2s .c o m if (namedCluster == null) { namedCluster = namedClusterService.getClusterTemplate(); } String generatedUrl = namedCluster.processURLsubstitution(path == null ? "" : path, getMetastore(clusterName, fileSystemOptions), new Variables()); URI uri = URI.create(generatedUrl); return new NamedClusterFileSystem(name, uri, fileSystemOptions, hadoopFileSystemLocator.getHadoopFilesystem(namedCluster, uri)); } catch (ClusterInitializationException e) { throw new FileSystemException(e); } }