namespace Nephila.RiskStore.ServiceModel
open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations
type AnalysisType =
| NotSet = 0
| Standard = 1
| RunOff = 2
type SimulationLossPerspective =
| NotSet = 0
| Agg = 1
| Occ = 2
type ReinsurancePremiumLossType =
| NotSet = 0
| Net = 1
| Gross = 2
type ResultOutputLevel =
| NotSet = 0
| PortfolioMetrics = 1
| Curve = 2
| YLT = 3
| TailIntensity = 4
| DealYlt = 5
| DealElt = 6
| DealEltWithIndustryLoss = 7
| PortfolioElt = 8
| PortfolioEltWithIndustryLoss = 9
| EventSetGeneration = 10
| PortfolioRaps = 11
| DealRaps = 12
| PortfolioSepyIndustryLoss = 13
| DealSepyIndustryLoss = 14
[<AllowNullLiteral>]
type AnalysisPortfolioEventSetResult() =
[<DataMember(Order=1)>]
member val Id:Int64 = new Int64() with get,set
[<DataMember(Order=2)>]
member val AnalysisId:Int64 = new Int64() with get,set
[<DataMember(Order=3)>]
member val AnalysisPortfolioEventSetConfigurationId:Int64 = new Int64() with get,set
[<DataMember(Order=4)>]
member val AnalysisResultId:Int64 = new Int64() with get,set
[<DataMember(Order=5)>]
member val PortfolioName:String = null with get,set
[<DataMember(Order=6)>]
member val RowIdentifier:Guid = new Guid() with get,set
[<DataContract>]
[<AllowNullLiteral>]
type AnalysisResult() =
[<DataMember(Order=1)>]
member val Id:Int64 = new Int64() with get,set
[<DataMember(Order=2)>]
member val AnalysisId:Int64 = new Int64() with get,set
[<DataMember(Order=3)>]
member val AnalysisConfigurationId:Int64 = new Int64() with get,set
[<DataMember(Order=4)>]
member val Container:String = null with get,set
[<DataMember(Order=5)>]
member val BlobName:String = null with get,set
[<DataMember(Order=6)>]
member val ResultTableName:String = null with get,set
[<DataMember(Order=7)>]
member val AnalysisType:AnalysisType = new AnalysisType() with get,set
[<DataMember(Order=8)>]
member val SimulationLossPerspective:SimulationLossPerspective = new SimulationLossPerspective() with get,set
[<DataMember(Order=9)>]
member val ReinsurancePremiumLossType:ReinsurancePremiumLossType = new ReinsurancePremiumLossType() with get,set
[<DataMember(Order=10)>]
member val OutputLevel:ResultOutputLevel = new ResultOutputLevel() with get,set
[<DataMember(Order=11)>]
member val MetaRiskId:Int32 = new Int32() with get,set
[<DataMember(Order=12)>]
member val AnalysisPortfolioEventSetResults:ResizeArray<AnalysisPortfolioEventSetResult> = null with get,set
[<DataMember(Order=13)>]
member val RowIdentifier:Guid = new Guid() with get,set
[<AllowNullLiteral>]
type ProcessRollupOutputPersistenceRequest() =
member val Id:Guid = new Guid() with get,set
member val OutputDetails:ResizeArray<AnalysisResult> = null with get,set
F# ProcessRollupOutputPersistenceRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /jsv/oneway/ProcessRollupOutputPersistenceRequest HTTP/1.1
Host: riskstoreng-dev.nephila.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
id: 00000000000000000000000000000000,
outputDetails:
[
{
id: 0,
analysisId: 0,
analysisConfigurationId: 0,
container: String,
blobName: String,
resultTableName: String,
analysisType: NotSet,
simulationLossPerspective: NotSet,
reinsurancePremiumLossType: NotSet,
outputLevel: NotSet,
metaRiskId: 0,
analysisPortfolioEventSetResults:
[
{
id: 0,
analysisId: 0,
analysisPortfolioEventSetConfigurationId: 0,
analysisResultId: 0,
portfolioName: String,
rowIdentifier: 00000000000000000000000000000000
}
],
rowIdentifier: 00000000000000000000000000000000
}
]
}