Skip to content

Commit e0a98ce

Browse files
committed
Introduce AuthenticationException.
1 parent 7d4fb20 commit e0a98ce

File tree

3 files changed

+57
-0
lines changed

3 files changed

+57
-0
lines changed

Diff for: LibGit2Sharp/AuthenticationException.cs

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
using System;
2+
using System.Runtime.Serialization;
3+
using LibGit2Sharp.Core;
4+
5+
namespace LibGit2Sharp
6+
{
7+
/// <summary>
8+
/// The exception that is thrown when an operation which requires an
9+
/// authentication fails.
10+
/// </summary>
11+
[Serializable]
12+
public class AuthenticationException : LibGit2SharpException
13+
{
14+
/// <summary>
15+
/// Initializes a new instance of the <see cref="LibGit2Sharp.AuthenticationException"/> class.
16+
/// </summary>
17+
public AuthenticationException()
18+
{
19+
}
20+
21+
/// <summary>
22+
/// Initializes a new instance of the <see cref="LibGit2Sharp.AuthenticationException"/> class with a specified error message.
23+
/// </summary>
24+
/// <param name="message">A message that describes the error.</param>
25+
public AuthenticationException(string message)
26+
: base(message)
27+
{
28+
}
29+
30+
/// <summary>
31+
/// Initializes a new instance of the <see cref="LibGit2Sharp.AuthenticationException"/> class with a specified error message and a reference to the inner exception that is the cause of this exception.
32+
/// </summary>
33+
/// <param name="message">The error message that explains the reason for the exception.</param>
34+
/// <param name="innerException">The exception that is the cause of the current exception. If the <paramref name="innerException"/> parameter is not a null reference, the current exception is raised in a catch block that handles the inner exception.</param>
35+
public AuthenticationException(string message, Exception innerException)
36+
: base(message, innerException)
37+
{
38+
}
39+
40+
/// <summary>
41+
/// Initializes a new instance of the <see cref="LibGit2Sharp.AuthenticationException"/> class with a serialized data.
42+
/// </summary>
43+
/// <param name="info">The <see cref="SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
44+
/// <param name="context">The <see cref="StreamingContext"/> that contains contextual information about the source or destination.</param>
45+
protected AuthenticationException(SerializationInfo info, StreamingContext context)
46+
: base(info, context)
47+
{
48+
}
49+
50+
internal AuthenticationException(string message, GitErrorCode code, GitErrorCategory category)
51+
: base(message, code, category)
52+
{
53+
}
54+
}
55+
}

Diff for: LibGit2Sharp/Core/Ensure.cs

+1
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,7 @@ private static readonly Dictionary<GitErrorCode, Func<string, GitErrorCode, GitE
101101
{ GitErrorCode.LockedFile, (m, r, c) => new LockedFileException(m, r, c) },
102102
{ GitErrorCode.NotFound, (m, r, c) => new NotFoundException(m, r, c) },
103103
{ GitErrorCode.Peel, (m, r, c) => new PeelException(m, r, c) },
104+
{ GitErrorCode.Auth, (m, r, c) => new AuthenticationException(m, r, c) },
104105
};
105106

106107
private static void HandleError(int result)

Diff for: LibGit2Sharp/LibGit2Sharp.csproj

+1
Original file line numberDiff line numberDiff line change
@@ -343,6 +343,7 @@
343343
<Compile Include="SshUserKeyCredentials.cs" />
344344
<Compile Include="SshAgentCredentials.cs" />
345345
<Compile Include="UsernameQueryCredentials.cs" />
346+
<Compile Include="AuthenticationException.cs" />
346347
</ItemGroup>
347348
<ItemGroup>
348349
<CodeAnalysisDictionary Include="CustomDictionary.xml" />

0 commit comments

Comments
 (0)