Skip to content

Commit 30569da

Browse files
committed
Release Aspose.Cells Cloud SDK 24.6.0
1 parent 05b3240 commit 30569da

34 files changed

+411
-225
lines changed
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
using Aspose.Cells.Cloud.SDK.Api;
2+
using Aspose.Cells.Cloud.SDK.Model;
3+
using Aspose.Cells.Cloud.SDK.Request;
4+
using System;
5+
using System.IO;
6+
using System.Collections.Generic;
7+
8+
CellsApi cellsApi = new CellsApi("xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx");
9+
string remoteFolder = "TestData/In";
10+
11+
string localName = "BookTableL2W.xlsx";
12+
string remoteName = "BookTableL2W.xlsx";
13+
14+
this.UploadFile( localName, remoteFolder + "/" + remoteName, "");
15+
16+
var dataTransformationRequestLoadDataLoadTo = new LoadTo()
17+
{
18+
beginColumnIndex = 2,
19+
beginRowIndex = 3,
20+
Worksheet = "L2W"
21+
};
22+
var dataTransformationRequestLoadDataDataQueryDataItem = new DataItem()
23+
{
24+
DataItemType = "Table",
25+
Value = "Table1"
26+
};
27+
var dataTransformationRequestLoadDataDataQueryDataSource = new DataSource()
28+
{
29+
DataSourceType = "CloudFileSystem",
30+
DataPath = "BookTableL2W.xlsx"
31+
};
32+
var dataTransformationRequestLoadDataDataQuery = new DataQuery()
33+
{
34+
Name = "DataQuery",
35+
DataItem = dataTransformationRequestLoadDataDataQueryDataItem,
36+
DataSource = dataTransformationRequestLoadDataDataQueryDataSource,
37+
DataSourceDataType = "ListObject"
38+
};
39+
var dataTransformationRequestLoadData = new LoadData()
40+
{
41+
LoadTo = dataTransformationRequestLoadDataLoadTo,
42+
DataQuery = dataTransformationRequestLoadDataDataQuery
43+
};
44+
var dataTransformationRequestAppliedStepsAppliedStep0AppliedOperateUnpivotColumnNames = new List<string>()
45+
{
46+
"2017",
47+
"2018",
48+
"2019"
49+
};
50+
var dataTransformationRequestAppliedStepsAppliedStep0AppliedOperate = new UnpivotColumn()
51+
{
52+
AppliedOperateType = "UnpivotColumn",
53+
ValueMapName = "Count",
54+
ColumnMapName = "Date",
55+
UnpivotColumnNames = dataTransformationRequestAppliedStepsAppliedStep0AppliedOperateUnpivotColumnNames
56+
};
57+
var dataTransformationRequestAppliedStepsAppliedStep0 = new AppliedStep()
58+
{
59+
StepName = "UnpivotColumn",
60+
AppliedOperate = dataTransformationRequestAppliedStepsAppliedStep0AppliedOperate
61+
};
62+
var dataTransformationRequestAppliedSteps = new List<AppliedStep>()
63+
{
64+
dataTransformationRequestAppliedStepsAppliedStep0
65+
};
66+
var dataTransformationRequest = new DataTransformationRequest()
67+
{
68+
LoadData = dataTransformationRequestLoadData,
69+
AppliedSteps = dataTransformationRequestAppliedSteps
70+
};
71+
var request = new PostDataTransformationRequest(
72+
);
73+
this.CellsApi.PostDataTransformation(request);

Aspose.Cells.Cloud.SDK.Test/Api/DataProcessingControllerTests.cs

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,5 +130,78 @@ public void TestPostWorkbookDataFill()
130130
var actual = this.CellsApi.PostWorkbookDataFill(request);
131131
Assert.IsNotNull(actual);
132132
}
133+
134+
/// <summary>
135+
/// Test for PostDataTransformation of DataProcessingController.
136+
/// </summary>
137+
[TestCategory(ProductName)]
138+
[TestMethod]
139+
public void TestPostDataTransformation()
140+
{
141+
string localName = "BookTableL2W.xlsx";
142+
string remoteName = "BookTableL2W.xlsx";
143+
144+
this.UploadFile( localName, remoteFolder + "/" + remoteName, "");
145+
146+
var dataTransformationRequestLoadDataLoadTo = new LoadTo()
147+
{
148+
beginColumnIndex = 2,
149+
beginRowIndex = 3,
150+
Worksheet = "L2W"
151+
};
152+
var dataTransformationRequestLoadDataDataQueryDataItem = new DataItem()
153+
{
154+
DataItemType = "Table",
155+
Value = "Table1"
156+
};
157+
var dataTransformationRequestLoadDataDataQueryDataSource = new DataSource()
158+
{
159+
DataSourceType = "CloudFileSystem",
160+
DataPath = "BookTableL2W.xlsx"
161+
};
162+
var dataTransformationRequestLoadDataDataQuery = new DataQuery()
163+
{
164+
Name = "DataQuery",
165+
DataItem = dataTransformationRequestLoadDataDataQueryDataItem,
166+
DataSource = dataTransformationRequestLoadDataDataQueryDataSource,
167+
DataSourceDataType = "ListObject"
168+
};
169+
var dataTransformationRequestLoadData = new LoadData()
170+
{
171+
LoadTo = dataTransformationRequestLoadDataLoadTo,
172+
DataQuery = dataTransformationRequestLoadDataDataQuery
173+
};
174+
var dataTransformationRequestAppliedStepsAppliedStep0AppliedOperateUnpivotColumnNames = new List<string>()
175+
{
176+
"2017",
177+
"2018",
178+
"2019"
179+
};
180+
var dataTransformationRequestAppliedStepsAppliedStep0AppliedOperate = new UnpivotColumn()
181+
{
182+
AppliedOperateType = "UnpivotColumn",
183+
ValueMapName = "Count",
184+
ColumnMapName = "Date",
185+
UnpivotColumnNames = dataTransformationRequestAppliedStepsAppliedStep0AppliedOperateUnpivotColumnNames
186+
};
187+
var dataTransformationRequestAppliedStepsAppliedStep0 = new AppliedStep()
188+
{
189+
StepName = "UnpivotColumn",
190+
AppliedOperate = dataTransformationRequestAppliedStepsAppliedStep0AppliedOperate
191+
};
192+
var dataTransformationRequestAppliedSteps = new List<AppliedStep>()
193+
{
194+
dataTransformationRequestAppliedStepsAppliedStep0
195+
};
196+
var dataTransformationRequest = new DataTransformationRequest()
197+
{
198+
LoadData = dataTransformationRequestLoadData,
199+
AppliedSteps = dataTransformationRequestAppliedSteps
200+
};
201+
var request = new PostDataTransformationRequest(
202+
);
203+
var actual = this.CellsApi.PostDataTransformation(request);
204+
Assert.IsNotNull(actual);
205+
}
133206
}
134207
}

Aspose.Cells.Cloud.SDK/Aspose.Cells.Cloud.SDK.csproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project Sdk="Microsoft.NET.Sdk">
33
<PropertyGroup>
4-
<TargetFrameworks>Net6</TargetFrameworks>
4+
<TargetFrameworks>net6.0;net452;netstandard2.0</TargetFrameworks>
55
<AssemblyName>Aspose.Cells.Cloud.SDK</AssemblyName>
66
<PackageId>Aspose.Cells-Cloud</PackageId>
77
<OutputType>Library</OutputType>
@@ -17,9 +17,9 @@
1717
<RepositoryType>GitHub</RepositoryType>
1818
<Copyright>MIT</Copyright>
1919
<StyleCopTreatErrorsAsWarnings>false</StyleCopTreatErrorsAsWarnings>
20-
<AssemblyVersion>24.5.1</AssemblyVersion>
21-
<FileVersion>24.5.1</FileVersion>
22-
<Version>24.5.1</Version>
20+
<AssemblyVersion>24.6</AssemblyVersion>
21+
<FileVersion>24.6</FileVersion>
22+
<Version>24.6</Version>
2323
<PackageReadmeFile>README.md</PackageReadmeFile>
2424

2525
</PropertyGroup>

Aspose.Cells.Cloud.SDK/Infrastructure/Invoker/ApiInvoker.cs

Lines changed: 39 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ internal class ApiInvoker
5050
internal ApiInvoker(List<IRequestHandler> requestHandlers)
5151
{
5252
this.AddDefaultHeader(AsposeClientHeaderName, ".net sdk");
53-
this.AddDefaultHeader(AsposeClientVersionHeaderName, "24.5");
53+
this.AddDefaultHeader(AsposeClientVersionHeaderName, "24.6");
5454
this.requestHandlers = requestHandlers;
5555
}
5656

@@ -240,10 +240,6 @@ private async Task<T> InvokeInternalAsync<T>(
240240
private async Task<T> InvokeInternalAsync<T>(HttpWebRequest httpWebRequest) where T : class
241241
{
242242
string path = httpWebRequest.RequestUri.AbsolutePath;
243-
foreach (var defaultHeader in this.defaultHeaderMap)
244-
{
245-
httpWebRequest.Headers.Add(defaultHeader.Key, defaultHeader.Value);
246-
}
247243

248244
try
249245
{
@@ -262,27 +258,27 @@ internal HttpWebRequest PrepareRequest(string path, string method, Dictionary<st
262258
var client = (HttpWebRequest)WebRequest.Create(path);
263259

264260
client.Method = method;
265-
client.Timeout = 600000;
261+
client.Timeout = 1200000;
266262
byte[] formData = null;
267263
if (formParams.Count > 0)
268264
{
269-
if (formParams.Count > 0)
270-
{
271-
string formDataBoundary = Guid.NewGuid().ToString("D");
272-
client.ContentType = "multipart/form-data; boundary=" + formDataBoundary;
273-
formData = GetMultipartFormData(formParams, formDataBoundary);
274-
}
275-
else
276-
{
277-
client.ContentType = "multipart/form-data";
278-
formData = GetMultipartFormData(formParams, string.Empty);
279-
}
280-
265+
string formDataBoundary = Guid.NewGuid().ToString("D");
266+
client.ContentType = "multipart/form-data; boundary=" + formDataBoundary;
267+
formData = GetMultipartFormData(formParams, formDataBoundary);
281268
client.ContentLength = formData.Length;
282269
}
283270
else
284271
{
285272
client.ContentType = contentType;
273+
if (body != null)
274+
{
275+
byte[] bodyBytes = Encoding.UTF8.GetBytes(body);
276+
client.ContentLength = bodyBytes.Length;
277+
}
278+
else
279+
{
280+
client.ContentLength = 0;
281+
}
286282
}
287283

288284
foreach (var headerParamsItem in headerParams)
@@ -296,7 +292,15 @@ internal HttpWebRequest PrepareRequest(string path, string method, Dictionary<st
296292
foreach (var defaultHeaderMapItem in defaultHeaderMap)
297293
if (!headerParams.ContainsKey(defaultHeaderMapItem.Key))
298294
client.Headers.Add(defaultHeaderMapItem.Key, defaultHeaderMapItem.Value);
299-
295+
foreach (var defaultHeader in this.defaultHeaderMap)
296+
{
297+
client.Headers.Remove(defaultHeader.Key);
298+
client.Headers.Add(defaultHeader.Key, defaultHeader.Value);
299+
}
300+
if (client.ContentLength > 0 && string.IsNullOrEmpty(client.ContentType))
301+
{
302+
throw new InvalidOperationException("Content length is set but content type is missing.");
303+
}
300304
MemoryStream streamToSend = null;
301305
try
302306
{
@@ -326,6 +330,22 @@ internal HttpWebRequest PrepareRequest(string path, string method, Dictionary<st
326330

327331
requestHandlers.ForEach(p => p.BeforeSend(client, streamToSend));
328332

333+
if (streamToSend != null)
334+
{
335+
try
336+
{
337+
streamToSend.Position = 0;
338+
using (var reader = new StreamReader(streamToSend, Encoding.UTF8, true, 1024, true))
339+
{
340+
var serializedContent = reader.ReadToEnd();
341+
}
342+
}
343+
catch (Exception ex)
344+
{
345+
throw new InvalidOperationException("Serialization check failed.", ex);
346+
}
347+
}
348+
329349
if (streamToSend != null)
330350
using (var requestStream = client.GetRequestStream())
331351
{

Aspose.Cells.Cloud.SDK/Model/AbstractCalculationMonitor.cs

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,22 +41,19 @@ namespace Aspose.Cells.Cloud.SDK.Model
4141
public class AbstractCalculationMonitor
4242
{
4343
/// <summary>
44-
/// Gets the old value of the calculated cell.
45-
/// Should be used only in and .
44+
/// Gets the old value of the calculated cell. Should be used only in and .
4645
///
4746
/// </summary>
4847
public virtual Object OriginalValue { get; set; }
4948

5049
/// <summary>
51-
/// Whether the cell's value has been changed after the calculation.
52-
/// Should be used only in .
50+
/// Whether the cell's value has been changed after the calculation. Should be used only in .
5351
///
5452
/// </summary>
5553
public virtual bool? ValueChanged { get; set; }
5654

5755
/// <summary>
58-
/// Gets the newly calculated value of the cell.
59-
/// Should be used only in .
56+
/// Gets the newly calculated value of the cell. Should be used only in .
6057
///
6158
/// </summary>
6259
public virtual Object CalculatedValue { get; set; }

Aspose.Cells.Cloud.SDK/Model/QueryDataSource.cs renamed to Aspose.Cells.Cloud.SDK/Model/AppliedOperate.cs

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// --------------------------------------------------------------------------------------------------------------------
2-
// <copyright company="Aspose" file="QueryDataSource.cs">
2+
// <copyright company="Aspose" file="AppliedOperate.cs">
33
// Copyright (c) 2024 Aspose.Cells Cloud
44
// </copyright>
55
// <summary>
@@ -35,24 +35,14 @@ namespace Aspose.Cells.Cloud.SDK.Model
3535
using Newtonsoft.Json.Converters;
3636

3737
/// <summary>
38-
///
38+
/// A data operation that is used to obtain a query of data.
3939
/// </summary>
40-
public class QueryDataSource
40+
public class AppliedOperate
4141
{
4242
/// <summary>
4343
///
4444
/// </summary>
45-
public virtual string DataSourceDataType { get; set; }
46-
47-
/// <summary>
48-
///
49-
/// </summary>
50-
public virtual DataSource DataFile { get; set; }
51-
52-
/// <summary>
53-
///
54-
/// </summary>
55-
public virtual string DataSource { get; set; }
45+
public virtual string AppliedOperateType { get; set; }
5646

5747
/// <summary>
5848
/// Get the string presentation of the object.
@@ -61,10 +51,8 @@ public class QueryDataSource
6151
public override string ToString()
6252
{
6353
var sb = new StringBuilder();
64-
sb.Append("class QueryDataSource {\n");
65-
sb.Append(" DataSourceDataType: ").Append(this.DataSourceDataType).Append("\n");
66-
sb.Append(" DataFile: ").Append(this.DataFile).Append("\n");
67-
sb.Append(" DataSource: ").Append(this.DataSource).Append("\n");
54+
sb.Append("class AppliedOperate {\n");
55+
sb.Append(" AppliedOperateType: ").Append(this.AppliedOperateType).Append("\n");
6856
sb.Append("}\n");
6957
return sb.ToString();
7058
}

Aspose.Cells.Cloud.SDK/Model/QueryDataSourceDataType.cs renamed to Aspose.Cells.Cloud.SDK/Model/AppliedOperateType.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
// --------------------------------------------------------------------------------------------------------------------
2-
// <copyright company="Aspose" file="QueryDataSourceDataType.cs">
2+
// <copyright company="Aspose" file="AppliedOperateType.cs">
33
// Copyright (c) 2024 Aspose.Cells Cloud
44
// </copyright>
55
// <summary>
@@ -35,10 +35,10 @@ namespace Aspose.Cells.Cloud.SDK.Model
3535
using Newtonsoft.Json.Converters;
3636

3737
/// <summary>
38-
///
38+
/// Operation type.
3939
/// </summary>
4040
[JsonConverter(typeof(StringEnumConverter))]
41-
public enum QueryDataSourceDataType
41+
public enum AppliedOperateType
4242
{
4343
}
4444
}

0 commit comments

Comments
 (0)