@@ -15,12 +15,19 @@ namespace Dnn.ExportImport.Services
1515 using DotNetNuke . Services . Localization ;
1616 using DotNetNuke . Web . Api ;
1717
18+ /// <summary>
19+ /// REST APIs to manage import/export jobs.
20+ /// </summary>
1821 [ RequireHost ]
1922 public class ExportImportController : DnnApiController
2023 {
24+ /// <summary>
25+ /// Exports the specified site.
26+ /// </summary>
27+ /// <param name="exportDto">The details needed to export a site.</param>
28+ /// <returns>OK.</returns>
2129 [ HttpPost ]
2230 [ ValidateAntiForgeryToken ]
23-
2431 public HttpResponseMessage Export ( ExportDto exportDto )
2532 {
2633 var controller = new ExportController ( ) ;
@@ -29,14 +36,17 @@ public HttpResponseMessage Export(ExportDto exportDto)
2936 return this . Request . CreateResponse ( HttpStatusCode . OK , new { jobId } ) ;
3037 }
3138
39+ /// <summary>
40+ /// Imports a site.
41+ /// </summary>
42+ /// <param name="importDto">The details required to import a site.</param>
43+ /// <returns>OK or BadRequest with a message.</returns>
3244 [ HttpPost ]
3345 [ ValidateAntiForgeryToken ]
34-
3546 public HttpResponseMessage Import ( ImportDto importDto )
3647 {
3748 var controller = new ImportController ( ) ;
38- string message ;
39- if ( controller . VerifyImportPackage ( importDto . PackageId , null , out message ) )
49+ if ( controller . VerifyImportPackage ( importDto . PackageId , null , out var message ) )
4050 {
4151 var jobId = controller . QueueOperation ( this . PortalSettings . UserId , importDto ) ;
4252 return this . Request . CreateResponse ( HttpStatusCode . OK , new { jobId } ) ;
@@ -45,14 +55,17 @@ public HttpResponseMessage Import(ImportDto importDto)
4555 return this . Request . CreateErrorResponse ( HttpStatusCode . BadRequest , message ) ;
4656 }
4757
58+ /// <summary>
59+ /// Verifies an import package validity.
60+ /// </summary>
61+ /// <param name="packageId">The ID of the package to validate.</param>
62+ /// <returns>OK with a summary or BadRequest with an error message.</returns>
4863 [ HttpGet ]
49-
5064 public HttpResponseMessage VerifyImportPackage ( string packageId )
5165 {
5266 var controller = new ImportController ( ) ;
53- string message ;
5467 var summary = new ImportExportSummary ( ) ;
55- var isValid = controller . VerifyImportPackage ( packageId , summary , out message ) ;
68+ var isValid = controller . VerifyImportPackage ( packageId , summary , out var message ) ;
5669 summary . ConvertToLocal ( this . UserInfo ) ;
5770 return isValid
5871 ? this . Request . CreateResponse ( HttpStatusCode . OK , summary )
@@ -66,20 +79,22 @@ public HttpResponseMessage VerifyImportPackage(string packageId)
6679 /// <param name="pageSize">Page size. Should not be more than 100.</param>
6780 /// <returns>An <see cref="HttpResponseMessage"/>.</returns>
6881 [ HttpGet ]
69-
7082 public HttpResponseMessage GetImportPackages ( string keyword = "" , string order = "newest" , int pageIndex = 0 , int pageSize = 10 )
7183 {
7284 var controller = new ImportController ( ) ;
73- int total ;
74- var packages = controller . GetImportPackages ( out total , keyword , order , pageIndex , pageSize ) . ToList ( ) ;
85+ var packages = controller . GetImportPackages ( out var total , keyword , order , pageIndex , pageSize ) . ToList ( ) ;
7586 packages . ForEach ( package => package . ConvertToLocal ( this . UserInfo ) ) ;
7687 return this . Request . CreateResponse ( HttpStatusCode . OK , new { packages , total } ) ;
7788 }
7889
79- // this is POST so users can't cancel using a simple browser link
90+ /// <summary>
91+ /// Cancels a job.
92+ /// </summary>
93+ /// <param name="jobId">The ID of the job to cancel.</param>
94+ /// <remarks>This is a POST so users can't cancel using a simple browser link.</remarks>
95+ /// <returns>OK or a BadRequest with a cancel status value.</returns>
8096 [ HttpPost ]
8197 [ ValidateAntiForgeryToken ]
82-
8398 public HttpResponseMessage CancelProcess ( [ FromUri ] int jobId )
8499 {
85100 var controller = new BaseController ( ) ;
@@ -88,10 +103,14 @@ public HttpResponseMessage CancelProcess([FromUri] int jobId)
88103 cancelStatus ? HttpStatusCode . OK : HttpStatusCode . BadRequest , new { success = cancelStatus } ) ;
89104 }
90105
91- // this is POST so users can't remove a job using a browser link
106+ /// <summary>
107+ /// Removes a job.
108+ /// </summary>
109+ /// <param name="jobId">The ID of the job to remove.</param>
110+ /// <remarks>This is a POST so users can't remove a job using a browser link.</remarks>
111+ /// <returns>OK or a BadRequest with a status value.</returns>
92112 [ HttpPost ]
93113 [ ValidateAntiForgeryToken ]
94-
95114 public HttpResponseMessage RemoveJob ( [ FromUri ] int jobId )
96115 {
97116 var controller = new BaseController ( ) ;
@@ -100,8 +119,13 @@ public HttpResponseMessage RemoveJob([FromUri] int jobId)
100119 cancelStatus ? HttpStatusCode . OK : HttpStatusCode . BadRequest , new { success = cancelStatus } ) ;
101120 }
102121
122+ /// <summary>
123+ /// Gets the last job time.
124+ /// </summary>
125+ /// <param name="portal">The ID of the portal to check.</param>
126+ /// <param name="jobType">Type of the job.</param>
127+ /// <returns>OK with the last time or a BadRequest with a message.</returns>
103128 [ HttpGet ]
104-
105129 public HttpResponseMessage LastJobTime ( int portal , JobType jobType )
106130 {
107131 if ( ! this . UserInfo . IsSuperUser && portal != this . PortalSettings . PortalId )
@@ -124,8 +148,16 @@ public HttpResponseMessage LastJobTime(int portal, JobType jobType)
124148 new { lastTime = Util . GetDateTimeString ( lastTime ) } ) ;
125149 }
126150
151+ /// <summary>
152+ /// Gets all the jobs.
153+ /// </summary>
154+ /// <param name="portal">The ID of the portal to check.</param>
155+ /// <param name="pageSize">Size of the page.</param>
156+ /// <param name="pageIndex">Index of the page.</param>
157+ /// <param name="jobType">Type of the job.</param>
158+ /// <param name="keywords">The keywords to search for.</param>
159+ /// <returns>OK with a list of jobs or a BadRequest with an error message.</returns>
127160 [ HttpGet ]
128-
129161 public HttpResponseMessage AllJobs ( int portal , int ? pageSize = 10 , int ? pageIndex = 0 , int ? jobType = null , string keywords = null )
130162 {
131163 if ( ! this . UserInfo . IsSuperUser && portal != this . PortalSettings . PortalId )
@@ -140,8 +172,12 @@ public HttpResponseMessage AllJobs(int portal, int? pageSize = 10, int? pageInde
140172 return this . Request . CreateResponse ( HttpStatusCode . OK , jobs ) ;
141173 }
142174
175+ /// <summary>
176+ /// Jobs the details about a single job.
177+ /// </summary>
178+ /// <param name="jobId">The ID of the job to get.</param>
179+ /// <returns>OK with the job details or BadRequest with an error message.</returns>
143180 [ HttpGet ]
144-
145181 public HttpResponseMessage JobDetails ( int jobId )
146182 {
147183 var controller = new BaseController ( ) ;
0 commit comments