public void TestConnConfiguratior() { Uri u = new Uri("http://localhost"); IList <HttpURLConnection> conns = Lists.NewArrayList(); URLConnectionFactory fc = new URLConnectionFactory(new _ConnectionConfigurator_37 (u, conns)); fc.OpenConnection(u); NUnit.Framework.Assert.AreEqual(1, conns.Count); }
public virtual void TestTokenCompatibilityFor203() { Configuration conf = new Configuration(); HftpFileSystem fs = new HftpFileSystem(); Org.Apache.Hadoop.Security.Token.Token <object> token = new Org.Apache.Hadoop.Security.Token.Token <TokenIdentifier>(new byte[0], new byte[0], DelegationTokenIdentifier.HdfsDelegationKind , new Text("127.0.0.1:8020")); Credentials cred = new Credentials(); cred.AddToken(HftpFileSystem.TokenKind, token); ByteArrayOutputStream os = new ByteArrayOutputStream(); cred.Write(new DataOutputStream(os)); HttpURLConnection conn = Org.Mockito.Mockito.Mock <HttpURLConnection>(); Org.Mockito.Mockito.DoReturn(new ByteArrayInputStream(os.ToByteArray())).When(conn ).GetInputStream(); Org.Mockito.Mockito.DoReturn(HttpURLConnection.HttpOk).When(conn).GetResponseCode (); URLConnectionFactory factory = Org.Mockito.Mockito.Mock <URLConnectionFactory>(); Org.Mockito.Mockito.DoReturn(conn).When(factory).OpenConnection(Org.Mockito.Mockito .Any <Uri>(), Matchers.AnyBoolean()); URI uri = new URI("hftp://127.0.0.1:8020"); fs.Initialize(uri, conf); fs.connectionFactory = factory; UserGroupInformation ugi = UserGroupInformation.CreateUserForTesting("foo", new string [] { "bar" }); TokenAspect <HftpFileSystem> tokenAspect = new TokenAspect <HftpFileSystem>(fs, SecurityUtil .BuildTokenService(uri), HftpFileSystem.TokenKind); tokenAspect.InitDelegationToken(ugi); tokenAspect.EnsureTokenInitialized(); NUnit.Framework.Assert.AreSame(HftpFileSystem.TokenKind, fs.GetRenewToken().GetKind ()); Org.Apache.Hadoop.Security.Token.Token <object> tok = (Org.Apache.Hadoop.Security.Token.Token <object>)Whitebox.GetInternalState(fs, "delegationToken"); NUnit.Framework.Assert.AreNotSame("Not making a copy of the remote token", token, tok); NUnit.Framework.Assert.AreEqual(token.GetKind(), tok.GetKind()); }
/// <exception cref="System.IO.IOException"/> public override void Initialize(URI name, Configuration conf) { base.Initialize(name, conf); SetConf(conf); this.connectionFactory = URLConnectionFactory.NewDefaultURLConnectionFactory(conf ); this.ugi = UserGroupInformation.GetCurrentUser(); this.nnUri = GetNamenodeUri(name); this.tokenServiceName = SecurityUtil.BuildTokenService(nnUri); try { this.hftpURI = new URI(name.GetScheme(), name.GetAuthority(), null, null, null); } catch (URISyntaxException e) { throw new ArgumentException(e); } InitTokenAspect(); if (UserGroupInformation.IsSecurityEnabled()) { tokenAspect.InitDelegationToken(ugi); } }
/// <exception cref="System.IO.IOException"/> internal RangeHeaderInputStream(URLConnectionFactory connFactory, Uri url) : this(new HftpFileSystem.RangeHeaderUrlOpener(connFactory, url), new HftpFileSystem.RangeHeaderUrlOpener (connFactory, null)) { }
internal RangeHeaderUrlOpener(URLConnectionFactory connFactory, Uri url) : base(url) { this.connFactory = connFactory; }