@using Rms.Risk.Mango.Components.JForms
@inherits CmdBase
@attribute [MongoCommand(CmdType.Admin, "Create timeseries", "Collections")]
@if (Parameters != null)
@*
* dbMango
*
* Copyright 2025 Deutsche Bank AG
* SPDX-License-Identifier: Apache-2.0
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*@
{
}
@code {
private readonly TemplateRec _template = new()
{
Parameters =
[
new() { Type = "bool", Name = "Capped", Path = "$.capped", Icon="icon-wrench-outline-sm" },
new() { Type = "text", Name = "Time field", Path = "$.timeseries.timeField", Icon="icon-annotate-sm" },
new() { Type = "text", Name = "Meta field", Path = "$.timeseries.metaField", Icon="icon-annotate-sm" },
new() { Type = "-" },
new() { Type = "text", Name = "Granularity", Path = "$.timeseries.granularity", Icon="icon-wrench-outline-sm" },
new() { Type = "int", Name = "bucketMaxSpanSeconds", Path = "$.timeseries.bucketMaxSpanSeconds", Icon="icon-alarm-clock-sm" },
new() { Type = "int", Name = "bucketRoundingSeconds", Path = "$.timeseries.bucketRoundingSeconds", Icon="icon-alarm-clock-sm"},
]
};
protected override string CommandTemplate => @"{
""create"": ""[COLLECTION]"",
""capped"": false,
""timeseries"": {
""timeField"": """",
""metaField"": """",
""granularity"": """",
""bucketMaxSpanSeconds"": 600,
""bucketRoundingSeconds"": 1
}
}";
}