C# Client Library
A C# Client Library for the AnalyzeRe REST API
Loading...
Searching...
No Matches
AnalyzeRe.Fees.ProfitCommission Class Reference

The Profit Commission applies a fee that is the sum of the premium sources minus the sum of loss and fee sources, all multiplied by the rate. More...

Public Member Functions

bool Equals (Fee other)
 
override bool Equals (object obj)
 
bool Equals (ProfitCommission other)
 
override int GetHashCode ()
 
virtual T ShallowCopy< T > ()
 Create a shallow copy of this object.

See also
ExtensionMethods.DeepCopy<T>

for a serializer-based copy method.

 

Protected Member Functions

virtual void AfterMembersCloned (APIType originalResource)
 Invoked following construction if the current instance has been created using a member-wise clone of some other instance. Override if your derived APIType class contains some members that should not be cloned.
 

Static Protected Member Functions

static int HashReferences (IEnumerable< FeeReference > references)
 Get the HashCode for a collection of Fee References.
 
static bool ReferencesEquivalent (List< FeeReference > first, List< FeeReference > second)
 Used to determine if two lists of fee references are equivalent while ignoring the order in which fee references occur.
 

Properties

static string APITypeName [get]
 Can be used to get the API type name in a static context.
 
List< FeeReferencefees = new List<FeeReference>() [get, set]
 The fee sources.
 
List< FeeReferencelosses = new List<FeeReference>() [get, set]
 The loss sources.
 
string name [get, set]
 A user friendly name for this fee.
 
DateTimepayout_date [get, set]
 The date on which the payout is made.
 
List< FeeReferencepremiums = new List<FeeReference>() [get, set]
 The premium sources.
 
double rate [get, set]
 The rate.
 
string type [get]
 The server name for this type of resource.
 

Detailed Description

The Profit Commission applies a fee that is the sum of the premium sources minus the sum of loss and fee sources, all multiplied by the rate.

Definition at line 11 of file ProfitCommission.cs.

Inheritance diagram for AnalyzeRe.Fees.ProfitCommission:
AnalyzeRe.Fees.Fee AnalyzeRe.APITypes.APIType_Polymorphic AnalyzeRe.APIType AnalyzeRe.APITypes.IAPI_Polymorphic AnalyzeRe.IAPIType

Member Function Documentation

◆ AfterMembersCloned()

virtual void AnalyzeRe.APIType.AfterMembersCloned ( APIType  originalResource)
inlineprotectedvirtualinherited

Invoked following construction if the current instance has been created using a member-wise clone of some other instance. Override if your derived APIType class contains some members that should not be cloned.

Overriding implementations should be sure to invoke base.AfterMembersCloned().

A sane question for a code reviewer to ask might be: "Why not avoid copying those members in the first place?" The answer is that there is no framework-supported method of excluding members from a MemberwiseClone. The only officially supported solution is to not use the object.MemberwiseClone method at all and instead have each class implement it's own Copy method. In our case, most objects have no need to specialize their copy implementation (even though they could - the ShallowCopy<T> method is marked virtual). It's simpler to simply "correct" any special-case members after the fact, and requires less error-prone code than if the code were responsible for ensuring no members were missed in a copy. It's also faster than any reflection-based approach, even though such an approach could benefit from custom attributes meant to exclude certain members from copying.

Reimplemented in AnalyzeRe.APITypes.APIResource_WithDataEndpoint, AnalyzeRe.APIResourceView.BaseAPIResourceView, AnalyzeRe.Distributions.CustomDistribution, AnalyzeRe.LossSets.LossSet_WithData, AnalyzeRe.Optimization.Candidate, AnalyzeRe.Optimization.OptimizationView, and AnalyzeRe.StaticSimulation.

Definition at line 37 of file APIType.cs.

◆ Equals() [1/3]

bool AnalyzeRe.Fees.Fee.Equals ( Fee  other)
inherited

◆ Equals() [2/3]

override bool AnalyzeRe.Fees.ProfitCommission.Equals ( object  obj)

◆ Equals() [3/3]

bool AnalyzeRe.Fees.ProfitCommission.Equals ( ProfitCommission  other)

◆ GetHashCode()

override int AnalyzeRe.Fees.ProfitCommission.GetHashCode ( )
inline

Definition at line 44 of file ProfitCommission.cs.

◆ HashReferences()

static int AnalyzeRe.Fees.Fee.HashReferences ( IEnumerable< FeeReference references)
inlinestaticprotectedinherited

Get the HashCode for a collection of Fee References.

Parameters
referencesA collection of references.
Returns
A HashCode for the collection.

Definition at line 52 of file Fee.cs.

◆ ReferencesEquivalent()

static bool AnalyzeRe.Fees.Fee.ReferencesEquivalent ( List< FeeReference first,
List< FeeReference second 
)
inlinestaticprotectedinherited

Used to determine if two lists of fee references are equivalent while ignoring the order in which fee references occur.

Definition at line 63 of file Fee.cs.

◆ ShallowCopy< T >()

virtual T AnalyzeRe.APIType.ShallowCopy< T > ( )
inlinevirtualinherited

Create a shallow copy of this object.

See also
ExtensionMethods.DeepCopy<T>

for a serializer-based copy method.

Returns
A shallow copy of this object.

If this object contains any members that reference the current object (this), the class should override this method to avoid cloning a reference to the old class.

Implements AnalyzeRe.IAPIType.

Type Constraints
T :IAPIType 

Definition at line 14 of file APIType.cs.

Property Documentation

◆ APITypeName

string AnalyzeRe.APITypes.APIType_Polymorphic.APITypeName
staticgetinherited

Can be used to get the API type name in a static context.

Definition at line 22 of file APIType_Polymorphic.cs.

◆ fees

List<FeeReference> AnalyzeRe.Fees.ProfitCommission.fees = new List<FeeReference>()
getset

The fee sources.

Definition at line 27 of file ProfitCommission.cs.

◆ losses

List<FeeReference> AnalyzeRe.Fees.ProfitCommission.losses = new List<FeeReference>()
getset

The loss sources.

Definition at line 23 of file ProfitCommission.cs.

◆ name

string AnalyzeRe.Fees.Fee.name
getsetinherited

A user friendly name for this fee.

Definition at line 18 of file Fee.cs.

◆ payout_date

DateTime? AnalyzeRe.Fees.Fee.payout_date
getsetinherited

The date on which the payout is made.

Definition at line 23 of file Fee.cs.

◆ premiums

List<FeeReference> AnalyzeRe.Fees.ProfitCommission.premiums = new List<FeeReference>()
getset

The premium sources.

Definition at line 19 of file ProfitCommission.cs.

◆ rate

double AnalyzeRe.Fees.ProfitCommission.rate
getset

The rate.

Definition at line 15 of file ProfitCommission.cs.

◆ type

string AnalyzeRe.APITypes.APIType_Polymorphic.type
getinherited

The server name for this type of resource.

Implements AnalyzeRe.APITypes.IAPI_Polymorphic.

Definition at line 18 of file APIType_Polymorphic.cs.


The documentation for this class was generated from the following file: