Пример #1
0
        public Task <T> Find <T>(PackageDescriptor descriptor)
            where T : IPackage
        {
            if (!descriptor.IsPathSpecified)
            {
                if (_directoryAccessor.DirectoryExists(descriptor.Name))
                {
                    var directoryAccessor = _directoryAccessor.GetDirectoryAccessorForRelativePath(descriptor.Name);

                    var pkg = new Package2(
                        descriptor,
                        directoryAccessor);

                    if (pkg is T t)
                    {
                        return(Task.FromResult(t));
                    }
                }
            }

            return(Task.FromResult <T>(default));
Пример #2
0
        public async Task <T> Find <T>(PackageDescriptor descriptor)
            where T : class, IPackage
        {
            if (!descriptor.IsPathSpecified)
            {
                if (_directoryAccessor.DirectoryExists(descriptor.Name))
                {
                    var directoryAccessor = _directoryAccessor.GetDirectoryAccessorForRelativePath(descriptor.Name);

                    var pkg = new Package2(
                        descriptor,
                        directoryAccessor);

                    pkg.Add(new ProjectAsset(directoryAccessor));

                    if (pkg is T t)
                    {
                        return(t);
                    }
                }
            }

            return(default);
Пример #3
0
 public static bool RootDirectoryExists(
     this IDirectoryAccessor directoryAccessor) =>
 directoryAccessor.DirectoryExists(new RelativeDirectoryPath("."));
Пример #4
0
 public static bool DirectoryExists(
     this IDirectoryAccessor directoryAccessor,
     string relativePath) =>
 directoryAccessor.DirectoryExists(new RelativeDirectoryPath(relativePath));