Skip to content

Commit

Permalink
Merge branch 'main' into andersonf/2623-remove-function
Browse files Browse the repository at this point in the history
  • Loading branch information
anderson-joyle authored Oct 16, 2024
2 parents 325b555 + 6c9855e commit c4b70fc
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 3 deletions.
Original file line number Diff line number Diff line change
@@ -1,15 +1,25 @@
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT license.

using System;

namespace Microsoft.PowerFx.Core.Entities
{
// Used by ServiceCapabilities.ToDelegationInfo for managing CDP x-ms-capabilities
internal class CdpDelegationInfo : TableDelegationInfo
{
public override ColumnCapabilitiesDefinition GetColumnCapability(string fieldName)
{
// We should never reach that point in CDP case
throw new System.NotImplementedException();
if (ColumnsCapabilities.TryGetValue(fieldName, out ColumnCapabilitiesBase columnCapabilitiesBase))
{
return columnCapabilitiesBase switch
{
ColumnCapabilities columnCapabilities => columnCapabilities.Definition,
_ => throw new NotImplementedException($"{columnCapabilitiesBase.GetType().Name} not supported yet")
};
}

return null;
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ public abstract class TableDelegationInfo
internal PagingCapabilities PagingCapabilities { get; init; }

// Defining per column capabilities
internal IReadOnlyCollection<KeyValuePair<string, ColumnCapabilitiesBase>> ColumnsCapabilities { get; init; }
internal IReadOnlyDictionary<string, ColumnCapabilitiesBase> ColumnsCapabilities { get; init; }

// Supports per record permission
internal bool SupportsRecordPermission { get; init; }
Expand Down Expand Up @@ -94,6 +94,8 @@ public sealed class ColumnCapabilities : ColumnCapabilitiesBase

private ColumnCapabilitiesDefinition _capabilities;

public ColumnCapabilitiesDefinition Definition => _capabilities;

// Those are default CDS filter supported functions
// From // PowerApps-Client\src\Language\PowerFx.Dataverse.Parser\Importers\DataDescription\CdsCapabilities.cs
public static readonly IEnumerable<DelegationOperator> DefaultFilterFunctionSupport = new DelegationOperator[]
Expand Down

0 comments on commit c4b70fc

Please sign in to comment.