Skip to content

Commit 7cd4d37

Browse files
committed
user agent to options
move user agent to options
1 parent 852c354 commit 7cd4d37

File tree

3 files changed

+16
-9
lines changed

3 files changed

+16
-9
lines changed

codegens/csharp-restsharp/lib/parseRequest.js

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -148,10 +148,7 @@ function parseHeader (requestJson) {
148148

149149
return requestJson.header.reduce((headerSnippet, header) => {
150150
if (!header.disabled) {
151-
if (sanitize(header.key, true).toLowerCase() === 'user-agent') {
152-
headerSnippet += `client.UserAgent = "${sanitize(header.value)}";\n`;
153-
}
154-
else {
151+
if (sanitize(header.key, true).toLowerCase() !== 'user-agent') {
155152
headerSnippet += `request.AddHeader("${sanitize(header.key, true)}", "${sanitize(header.value)}");\n`;
156153
}
157154
}

codegens/csharp-restsharp/lib/restsharp.js

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,20 +23,30 @@ function capitalizeFirstLetter (string) {
2323
* @param {string} urlOrigin - String representing the origin of the url
2424
* @param {Object} options - Options to tweak code snippet
2525
* @param {string} indentString - String representing value of indentation required
26+
* @param {Array} headers - request headers
2627
* @returns {String} csharp-restsharp RestClientOptions object snippet
2728
*/
28-
function makeOptionsSnippet (urlOrigin, options, indentString) {
29-
let snippet = `var options = new RestClientOptions("${sanitize(urlOrigin)}")\n{\n`;
29+
function makeOptionsSnippet (urlOrigin, options, indentString, headers) {
30+
let userAgentHeader,
31+
snippet = `var options = new RestClientOptions("${sanitize(urlOrigin)}")\n{\n`;
32+
if (Array.isArray(headers)) {
33+
userAgentHeader = headers.find((header) => {
34+
return (!header.disabled && sanitize(header.key, true).toLowerCase() === 'user-agent');
35+
36+
});
37+
}
3038
if (options.requestTimeout) {
3139
snippet += `${indentString}MaxTimeout = ${options.requestTimeout},\n`;
3240
}
3341
else {
3442
snippet += `${indentString}MaxTimeout = -1,\n`;
3543
}
36-
3744
if (!options.followRedirect) {
3845
snippet += `${indentString}FollowRedirects = false,\n`;
3946
}
47+
if (userAgentHeader) {
48+
snippet += `${indentString}UserAgent = "${userAgentHeader.value}",\n`;
49+
}
4050
snippet += '};\n';
4151
return snippet;
4252
}
@@ -84,7 +94,7 @@ function makeSnippet (request, options, indentString) {
8494
urlOrigin = url ? parseURL(request.url.toString()).origin : request.url.toString(),
8595
urlPathAndHash = url ? request.url.toString().replace(urlOrigin, '') : '';
8696

87-
let snippet = makeOptionsSnippet(urlOrigin, options, indentString);
97+
let snippet = makeOptionsSnippet(urlOrigin, options, indentString, request.toJSON().header);
8898
snippet += 'var client = new RestClient(options);\n';
8999
snippet += `var request = new RestRequest("${sanitize(urlPathAndHash)}", ` +
90100
`${isUnSupportedMethod ? 'Method.Get' : ('Method.' + capitalizeFirstLetter(request.method))});\n`;

codegens/csharp-restsharp/test/unit/convert.test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@ describe('csharp restsharp function', function () {
205205

206206
it('should use client.UserAgent instead of AddHeader function', function () {
207207
const sampleUA = 'Safari/605.1.15',
208-
expectValue = `client.UserAgent = "${sampleUA}";`;
208+
expectValue = `UserAgent = "${sampleUA}",`;
209209

210210
var request = new sdk.Request({
211211
'method': 'GET',

0 commit comments

Comments
 (0)