C# Client Library
A C# Client Library for the AnalyzeRe REST API
|
Allows one or more source layers or layer_views to be attached as loss sources to some other layer definition (sink), producing a new layer. More...
Classes | |
class | Sources |
A wrapper for a List<T> of IReference<ILayerSource> references that simplifies the construction and use of a set of nested sources references. More... | |
Public Member Functions | |
Nested () | |
Construct a new Nested Layer with the default perspective and empty list of source layers. | |
virtual T | ShallowCopy< T > () |
Create a shallow copy of this object.
for a serializer-based copy method. | |
Static Public Attributes | |
static readonly string | CLASS_COLLECTION_NAME = "layers" |
The collection endpoint at which resources of this type reside on the server. | |
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 | |
static string | APITypeName [get] |
Can be used to get the API type name in a static context. | |
override string | collection_name [get] |
The collection endpoint at which resources of this type reside on the server. | |
DateTime? | created [get, set] |
The date and time when the resource was created on the system. | |
string | description [get, set] |
A user-friendly description of the resource. | |
string | id [get, set] |
The resource's unique identifier. It will be used in the request URL when requesting the resource from the server. | |
Dictionary< string, object > | meta_data = new Dictionary<string, object>() [get, set] |
Any user-defined metadata for this layer. | |
DateTime? | modified [get, set] |
The date and time when the resource was last modified on the system. | |
string | Path [get] |
The relative path to this endpoint from the root URL. | |
IReference< ILayerSource > | sink [get, set] |
The layer that will take on the sources' forwarded losses. | |
Sources | sources [get, set] |
A list of the source layers forwarding losses to this layer. | |
string | type [get] |
The server name for this type of resource. | |
Allows one or more source layers or layer_views to be attached as loss sources to some other layer definition (sink), producing a new layer.
This layer supports different reference types depending on its use. When saving a Nested layer to the /layers/ endpoint, the layer can only contain "pure" (non-inlined) references to other previously saved layers. When using a Nested layer instance as a ILayerView.layer value, sink and sources can be either Layer or LayerView references, as well as inlined Layer definitions (i.e. Layers without saved ids converted to references).
|
inline |
|
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.
|
inlinevirtualinherited |
Create a shallow copy of this object.
for a serializer-based copy method.
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.
T | : | IAPIType |
Definition at line 14 of file APIType.cs.
|
staticgetinherited |
Can be used to get the API type name in a static context.
Definition at line 17 of file StoredAPIResource_Polymorphic.cs.
The collection endpoint at which resources of this type reside on the server.
Implements AnalyzeRe.IAPIResource.
|
getsetinherited |
The date and time when the resource was created on the system.
Implements AnalyzeRe.APITypes.IStoredAPIResource.
Definition at line 19 of file StoredAPIResource.cs.
|
getsetinherited |
A user-friendly description of the resource.
Implements AnalyzeRe.APITypes.IStoredAPIResource.
Definition at line 14 of file StoredAPIResource.cs.
|
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.
|
getsetinherited |
Any user-defined metadata for this layer.
Implements AnalyzeRe.APITypes.IStoredAPIResource.
Definition at line 30 of file StoredAPIResource.cs.
|
getsetinherited |
The date and time when the resource was last modified on the system.
Implements AnalyzeRe.APITypes.IStoredAPIResource.
Definition at line 24 of file StoredAPIResource.cs.
|
getinherited |
The relative path to this endpoint from the root URL.
The relative path to this endpoint from the root URL.
System.ArgumentException | If this resource does not have an id. |
Implements AnalyzeRe.APITypes.IEndpoint.
Definition at line 27 of file APIResource.cs.
|
getset |
The layer that will take on the sources' forwarded losses.
If the reference type (Layer or LayerView) isn't specified, the server will assume that it is a layer reference.
When persisting (POSTing) Nested layers (i.e. to the /layers/ endpoint), only references to other saved Layers are supported. "Inlined" layer references and references to LayerViews are allowed only when this layer is part of a ILayerView<Nested> definition.
|
getset |
A list of the source layers forwarding losses to this layer.
When persisting (POSTing) layers of this type (i.e. to the /layers/ endpoint), only "pure" Layer references are supported. "inlined" references (e.g. nested layer definitions without an saved id) are allowed only when this layer is part of a ILayerView<Nested> definition.
|
getinherited |
The server name for this type of resource.
Implements AnalyzeRe.APITypes.IAPI_Polymorphic.
Definition at line 13 of file StoredAPIResource_Polymorphic.cs.