本文整理汇总了C#中NGit.Transport.URIish.GetPass方法的典型用法代码示例。如果您正苦于以下问题:C# URIish.GetPass方法的具体用法?C# URIish.GetPass怎么用?C# URIish.GetPass使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NGit.Transport.URIish
的用法示例。
在下文中一共展示了URIish.GetPass方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TestFileProtocol
public virtual void TestFileProtocol()
{
// as defined by git docu
URIish u = new URIish("file:///a/b.txt");
NUnit.Framework.Assert.AreEqual("file", u.GetScheme());
NUnit.Framework.Assert.IsFalse(u.IsRemote());
NUnit.Framework.Assert.IsNull(u.GetHost());
NUnit.Framework.Assert.IsNull(u.GetPass());
NUnit.Framework.Assert.AreEqual("/a/b.txt", u.GetPath());
NUnit.Framework.Assert.AreEqual(-1, u.GetPort());
NUnit.Framework.Assert.IsNull(u.GetUser());
NUnit.Framework.Assert.AreEqual("b.txt", u.GetHumanishName());
FilePath tmp = FilePath.CreateTempFile("jgitUnitTest", ".tmp");
u = new URIish(tmp.ToURI().ToString());
NUnit.Framework.Assert.AreEqual("file", u.GetScheme());
NUnit.Framework.Assert.IsFalse(u.IsRemote());
NUnit.Framework.Assert.IsNull(u.GetHost());
NUnit.Framework.Assert.IsNull(u.GetPass());
NUnit.Framework.Assert.IsTrue(u.GetPath().Contains("jgitUnitTest"));
NUnit.Framework.Assert.AreEqual(-1, u.GetPort());
NUnit.Framework.Assert.IsNull(u.GetUser());
NUnit.Framework.Assert.IsTrue(u.GetHumanishName().StartsWith("jgitUnitTest"));
u = new URIish("file:/a/b.txt");
NUnit.Framework.Assert.AreEqual("file", u.GetScheme());
NUnit.Framework.Assert.IsFalse(u.IsRemote());
NUnit.Framework.Assert.IsNull(u.GetHost());
NUnit.Framework.Assert.IsNull(u.GetPass());
NUnit.Framework.Assert.AreEqual("/a/b.txt", u.GetPath());
NUnit.Framework.Assert.AreEqual(-1, u.GetPort());
NUnit.Framework.Assert.IsNull(u.GetUser());
NUnit.Framework.Assert.AreEqual("b.txt", u.GetHumanishName());
}
示例2: CanHandle
public override bool CanHandle(URIish uri, Repository local, string remoteName)
{
if (uri.GetPath() == null || uri.GetPort() > 0 || uri.GetUser() != null || uri.GetPass
() != null || uri.GetHost() != null || (uri.GetScheme() != null && !this.GetSchemes
().Contains(uri.GetScheme())))
{
return false;
}
return true;
}
示例3: CanHandle
internal static bool CanHandle(URIish uri, FS fs)
{
if (uri.GetHost() != null || uri.GetPort() > 0 || uri.GetUser() != null || uri.GetPass
() != null || uri.GetPath() == null)
{
return false;
}
if ("file".Equals(uri.GetScheme()) || uri.GetScheme() == null)
{
FilePath f = fs.Resolve(new FilePath("."), uri.GetPath());
return f.IsFile() || f.GetName().EndsWith(".bundle");
}
return false;
}
示例4: CanHandle
/// <summary>Determine if this protocol can handle a particular URI.</summary>
/// <remarks>
/// Determine if this protocol can handle a particular URI.
/// <p/>
/// Implementations should try to avoid looking at the local filesystem, but
/// may look at implementation specific configuration options in the remote
/// block of
/// <code>local.getConfig()</code>
/// using
/// <code>remoteName</code>
/// if the name
/// is non-null.
/// <p/>
/// The default implementation of this method matches the scheme against
/// <see cref="GetSchemes()">GetSchemes()</see>
/// , required fields against
/// <see cref="GetRequiredFields()">GetRequiredFields()</see>
/// , and optional fields against
/// <see cref="GetOptionalFields()">GetOptionalFields()</see>
/// , returning true only if all of the fields
/// match the specification.
/// </remarks>
/// <param name="uri">address of the Git repository; never null.</param>
/// <param name="local">
/// the local repository that will communicate with the other Git
/// repository. May be null if the caller is only asking about a
/// specific URI and does not have a local Repository.
/// </param>
/// <param name="remoteName">
/// name of the remote, if the remote as configured in
/// <code>local</code>
/// ; otherwise null.
/// </param>
/// <returns>true if this protocol can handle this URI; false otherwise.</returns>
public virtual bool CanHandle(URIish uri, Repository local, string remoteName)
{
if (!GetSchemes().IsEmpty() && !GetSchemes().Contains(uri.GetScheme()))
{
return false;
}
foreach (TransportProtocol.URIishField field in GetRequiredFields())
{
switch (field)
{
case TransportProtocol.URIishField.USER:
{
if (uri.GetUser() == null || uri.GetUser().Length == 0)
{
return false;
}
break;
}
case TransportProtocol.URIishField.PASS:
{
if (uri.GetPass() == null || uri.GetPass().Length == 0)
{
return false;
}
break;
}
case TransportProtocol.URIishField.HOST:
{
if (uri.GetHost() == null || uri.GetHost().Length == 0)
{
return false;
}
break;
}
case TransportProtocol.URIishField.PORT:
{
if (uri.GetPort() <= 0)
{
return false;
}
break;
}
case TransportProtocol.URIishField.PATH:
{
if (uri.GetPath() == null || uri.GetPath().Length == 0)
{
return false;
}
break;
}
default:
{
return false;
break;
}
}
}
ICollection<TransportProtocol.URIishField> canHave = EnumSet.CopyOf(GetRequiredFields
());
Sharpen.Collections.AddAll(canHave, GetOptionalFields());
if (uri.GetUser() != null && !canHave.Contains(TransportProtocol.URIishField.USER
//.........这里部分代码省略.........
示例5: GetSession
/// <exception cref="NGit.Errors.TransportException"></exception>
public override RemoteSession GetSession(URIish uri, CredentialsProvider credentialsProvider
, FS fs, int tms)
{
lock (this)
{
string user = uri.GetUser();
string pass = uri.GetPass();
string host = uri.GetHost();
int port = uri.GetPort();
try
{
if (config == null)
{
config = OpenSshConfig.Get(fs);
}
OpenSshConfig.Host hc = config.Lookup(host);
host = hc.GetHostName();
if (port <= 0)
{
port = hc.GetPort();
}
if (user == null)
{
user = hc.GetUser();
}
Session session = CreateSession(credentialsProvider, fs, user, pass, host, port,
hc);
int retries = 0;
while (!session.IsConnected() && retries < 3)
{
try
{
retries++;
session.Connect(tms);
}
catch (JSchException e)
{
session.Disconnect();
session = null;
// if authentication failed maybe credentials changed at the
// remote end therefore reset credentials and retry
if (credentialsProvider != null && e.InnerException == null && e.Message.Equals("Auth fail"
))
{
credentialsProvider.Reset(uri);
session = CreateSession(credentialsProvider, fs, user, pass, host, port, hc);
}
else
{
throw;
}
}
}
return new JschSession(session, uri);
}
catch (JSchException je)
{
Exception c = je.InnerException;
if (c is UnknownHostException)
{
throw new TransportException(uri, JGitText.Get().unknownHost);
}
if (c is ConnectException)
{
throw new TransportException(uri, c.Message);
}
throw new TransportException(uri, je.Message, je);
}
}
}
示例6: TestUserPasswordAndPort
public virtual void TestUserPasswordAndPort()
{
string str = "http://user:[email protected]:80/some/path";
URIish u = new URIish(str);
NUnit.Framework.Assert.AreEqual("http", u.GetScheme());
NUnit.Framework.Assert.IsTrue(u.IsRemote());
NUnit.Framework.Assert.AreEqual("/some/path", u.GetPath());
NUnit.Framework.Assert.AreEqual("host.xy", u.GetHost());
NUnit.Framework.Assert.AreEqual(80, u.GetPort());
NUnit.Framework.Assert.AreEqual("user", u.GetUser());
NUnit.Framework.Assert.AreEqual("secret", u.GetPass());
NUnit.Framework.Assert.AreEqual(u, new URIish(str));
str = "http://user:[email protected]@host.xy:80/some/path";
u = new URIish(str);
NUnit.Framework.Assert.AreEqual("http", u.GetScheme());
NUnit.Framework.Assert.IsTrue(u.IsRemote());
NUnit.Framework.Assert.AreEqual("/some/path", u.GetPath());
NUnit.Framework.Assert.AreEqual("host.xy", u.GetHost());
NUnit.Framework.Assert.AreEqual(80, u.GetPort());
NUnit.Framework.Assert.AreEqual("user", u.GetUser());
NUnit.Framework.Assert.AreEqual("[email protected]", u.GetPass());
NUnit.Framework.Assert.AreEqual(u, new URIish(str));
}
示例7: TestSshProtoWithUserPassAndPort
public virtual void TestSshProtoWithUserPassAndPort()
{
string str = "ssh://user:[email protected]:33/some/p ath";
URIish u = new URIish(str);
NUnit.Framework.Assert.AreEqual("ssh", u.GetScheme());
NUnit.Framework.Assert.IsTrue(u.IsRemote());
NUnit.Framework.Assert.AreEqual("/some/p ath", u.GetPath());
NUnit.Framework.Assert.AreEqual("example.com", u.GetHost());
NUnit.Framework.Assert.AreEqual("user", u.GetUser());
NUnit.Framework.Assert.AreEqual("pass", u.GetPass());
NUnit.Framework.Assert.AreEqual(33, u.GetPort());
NUnit.Framework.Assert.AreEqual(str, u.ToPrivateString());
NUnit.Framework.Assert.AreEqual(u.SetPass(null).ToPrivateString(), u.ToString());
NUnit.Framework.Assert.AreEqual(u, new URIish(str));
}
示例8: TestGitWithUserHome
public virtual void TestGitWithUserHome()
{
string str = "git://example.com/~some/p ath";
URIish u = new URIish(str);
NUnit.Framework.Assert.AreEqual("git", u.GetScheme());
NUnit.Framework.Assert.IsTrue(u.IsRemote());
NUnit.Framework.Assert.AreEqual("~some/p ath", u.GetPath());
NUnit.Framework.Assert.AreEqual("example.com", u.GetHost());
NUnit.Framework.Assert.IsNull(u.GetUser());
NUnit.Framework.Assert.IsNull(u.GetPass());
NUnit.Framework.Assert.AreEqual(-1, u.GetPort());
NUnit.Framework.Assert.AreEqual(str, u.ToPrivateString());
NUnit.Framework.Assert.AreEqual(u.SetPass(null).ToPrivateString(), u.ToString());
NUnit.Framework.Assert.AreEqual(u, new URIish(str));
}
示例9: TestFileWithNoneUserHomeWithTilde
public virtual void TestFileWithNoneUserHomeWithTilde()
{
string str = "/~some/p ath";
URIish u = new URIish(str);
NUnit.Framework.Assert.IsNull(u.GetScheme());
NUnit.Framework.Assert.IsFalse(u.IsRemote());
NUnit.Framework.Assert.AreEqual("/~some/p ath", u.GetPath());
NUnit.Framework.Assert.IsNull(u.GetHost());
NUnit.Framework.Assert.IsNull(u.GetUser());
NUnit.Framework.Assert.IsNull(u.GetPass());
NUnit.Framework.Assert.AreEqual(-1, u.GetPort());
NUnit.Framework.Assert.AreEqual(str, u.ToPrivateString());
NUnit.Framework.Assert.AreEqual(u.SetPass(null).ToPrivateString(), u.ToString());
NUnit.Framework.Assert.AreEqual(u, new URIish(str));
}
示例10: CanHandle
internal static bool CanHandle(URIish uri, FS fs)
{
if (uri.GetHost() != null || uri.GetPort() > 0 || uri.GetUser() != null || uri.GetPass
() != null || uri.GetPath() == null)
{
return false;
}
if ("file".Equals(uri.GetScheme()) || uri.GetScheme() == null)
{
return fs.Resolve(new FilePath(PWD), uri.GetPath()).IsDirectory();
}
return false;
}
示例11: Authorize
/// <summary>Update this method with the credentials from the URIish.</summary>
/// <remarks>Update this method with the credentials from the URIish.</remarks>
/// <param name="uri">the URI used to create the connection.</param>
/// <param name="credentialsProvider">
/// the credentials provider, or null. If provided,
/// <see cref="URIish.GetPass()">credentials in the URI</see>
/// are ignored.
/// </param>
/// <returns>
/// true if the authentication method is able to provide
/// authorization for the given URI
/// </returns>
internal virtual bool Authorize(URIish uri, CredentialsProvider credentialsProvider
)
{
string username;
string password;
if (credentialsProvider != null)
{
CredentialItem.Username u = new CredentialItem.Username();
CredentialItem.Password p = new CredentialItem.Password();
if (credentialsProvider.Supports(u, p) && credentialsProvider.Get(uri, u, p))
{
username = u.GetValue();
password = new string(p.GetValue());
p.Clear();
}
else
{
return false;
}
}
else
{
username = uri.GetUser();
password = uri.GetPass();
}
if (username != null)
{
Authorize(username, password);
return true;
}
return false;
}
示例12: TestGetSet
public virtual void TestGetSet()
{
string str = "ssh://DOMAIN\\user:[email protected]:33/some/p ath%20";
URIish u = new URIish(str);
u = u.SetHost(u.GetHost());
u = u.SetPass(u.GetPass());
u = u.SetPort(u.GetPort());
NUnit.Framework.Assert.AreEqual("ssh", u.GetScheme());
NUnit.Framework.Assert.IsTrue(u.IsRemote());
u = u.SetRawPath(u.GetRawPath());
NUnit.Framework.Assert.AreEqual("/some/p ath%20", u.GetRawPath());
u = u.SetPath(u.GetPath());
NUnit.Framework.Assert.AreEqual("/some/p ath ", u.GetRawPath());
NUnit.Framework.Assert.AreEqual("/some/p ath ", u.GetPath());
NUnit.Framework.Assert.AreEqual("example.com", u.GetHost());
NUnit.Framework.Assert.AreEqual("DOMAIN\\user", u.GetUser());
NUnit.Framework.Assert.AreEqual("pass", u.GetPass());
NUnit.Framework.Assert.AreEqual(33, u.GetPort());
NUnit.Framework.Assert.AreEqual("ssh://DOMAIN\\user:[email protected]:33/some/p ath "
, u.ToPrivateString());
NUnit.Framework.Assert.AreEqual("ssh://DOMAIN\\user:[email protected]:33/some/p%20ath%20"
, u.ToPrivateASCIIString());
NUnit.Framework.Assert.AreEqual(u.SetPass(null).ToPrivateString(), u.ToString());
NUnit.Framework.Assert.AreEqual(u.SetPass(null).ToPrivateASCIIString(), u.ToASCIIString
());
NUnit.Framework.Assert.AreEqual(u, new URIish(str));
}
示例13: TestURIEncodeDecode
public virtual void TestURIEncodeDecode()
{
string str = "ssh://%3ax%25:%40%[email protected]:33/some%c3%a5/p%20a th";
URIish u = new URIish(str);
NUnit.Framework.Assert.AreEqual("ssh", u.GetScheme());
NUnit.Framework.Assert.IsTrue(u.IsRemote());
NUnit.Framework.Assert.AreEqual("/some%c3%a5/p%20a th", u.GetRawPath());
NUnit.Framework.Assert.AreEqual("/some\u00e5/p a th", u.GetPath());
NUnit.Framework.Assert.AreEqual("example.com", u.GetHost());
NUnit.Framework.Assert.AreEqual(":x%", u.GetUser());
NUnit.Framework.Assert.AreEqual("@Ax", u.GetPass());
NUnit.Framework.Assert.AreEqual(33, u.GetPort());
NUnit.Framework.Assert.AreEqual("ssh://%3ax%25:%[email protected]:33/some%c3%a5/p%20a th"
, u.ToPrivateString());
NUnit.Framework.Assert.AreEqual("ssh://%3ax%25:%[email protected]:33/some%c3%a5/p%20a%20th"
, u.ToPrivateASCIIString());
NUnit.Framework.Assert.AreEqual(u.SetPass(null).ToPrivateString(), u.ToString());
NUnit.Framework.Assert.AreEqual(u.SetPass(null).ToPrivateASCIIString(), u.ToASCIIString
());
NUnit.Framework.Assert.AreEqual(u, new URIish(str));
}
示例14: TestSshProtoWithEscapedADUserPassAndPort
public virtual void TestSshProtoWithEscapedADUserPassAndPort()
{
string str = "ssh://DOMAIN%5c\u00fcser:[email protected]:33/some/p ath";
URIish u = new URIish(str);
NUnit.Framework.Assert.AreEqual("ssh", u.GetScheme());
NUnit.Framework.Assert.IsTrue(u.IsRemote());
NUnit.Framework.Assert.AreEqual("/some/p ath", u.GetRawPath());
NUnit.Framework.Assert.AreEqual("/some/p ath", u.GetPath());
NUnit.Framework.Assert.AreEqual("example.com", u.GetHost());
NUnit.Framework.Assert.AreEqual("DOMAIN\\\u00fcser", u.GetUser());
NUnit.Framework.Assert.AreEqual("pass", u.GetPass());
NUnit.Framework.Assert.AreEqual(33, u.GetPort());
NUnit.Framework.Assert.AreEqual("ssh://DOMAIN\\\u00fcser:[email protected]:33/some/p ath"
, u.ToPrivateString());
NUnit.Framework.Assert.AreEqual("ssh://DOMAIN\\%c3%bcser:[email protected]:33/some/p%20ath"
, u.ToPrivateASCIIString());
NUnit.Framework.Assert.AreEqual(u.SetPass(null).ToPrivateString(), u.ToString());
NUnit.Framework.Assert.AreEqual(u.SetPass(null).ToPrivateASCIIString(), u.ToASCIIString
());
NUnit.Framework.Assert.AreEqual(u, new URIish(str));
}
示例15: TestSshProtoWithUserAndPort
public virtual void TestSshProtoWithUserAndPort()
{
string str = "ssh://[email protected]:33/some/p ath";
URIish u = new URIish(str);
NUnit.Framework.Assert.AreEqual("ssh", u.GetScheme());
NUnit.Framework.Assert.IsTrue(u.IsRemote());
NUnit.Framework.Assert.AreEqual("/some/p ath", u.GetRawPath());
NUnit.Framework.Assert.AreEqual("/some/p ath", u.GetPath());
NUnit.Framework.Assert.AreEqual("example.com", u.GetHost());
NUnit.Framework.Assert.AreEqual("user", u.GetUser());
NUnit.Framework.Assert.IsNull(u.GetPass());
NUnit.Framework.Assert.AreEqual(33, u.GetPort());
NUnit.Framework.Assert.AreEqual("ssh://[email protected]:33/some/p ath", u.ToString
());
NUnit.Framework.Assert.AreEqual("ssh://[email protected]:33/some/p%20ath", u.ToASCIIString
());
NUnit.Framework.Assert.AreEqual(u, new URIish(str));
}