C# Client Library
A C# Client Library for the AnalyzeRe REST API
AnalyzeRe.Fees.FixedExpense Class Reference

The Fixed Expense Fee applies the payout amount to all trials. More...

Public Member Functions

override bool Equals (object obj)
 Determine if this Fee is equivalent to another. More...
 
override int GetHashCode ()
 Get the HashCode for this Fee More...
 
virtual T ShallowCopy< T > ()
 Create a shallow copy of this object.

See also
ExtensionMethods.DeepCopy<T>

for a serializer-based copy method. More...

 

Public Attributes

string type => TypeResolver.GetTypeNameForAPIType(GetType())
 The server name for this type of resource. More...
 

Static Public Attributes

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

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. More...
 

Static Protected Member Functions

static int HashReferences (IEnumerable< FeeReference > refs)
 Get the HashCode for a collection of Fee References More...
 

Properties

MonetaryUnit amount [get, set]
 The expense amount. More...
 
string name [get, set]
 A user friendly name for this fee. More...
 
DateTime payout_date [get, set]
 The date on which the payout is made. More...
 

Detailed Description

The Fixed Expense Fee applies the payout amount to all trials.

Definition at line 8 of file FixedExpense.cs.

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

Member Function Documentation

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.APIResourceView.BaseAPIResourceView, AnalyzeRe.Optimization.OptimizationView, AnalyzeRe.Optimization.Candidate, AnalyzeRe.StaticSimulation, AnalyzeRe.Distributions.CustomDistribution, AnalyzeRe.LossSets.LossSet_WithData, and AnalyzeRe.APITypes.APIResource_WithDataEndpoint.

Definition at line 37 of file APIType.cs.

override bool AnalyzeRe.Fees.FixedExpense.Equals ( object  obj)
inline

Determine if this Fee is equivalent to another.

Parameters
objObject to compare to this.
Returns
True if the other object is a Fee and it is equivalent to this.

Definition at line 18 of file FixedExpense.cs.

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

Get the HashCode for this Fee

Returns
A unique HashCode for this Fee

Definition at line 29 of file FixedExpense.cs.

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

Get the HashCode for a collection of Fee References

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

Definition at line 50 of file Fee.cs.

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.

Member Data Documentation

string AnalyzeRe.APITypes.APIType_Polymorphic.APITypeName
staticinherited
Initial value:
=> TypeResolver.GetTypeNameForAPIType(
MethodBase.GetCurrentMethod().DeclaringType)

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

Definition at line 22 of file APIType_Polymorphic.cs.

string AnalyzeRe.APITypes.APIType_Polymorphic.type => TypeResolver.GetTypeNameForAPIType(GetType())
inherited

The server name for this type of resource.

Definition at line 18 of file APIType_Polymorphic.cs.

Property Documentation

MonetaryUnit AnalyzeRe.Fees.FixedExpense.amount
getset

The expense amount.

Definition at line 13 of file FixedExpense.cs.

string AnalyzeRe.Fees.Fee.name
getsetinherited

A user friendly name for this fee.

Definition at line 16 of file Fee.cs.

DateTime AnalyzeRe.Fees.Fee.payout_date
getsetinherited

The date on which the payout is made.

Definition at line 21 of file Fee.cs.


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