1+ using System . Threading ;
2+ using System . Threading . Tasks ;
3+ using JenkinsNET . Models ;
4+
5+ namespace JenkinsNET
6+ {
7+ /// <summary>
8+ /// Methods for interacting with Jenkins API.
9+ /// </summary>
10+ public interface IJenkinsClient
11+ {
12+ /// <summary>
13+ /// Group of methods for interacting with Jenkins Jobs.
14+ /// </summary>
15+ JenkinsClientJobs Jobs { get ; }
16+
17+ /// <summary>
18+ /// Group of methods for interacting with Jenkins Builds.
19+ /// </summary>
20+ JenkinsClientBuilds Builds { get ; }
21+
22+ /// <summary>
23+ /// Group of methods for interacting with the Jenkins Job-Queue.
24+ /// </summary>
25+ JenkinsClientQueue Queue { get ; }
26+
27+ /// <summary>
28+ /// Group of methods for interacting with Jenkins Artifacts.
29+ /// </summary>
30+ JenkinsClientArtifacts Artifacts { get ; }
31+
32+ /// <summary>
33+ /// Updates the security Crumb attached to this client.
34+ /// </summary>
35+ /// <exception cref="JenkinsNetException"></exception>
36+ void UpdateSecurityCrumb ( ) ;
37+
38+
39+ /// <summary>
40+ /// Updates the security Crumb attached to this client asynchronously.
41+ /// </summary>
42+ /// <param name="token">An optional token for aborting the request.</param>
43+ /// <exception cref="JenkinsNetException"></exception>
44+ Task UpdateSecurityCrumbAsync ( CancellationToken token = default ( CancellationToken ) ) ;
45+
46+ /// <summary>
47+ /// Gets the root description of the Jenkins node.
48+ /// </summary>
49+ /// <exception cref="JenkinsNetException"></exception>
50+ Jenkins Get ( ) ;
51+
52+
53+ /// <summary>
54+ /// Gets the root description of the Jenkins node asynchronously.
55+ /// </summary>
56+ /// <param name="token">An optional token for aborting the request.</param>
57+ /// <exception cref="JenkinsNetException"></exception>
58+ Task < Jenkins > GetAsync ( CancellationToken token = default ( CancellationToken ) ) ;
59+ }
60+ }
0 commit comments