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

The structure used to create a Marginal PortfolioView. More...

Public Member Functions

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.
 

Properties

IEnumerable< IReference< ILayerView > > add_layer_view_ids [get, set]
 The collection of Layer Views to add to the base PortfolioView.
 
override string collection_name [get]
 The collection endpoint at which resources of this type will be posted.
 
string id [get, set]
 The resource's unique identifier. It will be used in the request URL when requesting the resource from the server.
 
string Path [get]
 The relative path to this endpoint from the root URL.
 
IReference< PortfolioViewportfolio_view [get, set]
 The Marginal Portfolio View.
 
IReference< PortfolioViewportfolio_view_id [get, set]
 The base Portfolio View.
 
IEnumerable< IReference< ILayerView > > remove_layer_view_ids [get, set]
 The collection of LayerViews to remove from the base PortfolioView.
 

Detailed Description

The structure used to create a Marginal PortfolioView.

Definition at line 25 of file API.PortfolioViewMarginals.cs.

Inheritance diagram for AnalyzeRe.API.PortfolioViewMarginals.MarginalPortfolioView:
AnalyzeRe.APIResource AnalyzeRe.APIType AnalyzeRe.IAPIResource AnalyzeRe.IAPIType AnalyzeRe.IAPIType AnalyzeRe.APITypes.IEndpoint

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.

◆ 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

◆ add_layer_view_ids

IEnumerable<IReference<ILayerView> > AnalyzeRe.API.PortfolioViewMarginals.MarginalPortfolioView.add_layer_view_ids
getset

The collection of Layer Views to add to the base PortfolioView.

Definition at line 37 of file API.PortfolioViewMarginals.cs.

◆ collection_name

override string AnalyzeRe.API.PortfolioViewMarginals.MarginalPortfolioView.collection_name
getsealed

The collection endpoint at which resources of this type will be posted.

Implements AnalyzeRe.IAPIResource.

Definition at line 29 of file API.PortfolioViewMarginals.cs.

◆ id

string AnalyzeRe.APIResource.id
getsetinherited

The resource's unique identifier. It will be used in the request URL when requesting the resource from the server.

Implements AnalyzeRe.IAPIResource.

Definition at line 16 of file APIResource.cs.

◆ Path

string AnalyzeRe.APIResource.Path
getinherited

The relative path to this endpoint from the root URL.

The relative path to this endpoint from the root URL.

Exceptions
System.ArgumentExceptionIf this resource does not have an id.

Implements AnalyzeRe.APITypes.IEndpoint.

Definition at line 27 of file APIResource.cs.

◆ portfolio_view

IReference<PortfolioView> AnalyzeRe.API.PortfolioViewMarginals.MarginalPortfolioView.portfolio_view
getset

The Marginal Portfolio View.

Definition at line 46 of file API.PortfolioViewMarginals.cs.

◆ portfolio_view_id

IReference<PortfolioView> AnalyzeRe.API.PortfolioViewMarginals.MarginalPortfolioView.portfolio_view_id
getset

The base Portfolio View.

Definition at line 33 of file API.PortfolioViewMarginals.cs.

◆ remove_layer_view_ids

IEnumerable<IReference<ILayerView> > AnalyzeRe.API.PortfolioViewMarginals.MarginalPortfolioView.remove_layer_view_ids
getset

The collection of LayerViews to remove from the base PortfolioView.

Definition at line 41 of file API.PortfolioViewMarginals.cs.


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