[PT Run] [Folder Plugin] Environment Variables With Autocomplete (#13811)

* search environment variables folders with autocomplete

* refactoring and tests

* fix
This commit is contained in:
Davide Giacometti
2021-10-20 15:27:15 +02:00
committed by GitHub
parent 15f3c2ff66
commit 64cc6b7af7
10 changed files with 296 additions and 0 deletions

View File

@@ -0,0 +1,39 @@
// Copyright (c) Microsoft Corporation
// The Microsoft Corporation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.Plugin.Folder.Sources;
using Microsoft.Plugin.Folder.Sources.Result;
namespace Microsoft.Plugin.Folder
{
public class EnvironmentVariableProcessor : IFolderProcessor
{
private readonly IEnvironmentHelper _environmentHelper;
private readonly IQueryEnvironmentVariable _queryEnvironmentVariable;
public EnvironmentVariableProcessor(IEnvironmentHelper environmentHelper, IQueryEnvironmentVariable queryEnvironmentVariable)
{
_environmentHelper = environmentHelper;
_queryEnvironmentVariable = queryEnvironmentVariable;
}
public IEnumerable<IItemResult> Results(string actionKeyword, string search)
{
if (search == null)
{
throw new ArgumentNullException(nameof(search));
}
if (!_environmentHelper.IsEnvironmentVariable(search))
{
return Enumerable.Empty<IItemResult>();
}
return _queryEnvironmentVariable.Query(search);
}
}
}