Skip to content

Commit 410a584

Browse files
authored
Add inheritdoc build (#15)
1 parent b78b52b commit 410a584

File tree

9 files changed

+49
-36
lines changed

9 files changed

+49
-36
lines changed

src/Directory.Build.props

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@
1515
<AllowedOutputExtensionsInPackageBuildOutputFolder>$(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb</AllowedOutputExtensionsInPackageBuildOutputFolder>
1616
<PublishRepositoryUrl>true</PublishRepositoryUrl>
1717
<PackageIcon>nuget-icon.png</PackageIcon>
18+
19+
<InheritDocEnabled>true</InheritDocEnabled>
20+
<GenerateDocumentationFile>true</GenerateDocumentationFile>
1821

1922
</PropertyGroup>
2023

@@ -30,8 +33,15 @@
3033
</None>
3134
</ItemGroup>
3235

36+
<!-- netstandard2.0 has bad xml docs -->
37+
<PropertyGroup Condition="'$(TargetFramework)'=='netstandard2.0'">
38+
<NoWarn>$(NoWarn);IDT001;IDT002</NoWarn>
39+
</PropertyGroup>
40+
3341
<ItemGroup>
3442
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="All"/>
3543
<PackageReference Include="ConfigureAwaitChecker.Analyzer" Version="4.0.0" PrivateAssets="All" />
44+
<PackageReference Include="SauceControl.InheritDoc" Version="1.2.0" PrivateAssets="All" />
3645
</ItemGroup>
46+
3747
</Project>

src/Elastic.Transport.VirtualizedCluster/Elastic.Transport.VirtualizedCluster.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<Title>Elastic.Transport.VirtualizedCluster - An in memory IConnection that can simulate large cluster</Title>
55
<PackageTags>elasticsearch;elastic;search;lucene;nest</PackageTags>
66
<Description>Provides a way to assert transport behaviour through a rule engine backed VirtualClusterConnection</Description>
7-
<NoWarn>CS1591</NoWarn>
7+
<NoWarn>CS1591;$(NoWarn);IDT001</NoWarn>
88
</PropertyGroup>
99

1010
<PropertyGroup>

src/Elastic.Transport.VirtualizedCluster/Rules/RuleBase.cs

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,23 +9,34 @@ namespace Elastic.Transport.VirtualizedCluster.Rules
99
{
1010
public interface IRule
1111
{
12+
/// <summary>The value or exception to return after the call succeeds</summary>
1213
RuleOption<Exception, int> AfterSucceeds { get; set; }
14+
15+
/// <summary>This rule is constrain on the node with this port number</summary>
1316
int? OnPort { get; set; }
1417

15-
/// <summary>
16-
/// Either a hard exception or soft HTTP error code
17-
/// </summary>
18+
/// <summary> Either a hard exception or soft HTTP error code</summary>
1819
RuleOption<Exception, int> Return { get; set; }
1920

21+
/// <summary>Set an explicit return content type for the API call</summary>
2022
string ReturnContentType { get; set; }
2123

24+
/// <summary>Explicitly set the bytes returned by the API call, optional.</summary>
2225
byte[] ReturnResponse { get; set; }
26+
27+
/// <summary>Whether this rule describes an API call succeeding or not</summary>
2328
bool Succeeds { get; set; }
29+
30+
/// <summary>Simulate a long running call</summary>
2431
TimeSpan? Takes { get; set; }
32+
33+
/// <summary> The number of times this rule stays valid after being called</summary>
2534
RuleOption<TimesHelper.AllTimes, int> Times { get; set; }
2635

36+
/// <summary> The amount of times this rule has been executed</summary>
2737
int Executed { get; }
2838

39+
/// <summary> Mark a rule as executed </summary>
2940
void RecordExecuted();
3041
}
3142

src/Elastic.Transport.VirtualizedCluster/Rules/SniffRule.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ namespace Elastic.Transport.VirtualizedCluster.Rules
99
{
1010
public interface ISniffRule : IRule
1111
{
12+
/// <summary> The new cluster state after the sniff returns </summary>
1213
VirtualCluster NewClusterState { get; set; }
1314
}
1415

src/Elastic.Transport/Components/Serialization/DiagnosticsSerializerProxy.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,10 +50,10 @@ public class DiagnosticsSerializerProxy : ITransportSerializer
5050
private static DiagnosticSource DiagnosticSource { get; } = new DiagnosticListener(DiagnosticSources.Serializer.SourceName);
5151

5252
/// <summary>
53-
/// <inheritdoc cref="DiagnosticsSerializerProxy"/>
53+
/// <inheritdoc cref="DiagnosticsSerializerProxy" path="/summary"/>
5454
/// </summary>
5555
/// <param name="serializer">The serializer we are proxying</param>
56-
/// <param name="purpose"><inheritdoc cref="SerializerRegistrationInformation.Purpose"/></param>
56+
/// <param name="purpose"><inheritdoc cref="SerializerRegistrationInformation.Purpose" path="/summary"/></param>
5757
public DiagnosticsSerializerProxy(ITransportSerializer serializer, string purpose = "request/response")
5858
{
5959
_serializer = serializer;

src/Elastic.Transport/Components/Serialization/ISerializer.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@ public interface ITransportSerializer
2525
/// <summary> Deserialize <paramref name="stream"/> to an instance of <typeparamref name="T" /></summary>
2626
T Deserialize<T>(Stream stream);
2727

28-
/// <inheritdoc cref="DeserializeAsync"/>
28+
/// <inheritdoc cref="Deserialize"/>
2929
Task<object> DeserializeAsync(Type type, Stream stream, CancellationToken cancellationToken = default);
3030

31-
/// <inheritdoc cref="DeserializeAsync{T}"/>
31+
/// <inheritdoc cref="Deserialize"/>
3232
Task<T> DeserializeAsync<T>(Stream stream, CancellationToken cancellationToken = default);
3333

3434
/// <summary>

src/Elastic.Transport/Components/Serialization/TransportSerializerExtensions.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ public static byte[] SerializeToBytes<T>(
2626
/// A factory yielding MemoryStream instances, defaults to <see cref="RecyclableMemoryStreamFactory"/>
2727
/// that yields memory streams backed by pooled byte arrays.
2828
/// </param>
29-
/// <param name="serializer"><inheritdoc cref="ITransportSerializer" /></param>
30-
/// <param name="formatting"><inheritdoc cref="SerializationFormatting"/></param>
29+
/// <param name="serializer"><inheritdoc cref="ITransportSerializer" path="/summary"/></param>
30+
/// <param name="formatting"><inheritdoc cref="SerializationFormatting" path="/summary"/></param>
3131
public static byte[] SerializeToBytes<T>(
3232
this ITransportSerializer serializer,
3333
T data,
@@ -60,8 +60,8 @@ public static string SerializeToString<T>(
6060
/// A factory yielding MemoryStream instances, defaults to <see cref="RecyclableMemoryStreamFactory"/>
6161
/// that yields memory streams backed by pooled byte arrays.
6262
/// </param>
63-
/// <param name="serializer"><inheritdoc cref="ITransportSerializer" /></param>
64-
/// <param name="formatting"><inheritdoc cref="SerializationFormatting"/></param>
63+
/// <param name="serializer"><inheritdoc cref="ITransportSerializer" path="/summary"/></param>
64+
/// <param name="formatting"><inheritdoc cref="SerializationFormatting" path="/summary"/></param>
6565
public static string SerializeToString<T>(
6666
this ITransportSerializer serializer,
6767
T data,

src/Elastic.Transport/Configuration/ITransportConfiguration.cs

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -247,18 +247,9 @@ public interface ITransportConfiguration : IDisposable
247247
/// </summary>
248248
bool TransferEncodingChunked { get; }
249249

250-
#pragma warning disable 1587
251-
#pragma warning disable 1570
252250
/// <summary>
253251
/// DnsRefreshTimeout for the connections. Defaults to 5 minutes.
254-
#if DOTNETCORE
255-
/// <para>Will create new instances of <see cref="System.Net.Http.HttpClient"/> after this timeout to force DNS updates</para>
256-
#else
257-
/// <para>Will set <see cref="System.Net.ServicePointManager.ConnectionLeaseTimeout "/>
258-
#endif
259-
/// </summary>
260-
#pragma warning restore 1570
261-
#pragma warning restore 1587
252+
/// </summary>
262253
TimeSpan DnsRefreshTimeout { get; }
263254

264255
/// <summary>

src/Elastic.Transport/Configuration/TransportConfiguration.cs

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ private static bool UsingCurlHandler
109109
/// Creates a new instance of <see cref="TransportConfiguration"/>
110110
/// </summary>
111111
/// <param name="uri">The root of the Elastic stack product node we want to connect to. Defaults to http://localhost:9200</param>
112-
/// <param name="productRegistration"><inheritdoc cref="IProductRegistration"/></param>
112+
/// <param name="productRegistration"><inheritdoc cref="IProductRegistration" path="/summary"/></param>
113113
[SuppressMessage("Microsoft.Reliability", "CA2000:Dispose objects before losing scope")]
114114
public TransportConfiguration(Uri uri = null, IProductRegistration productRegistration = null)
115115
: this(new SingleNodeConnectionPool(uri ?? new Uri("http://localhost:9200")), productRegistration: productRegistration) { }
@@ -128,11 +128,11 @@ public TransportConfiguration(string cloudId, BasicAuthentication credentials, I
128128
public TransportConfiguration(string cloudId, Base64ApiKey credentials, IProductRegistration productRegistration = null)
129129
: this(new CloudConnectionPool(cloudId, credentials), productRegistration: productRegistration) { }
130130

131-
/// <summary> <inheritdoc cref="TransportConfiguration"/></summary>
132-
/// <param name="connectionPool"><inheritdoc cref="IConnectionPool"/></param>
133-
/// <param name="connection"><inheritdoc cref="IConnection"/></param>
134-
/// <param name="serializer"><inheritdoc cref="ITransportSerializer"/></param>
135-
/// <param name="productRegistration"><inheritdoc cref="IProductRegistration"/></param>
131+
/// <summary> <inheritdoc cref="TransportConfiguration" path="/summary"/></summary>
132+
/// <param name="connectionPool"><inheritdoc cref="IConnectionPool" path="/summary"/></param>
133+
/// <param name="connection"><inheritdoc cref="IConnection" path="/summary"/></param>
134+
/// <param name="serializer"><inheritdoc cref="ITransportSerializer" path="/summary"/></param>
135+
/// <param name="productRegistration"><inheritdoc cref="IProductRegistration" path="/summary"/></param>
136136
public TransportConfiguration(
137137
IConnectionPool connectionPool,
138138
IConnection connection = null,
@@ -196,10 +196,10 @@ public abstract class TransportConfigurationBase<T> : ITransportConfiguration
196196
/// <summary>
197197
/// <inheritdoc cref="TransportConfiguration"/>
198198
/// </summary>
199-
/// <param name="connectionPool"><inheritdoc cref="IConnectionPool"/></param>
200-
/// <param name="connection"><inheritdoc cref="IConnection"/></param>
201-
/// <param name="requestResponseSerializer"><inheritdoc cref="ITransportSerializer"/></param>
202-
/// <param name="productRegistration"><inheritdoc cref="IProductRegistration"/></param>
199+
/// <param name="connectionPool"><inheritdoc cref="IConnectionPool" path="/summary"/></param>
200+
/// <param name="connection"><inheritdoc cref="IConnection" path="/summary"/></param>
201+
/// <param name="requestResponseSerializer"><inheritdoc cref="ITransportSerializer" path="/summary"/></param>
202+
/// <param name="productRegistration"><inheritdoc cref="IProductRegistration" path="/summary"/></param>
203203
protected TransportConfigurationBase(IConnectionPool connectionPool, IConnection connection, ITransportSerializer requestResponseSerializer, IProductRegistration productRegistration)
204204
{
205205
_connectionPool = connectionPool;
@@ -298,8 +298,8 @@ private static void DefaultRequestDataCreated(RequestData response) { }
298298
/// Sets the keep-alive option on a TCP connection.
299299
/// <para>For Desktop CLR, sets ServicePointManager.SetTcpKeepAlive</para>
300300
/// </summary>
301-
/// <param name="keepAliveTime"><inheritdoc cref="ITransportConfiguration.KeepAliveTime"/></param>
302-
/// <param name="keepAliveInterval"><inheritdoc cref="ITransportConfiguration.KeepAliveInterval"/></param>
301+
/// <param name="keepAliveTime"><inheritdoc cref="ITransportConfiguration.KeepAliveTime" path="/summary"/></param>
302+
/// <param name="keepAliveInterval"><inheritdoc cref="ITransportConfiguration.KeepAliveInterval" path="/summary"/></param>
303303
public T EnableTcpKeepAlive(TimeSpan keepAliveTime, TimeSpan keepAliveInterval) =>
304304
Assign(keepAliveTime, (a, v) => a._keepAliveTime = v)
305305
.Assign(keepAliveInterval, (a, v) => a._keepAliveInterval = v);
@@ -308,7 +308,7 @@ public T EnableTcpKeepAlive(TimeSpan keepAliveTime, TimeSpan keepAliveInterval)
308308
public T MaximumRetries(int maxRetries) => Assign(maxRetries, (a, v) => a._maxRetries = v);
309309

310310
/// <summary>
311-
/// <inheritdoc cref="ITransportConfiguration.ConnectionLimit"/>
311+
/// <inheritdoc cref="ITransportConfiguration.ConnectionLimit" path="/summary"/>
312312
/// </summary>
313313
/// <param name="connectionLimit">The connection limit, a value lower then 0 will cause the connection limit not to be set at all</param>
314314
public T ConnectionLimit(int connectionLimit) => Assign(connectionLimit, (a, v) => a._connectionLimit = v);
@@ -321,7 +321,7 @@ public T SniffOnConnectionFault(bool sniffsOnConnectionFault = true) =>
321321
public T SniffOnStartup(bool sniffsOnStartup = true) => Assign(sniffsOnStartup, (a, v) => a._sniffOnStartup = v);
322322

323323
/// <summary>
324-
/// <inheritdoc cref="ITransportConfiguration.SniffInformationLifeSpan"/>
324+
/// <inheritdoc cref="ITransportConfiguration.SniffInformationLifeSpan" path="/summary"/>
325325
/// </summary>
326326
/// <param name="sniffLifeSpan">The duration a clusterstate is considered fresh, set to null to disable periodic sniffing</param>
327327
public T SniffLifeSpan(TimeSpan? sniffLifeSpan) => Assign(sniffLifeSpan, (a, v) => a._sniffLifeSpan = v);

0 commit comments

Comments
 (0)