1
0
mirror of https://github.com/bitwarden/server.git synced 2025-07-03 17:12:49 -05:00

Run formatting (#2230)

This commit is contained in:
Justin Baur
2022-08-29 16:06:55 -04:00
committed by GitHub
parent 9b7aef0763
commit 7f5f010e1e
1205 changed files with 73813 additions and 75022 deletions

View File

@ -1,27 +1,26 @@
using System.ComponentModel.DataAnnotations;
using Bit.Core.Entities;
namespace Bit.Core.Models.Api.Request.Accounts
namespace Bit.Core.Models.Api.Request.Accounts;
public class KeysRequestModel
{
public class KeysRequestModel
public string PublicKey { get; set; }
[Required]
public string EncryptedPrivateKey { get; set; }
public User ToUser(User existingUser)
{
public string PublicKey { get; set; }
[Required]
public string EncryptedPrivateKey { get; set; }
public User ToUser(User existingUser)
if (string.IsNullOrWhiteSpace(existingUser.PublicKey) && !string.IsNullOrWhiteSpace(PublicKey))
{
if (string.IsNullOrWhiteSpace(existingUser.PublicKey) && !string.IsNullOrWhiteSpace(PublicKey))
{
existingUser.PublicKey = PublicKey;
}
if (string.IsNullOrWhiteSpace(existingUser.PrivateKey))
{
existingUser.PrivateKey = EncryptedPrivateKey;
}
return existingUser;
existingUser.PublicKey = PublicKey;
}
if (string.IsNullOrWhiteSpace(existingUser.PrivateKey))
{
existingUser.PrivateKey = EncryptedPrivateKey;
}
return existingUser;
}
}

View File

@ -1,12 +1,11 @@
using System.ComponentModel.DataAnnotations;
namespace Bit.Core.Models.Api.Request.Accounts
namespace Bit.Core.Models.Api.Request.Accounts;
public class PreloginRequestModel
{
public class PreloginRequestModel
{
[Required]
[EmailAddress]
[StringLength(256)]
public string Email { get; set; }
}
[Required]
[EmailAddress]
[StringLength(256)]
public string Email { get; set; }
}

View File

@ -4,74 +4,73 @@ using Bit.Core.Entities;
using Bit.Core.Enums;
using Bit.Core.Utilities;
namespace Bit.Core.Models.Api.Request.Accounts
namespace Bit.Core.Models.Api.Request.Accounts;
public class RegisterRequestModel : IValidatableObject, ICaptchaProtectedModel
{
public class RegisterRequestModel : IValidatableObject, ICaptchaProtectedModel
[StringLength(50)]
public string Name { get; set; }
[Required]
[StrictEmailAddress]
[StringLength(256)]
public string Email { get; set; }
[Required]
[StringLength(1000)]
public string MasterPasswordHash { get; set; }
[StringLength(50)]
public string MasterPasswordHint { get; set; }
public string CaptchaResponse { get; set; }
public string Key { get; set; }
public KeysRequestModel Keys { get; set; }
public string Token { get; set; }
public Guid? OrganizationUserId { get; set; }
public KdfType? Kdf { get; set; }
public int? KdfIterations { get; set; }
public Dictionary<string, object> ReferenceData { get; set; }
public User ToUser()
{
[StringLength(50)]
public string Name { get; set; }
[Required]
[StrictEmailAddress]
[StringLength(256)]
public string Email { get; set; }
[Required]
[StringLength(1000)]
public string MasterPasswordHash { get; set; }
[StringLength(50)]
public string MasterPasswordHint { get; set; }
public string CaptchaResponse { get; set; }
public string Key { get; set; }
public KeysRequestModel Keys { get; set; }
public string Token { get; set; }
public Guid? OrganizationUserId { get; set; }
public KdfType? Kdf { get; set; }
public int? KdfIterations { get; set; }
public Dictionary<string, object> ReferenceData { get; set; }
public User ToUser()
var user = new User
{
var user = new User
{
Name = Name,
Email = Email,
MasterPasswordHint = MasterPasswordHint,
Kdf = Kdf.GetValueOrDefault(KdfType.PBKDF2_SHA256),
KdfIterations = KdfIterations.GetValueOrDefault(5000),
};
Name = Name,
Email = Email,
MasterPasswordHint = MasterPasswordHint,
Kdf = Kdf.GetValueOrDefault(KdfType.PBKDF2_SHA256),
KdfIterations = KdfIterations.GetValueOrDefault(5000),
};
if (ReferenceData != null)
{
user.ReferenceData = JsonSerializer.Serialize(ReferenceData);
}
if (Key != null)
{
user.Key = Key;
}
if (Keys != null)
{
Keys.ToUser(user);
}
return user;
if (ReferenceData != null)
{
user.ReferenceData = JsonSerializer.Serialize(ReferenceData);
}
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
if (Key != null)
{
if (Kdf.HasValue && KdfIterations.HasValue)
user.Key = Key;
}
if (Keys != null)
{
Keys.ToUser(user);
}
return user;
}
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
if (Kdf.HasValue && KdfIterations.HasValue)
{
switch (Kdf.Value)
{
switch (Kdf.Value)
{
case KdfType.PBKDF2_SHA256:
if (KdfIterations.Value < 5000 || KdfIterations.Value > 1_000_000)
{
yield return new ValidationResult("KDF iterations must be between 5000 and 1000000.");
}
break;
default:
break;
}
case KdfType.PBKDF2_SHA256:
if (KdfIterations.Value < 5000 || KdfIterations.Value > 1_000_000)
{
yield return new ValidationResult("KDF iterations must be between 5000 and 1000000.");
}
break;
default:
break;
}
}
}

View File

@ -1,7 +1,6 @@
namespace Bit.Core.Models.Api
namespace Bit.Core.Models.Api;
public interface ICaptchaProtectedModel
{
public interface ICaptchaProtectedModel
{
string CaptchaResponse { get; set; }
}
string CaptchaResponse { get; set; }
}

View File

@ -2,55 +2,54 @@
using Bit.Core.Enums;
using Bit.Core.Models.Data.Organizations.OrganizationSponsorships;
namespace Bit.Core.Models.Api.Request.OrganizationSponsorships
namespace Bit.Core.Models.Api.Request.OrganizationSponsorships;
public class OrganizationSponsorshipRequestModel
{
public class OrganizationSponsorshipRequestModel
public Guid SponsoringOrganizationUserId { get; set; }
public string FriendlyName { get; set; }
public string OfferedToEmail { get; set; }
public PlanSponsorshipType PlanSponsorshipType { get; set; }
public DateTime? LastSyncDate { get; set; }
public DateTime? ValidUntil { get; set; }
public bool ToDelete { get; set; }
public OrganizationSponsorshipRequestModel() { }
public OrganizationSponsorshipRequestModel(OrganizationSponsorshipData sponsorshipData)
{
public Guid SponsoringOrganizationUserId { get; set; }
public string FriendlyName { get; set; }
public string OfferedToEmail { get; set; }
public PlanSponsorshipType PlanSponsorshipType { get; set; }
public DateTime? LastSyncDate { get; set; }
public DateTime? ValidUntil { get; set; }
public bool ToDelete { get; set; }
SponsoringOrganizationUserId = sponsorshipData.SponsoringOrganizationUserId;
FriendlyName = sponsorshipData.FriendlyName;
OfferedToEmail = sponsorshipData.OfferedToEmail;
PlanSponsorshipType = sponsorshipData.PlanSponsorshipType;
LastSyncDate = sponsorshipData.LastSyncDate;
ValidUntil = sponsorshipData.ValidUntil;
ToDelete = sponsorshipData.ToDelete;
}
public OrganizationSponsorshipRequestModel() { }
public OrganizationSponsorshipRequestModel(OrganizationSponsorship sponsorship)
{
SponsoringOrganizationUserId = sponsorship.SponsoringOrganizationUserId;
FriendlyName = sponsorship.FriendlyName;
OfferedToEmail = sponsorship.OfferedToEmail;
PlanSponsorshipType = sponsorship.PlanSponsorshipType.GetValueOrDefault();
LastSyncDate = sponsorship.LastSyncDate;
ValidUntil = sponsorship.ValidUntil;
ToDelete = sponsorship.ToDelete;
}
public OrganizationSponsorshipRequestModel(OrganizationSponsorshipData sponsorshipData)
public OrganizationSponsorshipData ToOrganizationSponsorship()
{
return new OrganizationSponsorshipData
{
SponsoringOrganizationUserId = sponsorshipData.SponsoringOrganizationUserId;
FriendlyName = sponsorshipData.FriendlyName;
OfferedToEmail = sponsorshipData.OfferedToEmail;
PlanSponsorshipType = sponsorshipData.PlanSponsorshipType;
LastSyncDate = sponsorshipData.LastSyncDate;
ValidUntil = sponsorshipData.ValidUntil;
ToDelete = sponsorshipData.ToDelete;
}
SponsoringOrganizationUserId = SponsoringOrganizationUserId,
FriendlyName = FriendlyName,
OfferedToEmail = OfferedToEmail,
PlanSponsorshipType = PlanSponsorshipType,
LastSyncDate = LastSyncDate,
ValidUntil = ValidUntil,
ToDelete = ToDelete,
};
public OrganizationSponsorshipRequestModel(OrganizationSponsorship sponsorship)
{
SponsoringOrganizationUserId = sponsorship.SponsoringOrganizationUserId;
FriendlyName = sponsorship.FriendlyName;
OfferedToEmail = sponsorship.OfferedToEmail;
PlanSponsorshipType = sponsorship.PlanSponsorshipType.GetValueOrDefault();
LastSyncDate = sponsorship.LastSyncDate;
ValidUntil = sponsorship.ValidUntil;
ToDelete = sponsorship.ToDelete;
}
public OrganizationSponsorshipData ToOrganizationSponsorship()
{
return new OrganizationSponsorshipData
{
SponsoringOrganizationUserId = SponsoringOrganizationUserId,
FriendlyName = FriendlyName,
OfferedToEmail = OfferedToEmail,
PlanSponsorshipType = PlanSponsorshipType,
LastSyncDate = LastSyncDate,
ValidUntil = ValidUntil,
ToDelete = ToDelete,
};
}
}
}

View File

@ -1,40 +1,39 @@
using Bit.Core.Models.Data.Organizations.OrganizationSponsorships;
namespace Bit.Core.Models.Api.Request.OrganizationSponsorships
namespace Bit.Core.Models.Api.Request.OrganizationSponsorships;
public class OrganizationSponsorshipSyncRequestModel
{
public class OrganizationSponsorshipSyncRequestModel
public string BillingSyncKey { get; set; }
public Guid SponsoringOrganizationCloudId { get; set; }
public IEnumerable<OrganizationSponsorshipRequestModel> SponsorshipsBatch { get; set; }
public OrganizationSponsorshipSyncRequestModel() { }
public OrganizationSponsorshipSyncRequestModel(IEnumerable<OrganizationSponsorshipRequestModel> sponsorshipsBatch)
{
public string BillingSyncKey { get; set; }
public Guid SponsoringOrganizationCloudId { get; set; }
public IEnumerable<OrganizationSponsorshipRequestModel> SponsorshipsBatch { get; set; }
public OrganizationSponsorshipSyncRequestModel() { }
public OrganizationSponsorshipSyncRequestModel(IEnumerable<OrganizationSponsorshipRequestModel> sponsorshipsBatch)
{
SponsorshipsBatch = sponsorshipsBatch;
}
public OrganizationSponsorshipSyncRequestModel(OrganizationSponsorshipSyncData syncData)
{
if (syncData == null)
{
return;
}
BillingSyncKey = syncData.BillingSyncKey;
SponsoringOrganizationCloudId = syncData.SponsoringOrganizationCloudId;
SponsorshipsBatch = syncData.SponsorshipsBatch.Select(o => new OrganizationSponsorshipRequestModel(o));
}
public OrganizationSponsorshipSyncData ToOrganizationSponsorshipSync()
{
return new OrganizationSponsorshipSyncData()
{
BillingSyncKey = BillingSyncKey,
SponsoringOrganizationCloudId = SponsoringOrganizationCloudId,
SponsorshipsBatch = SponsorshipsBatch.Select(o => o.ToOrganizationSponsorship())
};
}
SponsorshipsBatch = sponsorshipsBatch;
}
public OrganizationSponsorshipSyncRequestModel(OrganizationSponsorshipSyncData syncData)
{
if (syncData == null)
{
return;
}
BillingSyncKey = syncData.BillingSyncKey;
SponsoringOrganizationCloudId = syncData.SponsoringOrganizationCloudId;
SponsorshipsBatch = syncData.SponsorshipsBatch.Select(o => new OrganizationSponsorshipRequestModel(o));
}
public OrganizationSponsorshipSyncData ToOrganizationSponsorshipSync()
{
return new OrganizationSponsorshipSyncData()
{
BillingSyncKey = BillingSyncKey,
SponsoringOrganizationCloudId = SponsoringOrganizationCloudId,
SponsorshipsBatch = SponsorshipsBatch.Select(o => o.ToOrganizationSponsorship())
};
}
}

View File

@ -1,19 +1,18 @@
using System.ComponentModel.DataAnnotations;
using Bit.Core.Enums;
namespace Bit.Core.Models.Api
namespace Bit.Core.Models.Api;
public class PushRegistrationRequestModel
{
public class PushRegistrationRequestModel
{
[Required]
public string DeviceId { get; set; }
[Required]
public string PushToken { get; set; }
[Required]
public string UserId { get; set; }
[Required]
public DeviceType Type { get; set; }
[Required]
public string Identifier { get; set; }
}
[Required]
public string DeviceId { get; set; }
[Required]
public string PushToken { get; set; }
[Required]
public string UserId { get; set; }
[Required]
public DeviceType Type { get; set; }
[Required]
public string Identifier { get; set; }
}

View File

@ -1,25 +1,24 @@
using System.ComponentModel.DataAnnotations;
using Bit.Core.Enums;
namespace Bit.Core.Models.Api
{
public class PushSendRequestModel : IValidatableObject
{
public string UserId { get; set; }
public string OrganizationId { get; set; }
public string DeviceId { get; set; }
public string Identifier { get; set; }
[Required]
public PushType? Type { get; set; }
[Required]
public object Payload { get; set; }
namespace Bit.Core.Models.Api;
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
public class PushSendRequestModel : IValidatableObject
{
public string UserId { get; set; }
public string OrganizationId { get; set; }
public string DeviceId { get; set; }
public string Identifier { get; set; }
[Required]
public PushType? Type { get; set; }
[Required]
public object Payload { get; set; }
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
if (string.IsNullOrWhiteSpace(UserId) && string.IsNullOrWhiteSpace(OrganizationId))
{
if (string.IsNullOrWhiteSpace(UserId) && string.IsNullOrWhiteSpace(OrganizationId))
{
yield return new ValidationResult($"{nameof(UserId)} or {nameof(OrganizationId)} is required.");
}
yield return new ValidationResult($"{nameof(UserId)} or {nameof(OrganizationId)} is required.");
}
}
}

View File

@ -1,21 +1,20 @@
using System.ComponentModel.DataAnnotations;
namespace Bit.Core.Models.Api
namespace Bit.Core.Models.Api;
public class PushUpdateRequestModel
{
public class PushUpdateRequestModel
public PushUpdateRequestModel()
{ }
public PushUpdateRequestModel(IEnumerable<string> deviceIds, string organizationId)
{
public PushUpdateRequestModel()
{ }
public PushUpdateRequestModel(IEnumerable<string> deviceIds, string organizationId)
{
DeviceIds = deviceIds;
OrganizationId = organizationId;
}
[Required]
public IEnumerable<string> DeviceIds { get; set; }
[Required]
public string OrganizationId { get; set; }
DeviceIds = deviceIds;
OrganizationId = organizationId;
}
[Required]
public IEnumerable<string> DeviceIds { get; set; }
[Required]
public string OrganizationId { get; set; }
}

View File

@ -1,17 +1,16 @@
using Bit.Core.Enums;
using Bit.Core.Models.Data;
namespace Bit.Core.Models.Api.Response.Accounts
{
public class PreloginResponseModel
{
public PreloginResponseModel(UserKdfInformation kdfInformation)
{
Kdf = kdfInformation.Kdf;
KdfIterations = kdfInformation.KdfIterations;
}
namespace Bit.Core.Models.Api.Response.Accounts;
public KdfType Kdf { get; set; }
public int KdfIterations { get; set; }
public class PreloginResponseModel
{
public PreloginResponseModel(UserKdfInformation kdfInformation)
{
Kdf = kdfInformation.Kdf;
KdfIterations = kdfInformation.KdfIterations;
}
public KdfType Kdf { get; set; }
public int KdfIterations { get; set; }
}

View File

@ -1,74 +1,73 @@
using Microsoft.AspNetCore.Mvc.ModelBinding;
namespace Bit.Core.Models.Api
namespace Bit.Core.Models.Api;
public class ErrorResponseModel : ResponseModel
{
public class ErrorResponseModel : ResponseModel
public ErrorResponseModel()
: base("error")
{ }
public ErrorResponseModel(string message)
: this()
{
public ErrorResponseModel()
: base("error")
{ }
public ErrorResponseModel(string message)
: this()
{
Message = message;
}
public ErrorResponseModel(ModelStateDictionary modelState)
: this()
{
Message = "The model state is invalid.";
ValidationErrors = new Dictionary<string, IEnumerable<string>>();
var keys = modelState.Keys.ToList();
var values = modelState.Values.ToList();
for (var i = 0; i < values.Count; i++)
{
var value = values[i];
if (keys.Count <= i)
{
// Keys not available for some reason.
break;
}
var key = keys[i];
if (value.ValidationState != ModelValidationState.Invalid || value.Errors.Count == 0)
{
continue;
}
var errors = value.Errors.Select(e => e.ErrorMessage);
ValidationErrors.Add(key, errors);
}
}
public ErrorResponseModel(Dictionary<string, IEnumerable<string>> errors)
: this("Errors have occurred.", errors)
{ }
public ErrorResponseModel(string errorKey, string errorValue)
: this(errorKey, new string[] { errorValue })
{ }
public ErrorResponseModel(string errorKey, IEnumerable<string> errorValues)
: this(new Dictionary<string, IEnumerable<string>> { { errorKey, errorValues } })
{ }
public ErrorResponseModel(string message, Dictionary<string, IEnumerable<string>> errors)
: this()
{
Message = message;
ValidationErrors = errors;
}
public string Message { get; set; }
public Dictionary<string, IEnumerable<string>> ValidationErrors { get; set; }
// For use in development environments.
public string ExceptionMessage { get; set; }
public string ExceptionStackTrace { get; set; }
public string InnerExceptionMessage { get; set; }
Message = message;
}
public ErrorResponseModel(ModelStateDictionary modelState)
: this()
{
Message = "The model state is invalid.";
ValidationErrors = new Dictionary<string, IEnumerable<string>>();
var keys = modelState.Keys.ToList();
var values = modelState.Values.ToList();
for (var i = 0; i < values.Count; i++)
{
var value = values[i];
if (keys.Count <= i)
{
// Keys not available for some reason.
break;
}
var key = keys[i];
if (value.ValidationState != ModelValidationState.Invalid || value.Errors.Count == 0)
{
continue;
}
var errors = value.Errors.Select(e => e.ErrorMessage);
ValidationErrors.Add(key, errors);
}
}
public ErrorResponseModel(Dictionary<string, IEnumerable<string>> errors)
: this("Errors have occurred.", errors)
{ }
public ErrorResponseModel(string errorKey, string errorValue)
: this(errorKey, new string[] { errorValue })
{ }
public ErrorResponseModel(string errorKey, IEnumerable<string> errorValues)
: this(new Dictionary<string, IEnumerable<string>> { { errorKey, errorValues } })
{ }
public ErrorResponseModel(string message, Dictionary<string, IEnumerable<string>> errors)
: this()
{
Message = message;
ValidationErrors = errors;
}
public string Message { get; set; }
public Dictionary<string, IEnumerable<string>> ValidationErrors { get; set; }
// For use in development environments.
public string ExceptionMessage { get; set; }
public string ExceptionStackTrace { get; set; }
public string InnerExceptionMessage { get; set; }
}

View File

@ -1,48 +1,47 @@
using Bit.Core.Enums;
using Bit.Core.Models.Data.Organizations.OrganizationSponsorships;
namespace Bit.Core.Models.Api.Response.OrganizationSponsorships
namespace Bit.Core.Models.Api.Response.OrganizationSponsorships;
public class OrganizationSponsorshipResponseModel
{
public class OrganizationSponsorshipResponseModel
public Guid SponsoringOrganizationUserId { get; set; }
public string FriendlyName { get; set; }
public string OfferedToEmail { get; set; }
public PlanSponsorshipType PlanSponsorshipType { get; set; }
public DateTime? LastSyncDate { get; set; }
public DateTime? ValidUntil { get; set; }
public bool ToDelete { get; set; }
public bool CloudSponsorshipRemoved { get; set; }
public OrganizationSponsorshipResponseModel() { }
public OrganizationSponsorshipResponseModel(OrganizationSponsorshipData sponsorshipData)
{
public Guid SponsoringOrganizationUserId { get; set; }
public string FriendlyName { get; set; }
public string OfferedToEmail { get; set; }
public PlanSponsorshipType PlanSponsorshipType { get; set; }
public DateTime? LastSyncDate { get; set; }
public DateTime? ValidUntil { get; set; }
public bool ToDelete { get; set; }
SponsoringOrganizationUserId = sponsorshipData.SponsoringOrganizationUserId;
FriendlyName = sponsorshipData.FriendlyName;
OfferedToEmail = sponsorshipData.OfferedToEmail;
PlanSponsorshipType = sponsorshipData.PlanSponsorshipType;
LastSyncDate = sponsorshipData.LastSyncDate;
ValidUntil = sponsorshipData.ValidUntil;
ToDelete = sponsorshipData.ToDelete;
CloudSponsorshipRemoved = sponsorshipData.CloudSponsorshipRemoved;
}
public bool CloudSponsorshipRemoved { get; set; }
public OrganizationSponsorshipResponseModel() { }
public OrganizationSponsorshipResponseModel(OrganizationSponsorshipData sponsorshipData)
public OrganizationSponsorshipData ToOrganizationSponsorship()
{
return new OrganizationSponsorshipData
{
SponsoringOrganizationUserId = sponsorshipData.SponsoringOrganizationUserId;
FriendlyName = sponsorshipData.FriendlyName;
OfferedToEmail = sponsorshipData.OfferedToEmail;
PlanSponsorshipType = sponsorshipData.PlanSponsorshipType;
LastSyncDate = sponsorshipData.LastSyncDate;
ValidUntil = sponsorshipData.ValidUntil;
ToDelete = sponsorshipData.ToDelete;
CloudSponsorshipRemoved = sponsorshipData.CloudSponsorshipRemoved;
}
SponsoringOrganizationUserId = SponsoringOrganizationUserId,
FriendlyName = FriendlyName,
OfferedToEmail = OfferedToEmail,
PlanSponsorshipType = PlanSponsorshipType,
LastSyncDate = LastSyncDate,
ValidUntil = ValidUntil,
ToDelete = ToDelete,
CloudSponsorshipRemoved = CloudSponsorshipRemoved
};
public OrganizationSponsorshipData ToOrganizationSponsorship()
{
return new OrganizationSponsorshipData
{
SponsoringOrganizationUserId = SponsoringOrganizationUserId,
FriendlyName = FriendlyName,
OfferedToEmail = OfferedToEmail,
PlanSponsorshipType = PlanSponsorshipType,
LastSyncDate = LastSyncDate,
ValidUntil = ValidUntil,
ToDelete = ToDelete,
CloudSponsorshipRemoved = CloudSponsorshipRemoved
};
}
}
}

View File

@ -1,30 +1,29 @@
using Bit.Core.Models.Data.Organizations.OrganizationSponsorships;
namespace Bit.Core.Models.Api.Response.OrganizationSponsorships
namespace Bit.Core.Models.Api.Response.OrganizationSponsorships;
public class OrganizationSponsorshipSyncResponseModel
{
public class OrganizationSponsorshipSyncResponseModel
public IEnumerable<OrganizationSponsorshipResponseModel> SponsorshipsBatch { get; set; }
public OrganizationSponsorshipSyncResponseModel() { }
public OrganizationSponsorshipSyncResponseModel(OrganizationSponsorshipSyncData syncData)
{
public IEnumerable<OrganizationSponsorshipResponseModel> SponsorshipsBatch { get; set; }
public OrganizationSponsorshipSyncResponseModel() { }
public OrganizationSponsorshipSyncResponseModel(OrganizationSponsorshipSyncData syncData)
if (syncData == null)
{
if (syncData == null)
{
return;
}
SponsorshipsBatch = syncData.SponsorshipsBatch.Select(o => new OrganizationSponsorshipResponseModel(o));
}
public OrganizationSponsorshipSyncData ToOrganizationSponsorshipSync()
{
return new OrganizationSponsorshipSyncData()
{
SponsorshipsBatch = SponsorshipsBatch.Select(o => o.ToOrganizationSponsorship())
};
return;
}
SponsorshipsBatch = syncData.SponsorshipsBatch.Select(o => new OrganizationSponsorshipResponseModel(o));
}
public OrganizationSponsorshipSyncData ToOrganizationSponsorshipSync()
{
return new OrganizationSponsorshipSyncData()
{
SponsorshipsBatch = SponsorshipsBatch.Select(o => o.ToOrganizationSponsorship())
};
}
}

View File

@ -1,20 +1,19 @@
using Newtonsoft.Json;
namespace Bit.Core.Models.Api
{
public abstract class ResponseModel
{
public ResponseModel(string obj)
{
if (string.IsNullOrWhiteSpace(obj))
{
throw new ArgumentNullException(nameof(obj));
}
namespace Bit.Core.Models.Api;
Object = obj;
public abstract class ResponseModel
{
public ResponseModel(string obj)
{
if (string.IsNullOrWhiteSpace(obj))
{
throw new ArgumentNullException(nameof(obj));
}
[JsonProperty(Order = -200)] // Always the first property
public string Object { get; private set; }
Object = obj;
}
[JsonProperty(Order = -200)] // Always the first property
public string Object { get; private set; }
}