コード例 #1
0
    /// <inheritdoc />
    public async Task <LanguageVariantModel <T> > UpsertLanguageVariantAsync <T>(LanguageVariantIdentifier identifier, T variantElements, WorkflowStepIdentifier workflow = null) where T : new()
    {
        if (identifier == null)
        {
            throw new ArgumentNullException(nameof(identifier));
        }

        if (variantElements == null)
        {
            throw new ArgumentNullException(nameof(variantElements));
        }

        var endpointUrl        = _urlBuilder.BuildVariantsUrl(identifier);
        var variantUpsertModel = _modelProvider.GetLanguageVariantUpsertModel(variantElements, workflow);
        var response           = await _actionInvoker.InvokeMethodAsync <LanguageVariantUpsertModel, LanguageVariantModel>(endpointUrl, HttpMethod.Put, variantUpsertModel);

        return(_modelProvider.GetLanguageVariantModel <T>(response));
    }