Nephila RiskStore

<back to all web services

ProcessHotPathRollupOutputPersistenceRequest

Requires Authentication
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 ProcessHotPathRollupOutputPersistenceRequest() = 
        member val Id:Guid = new Guid() with get,set
        member val OutputDetails:ResizeArray<AnalysisResult> = null with get,set

F# ProcessHotPathRollupOutputPersistenceRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /jsv/oneway/ProcessHotPathRollupOutputPersistenceRequest 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
		}
	]
}