Example #1
0
        public AimpActionResult <IAimpGroupingTreeDataProviderSelection> GetData(IAimpGroupingTreeSelection selection)
        {
            IAimpGroupingTreeDataProviderSelection data = null;

            var valueResult = selection.GetValue(0);

            if (valueResult.ResultType == ActionResultType.OK)
            {
                try
                {
                    object outValue = valueResult.Item2;

                    if (!string.IsNullOrWhiteSpace(outValue?.ToString()))
                    {
                        var pathParts = outValue.ToString().Split(new[] { "\\" }, StringSplitOptions.RemoveEmptyEntries);
                        var category  =
                            (DataStorageCategoryType)Enum.Parse(typeof(DataStorageCategoryType), pathParts[1]);
                        data = new DataProviderGroupingTreeSelection(_dataProviders[category](outValue.ToString()));
                        return(new AimpActionResult <IAimpGroupingTreeDataProviderSelection>(ActionResultType.OK, data));
                    }
                }
                catch (Exception)
                {
                    return(new AimpActionResult <IAimpGroupingTreeDataProviderSelection>(ActionResultType.Fail, null));
                }
            }

            data = new DataProviderGroupingTreeSelection(PopulateRoot());

            return(new AimpActionResult <IAimpGroupingTreeDataProviderSelection>(ActionResultType.OK, data));
        }
Example #2
0
        public AimpActionResult <IAimpGroupingTreeDataProviderSelection> GetData(IAimpGroupingTreeSelection selection)
        {
            IAimpGroupingTreeDataProviderSelection data = null;

            var count = selection.GetCount();

            if (count > 0)
            {
                var r = selection.GetValue(0);
                if (r.ResultType == ActionResultType.OK)
                {
                    return(new AimpActionResult <IAimpGroupingTreeDataProviderSelection>(ActionResultType.OK, data));
                }
            }

            data = new CustomAimpGroupingTreeDataProviderSelection();

            return(new AimpActionResult <IAimpGroupingTreeDataProviderSelection>(ActionResultType.OK, data));
        }