public async Task <IActionResult> Create([FromBody] CreateRetentionPolicyRequest request) { try { var newRetentionPolicy = await _hiarcDatabase.CreateRetentionPolicy(request); var uri = $"{_hiarcSettings.BaseUri}/retentionpolicies/{newRetentionPolicy.Key}"; return(Created(uri, newRetentionPolicy)); } catch (Exception ex) { return(BuildErrorResponse(ex, _logger)); } }
public async Task <RetentionPolicy> CreateRetentionPolicy(uint seconds, Dictionary <string, object> metadata = null, string asUserKey = null, string bearerToken = null, bool logToConsole = true) { var key = GenerateKey("retentionPolicy"); var createRetentionPolicyRequest = new CreateRetentionPolicyRequest() { Key = key, Name = $"name-{key}", Description = "Lobster taco retention policy", Metadata = metadata, Seconds = seconds }; var newRetentionPolicy = await Post <CreateRetentionPolicyRequest, RetentionPolicy>(createRetentionPolicyRequest, "retentionpolicies", asUserKey, bearerToken); if (logToConsole) { Console.WriteLine($"Created New Retention Policy: {ToJson(newRetentionPolicy)}\""); } ; return(newRetentionPolicy); }