Skip to content

Commit

Permalink
add bearer support to csharp client (#5975)
Browse files Browse the repository at this point in the history
  • Loading branch information
wing328 authored Apr 19, 2020
1 parent 84099ee commit a8620b8
Show file tree
Hide file tree
Showing 5 changed files with 66 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -119,9 +119,15 @@ namespace Example
{{#hasAuthMethods}}
{{#authMethods}}
{{#isBasic}}
{{#isBasicBasic}}
// Configure HTTP basic authorization: {{{name}}}
Configuration.Default.Username = "YOUR_USERNAME";
Configuration.Default.Password = "YOUR_PASSWORD";
{{/isBasicBasic}}
{{#isBasicBearer}}
// Configure HTTP bearer authorization: {{{name}}}
Configuration.Default.AccessToken = "YOUR_ACCESS_TOKEN";
{{/isBasicBearer}}
{{/isBasic}}
{{#isApiKey}}
// Configure API key authorization: {{{name}}}
Expand Down Expand Up @@ -205,8 +211,14 @@ Authentication schemes defined for the API:
- **Location**: {{#isKeyInQuery}}URL query string{{/isKeyInQuery}}{{#isKeyInHeader}}HTTP header{{/isKeyInHeader}}
{{/isApiKey}}
{{#isBasic}}
{{#isBasicBasic}}

- **Type**: HTTP basic authentication
{{/isBasicBasic}}
{{#isBasicBearer}}

- **Type**: HTTP bearer authentication
{{/isBasicBearer}}
{{/isBasic}}
{{#isOAuth}}

Expand Down
18 changes: 18 additions & 0 deletions modules/openapi-generator/src/main/resources/csharp/api.mustache
Original file line number Diff line number Diff line change
Expand Up @@ -278,11 +278,20 @@ namespace {{packageName}}.{{apiPackage}}
{{/isKeyInQuery}}
{{/isApiKey}}
{{#isBasic}}
{{#isBasicBasic}}
// http basic authentication required
if (!String.IsNullOrEmpty(this.Configuration.Username) || !String.IsNullOrEmpty(this.Configuration.Password))
{
localVarHeaderParams["Authorization"] = "Basic " + ApiClient.Base64Encode(this.Configuration.Username + ":" + this.Configuration.Password);
}
{{/isBasicBasic}}
{{#isBasicBearer}}
// http beerer authentication required
if (!String.IsNullOrEmpty(this.Configuration.AccessToken))
{
localVarHeaderParams["Authorization"] = "Bearer " + this.Configuration.AccessToken;
}
{{/isBasicBearer}}
{{/isBasic}}
{{#isOAuth}}
// oauth required
Expand Down Expand Up @@ -414,11 +423,20 @@ namespace {{packageName}}.{{apiPackage}}
{{/isKeyInQuery}}
{{/isApiKey}}
{{#isBasic}}
{{#isBasicBasic}}
// http basic authentication required
if (!String.IsNullOrEmpty(this.Configuration.Username) || !String.IsNullOrEmpty(this.Configuration.Password))
{
localVarHeaderParams["Authorization"] = "Basic " + ApiClient.Base64Encode(this.Configuration.Username + ":" + this.Configuration.Password);
}
{{/isBasicBasic}}
{{#isBasicBearer}}
// http bearer authentication required
if (!String.IsNullOrEmpty(this.Configuration.AccessToken))
{
localVarHeaderParams["Authorization"] = "Bearer " + this.Configuration.AccessToken;
}
{{/isBasicBearer}}
{{/isBasic}}
{{#isOAuth}}
// oauth required
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,15 @@ namespace Example
{{#hasAuthMethods}}
{{#authMethods}}
{{#isBasic}}
{{#isBasicBasic}}
// Configure HTTP basic authorization: {{{name}}}
Configuration.Default.Username = "YOUR_USERNAME";
Configuration.Default.Password = "YOUR_PASSWORD";
{{/isBasicBasic}}
{{#isBasicBearer}}
// Configure HTTP bearer authorization: {{{name}}}
Configuration.Default.AccessToken = "YOUR_ACCESS_TOKEN";
{{/isBasicBearer}}
{{/isBasic}}
{{#isApiKey}}
// Configure API key authorization: {{{name}}}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -367,6 +367,8 @@ public override int GetHashCode()
/// <returns>Validation Result</returns>
IEnumerable<System.ComponentModel.DataAnnotations.ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
{


// Integer (int) maximum
if(this.Integer > (int)100)
{
Expand All @@ -379,6 +381,8 @@ public override int GetHashCode()
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for Integer, must be a value greater than or equal to 10.", new [] { "Integer" });
}



// Int32 (int) maximum
if(this.Int32 > (int)200)
{
Expand All @@ -391,6 +395,8 @@ public override int GetHashCode()
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for Int32, must be a value greater than or equal to 20.", new [] { "Int32" });
}



// Number (decimal) maximum
if(this.Number > (decimal)543.2)
{
Expand All @@ -403,6 +409,8 @@ public override int GetHashCode()
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for Number, must be a value greater than or equal to 32.1.", new [] { "Number" });
}



// Float (float) maximum
if(this.Float > (float)987.6)
{
Expand All @@ -415,6 +423,8 @@ public override int GetHashCode()
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for Float, must be a value greater than or equal to 54.3.", new [] { "Float" });
}



// Double (double) maximum
if(this.Double > (double)123.4)
{
Expand All @@ -427,13 +437,17 @@ public override int GetHashCode()
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for Double, must be a value greater than or equal to 67.8.", new [] { "Double" });
}



// String (string) pattern
Regex regexString = new Regex(@"[a-z]", RegexOptions.CultureInvariant | RegexOptions.IgnoreCase);
if (false == regexString.Match(this.String).Success)
{
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for String, must match a pattern of " + regexString, new [] { "String" });
}



// Password (string) maxLength
if(this.Password != null && this.Password.Length > 64)
{
Expand All @@ -445,7 +459,7 @@ public override int GetHashCode()
{
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for Password, length must be greater than 10.", new [] { "Password" });
}

yield break;
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -390,6 +390,8 @@ public virtual void OnPropertyChanged(string propertyName)
/// <returns>Validation Result</returns>
IEnumerable<System.ComponentModel.DataAnnotations.ValidationResult> IValidatableObject.Validate(ValidationContext validationContext)
{


// Integer (int) maximum
if(this.Integer > (int)100)
{
Expand All @@ -402,6 +404,8 @@ public virtual void OnPropertyChanged(string propertyName)
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for Integer, must be a value greater than or equal to 10.", new [] { "Integer" });
}



// Int32 (int) maximum
if(this.Int32 > (int)200)
{
Expand All @@ -414,6 +418,8 @@ public virtual void OnPropertyChanged(string propertyName)
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for Int32, must be a value greater than or equal to 20.", new [] { "Int32" });
}



// Number (decimal) maximum
if(this.Number > (decimal)543.2)
{
Expand All @@ -426,6 +432,8 @@ public virtual void OnPropertyChanged(string propertyName)
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for Number, must be a value greater than or equal to 32.1.", new [] { "Number" });
}



// Float (float) maximum
if(this.Float > (float)987.6)
{
Expand All @@ -438,6 +446,8 @@ public virtual void OnPropertyChanged(string propertyName)
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for Float, must be a value greater than or equal to 54.3.", new [] { "Float" });
}



// Double (double) maximum
if(this.Double > (double)123.4)
{
Expand All @@ -450,13 +460,17 @@ public virtual void OnPropertyChanged(string propertyName)
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for Double, must be a value greater than or equal to 67.8.", new [] { "Double" });
}



// String (string) pattern
Regex regexString = new Regex(@"[a-z]", RegexOptions.CultureInvariant | RegexOptions.IgnoreCase);
if (false == regexString.Match(this.String).Success)
{
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for String, must match a pattern of " + regexString, new [] { "String" });
}



// Password (string) maxLength
if(this.Password != null && this.Password.Length > 64)
{
Expand All @@ -468,7 +482,7 @@ public virtual void OnPropertyChanged(string propertyName)
{
yield return new System.ComponentModel.DataAnnotations.ValidationResult("Invalid value for Password, length must be greater than 10.", new [] { "Password" });
}

yield break;
}
}
Expand Down

0 comments on commit a8620b8

Please sign in to comment.