Paste from clipboard, logging

This commit is contained in:
2023-07-06 20:39:53 +02:00
parent 7afce07d21
commit 5c716d5c28
15 changed files with 156 additions and 53 deletions

View File

@@ -23,6 +23,7 @@ public interface IContentProvider : IContainer, IOnContainerEnter
ItemInitializationSettings itemInitializationSettings = default);
NativePath GetNativePath(FullName fullName);
FullName GetFullName(NativePath nativePath);
Task<byte[]?> GetContentAsync(IElement element, int? maxLength = null, CancellationToken cancellationToken = default);
bool CanHandlePath(NativePath path);

View File

@@ -15,4 +15,5 @@ public interface ITimelessContentProvider
ItemInitializationSettings itemInitializationSettings = default);
Task<IItem?> GetItemByNativePathAsync(NativePath nativePath, PointInTime? pointInTime = null);
FullName? GetFullNameByNativePath(NativePath nativePath);
}

View File

@@ -88,6 +88,7 @@ public abstract class ContentProviderBase : IContentProvider
ItemInitializationSettings itemInitializationSettings = default);
public abstract NativePath GetNativePath(FullName fullName);
public abstract FullName GetFullName(NativePath nativePath);
public abstract Task<byte[]?> GetContentAsync(IElement element,
int? maxLength = null,

View File

@@ -44,4 +44,16 @@ public class TimelessContentProvider : ITimelessContentProvider
return null;
}
public FullName? GetFullNameByNativePath(NativePath nativePath)
{
foreach (var contentProvider in _contentProviderRegistry.ContentProviders)
{
if(!contentProvider.CanHandlePath(nativePath)) continue;
return contentProvider.GetFullName(nativePath);
}
return null;
}
}