protected override void ProcessRecord()
{
var repos = ConnectionFactory.GetRepositories(ConnectionParameters);
if (Name == null || Name.Length == 0)
{
Name = new [] { "" };
}
foreach (var curName in Name)
{
var pattern = "*";
if (!String.IsNullOrEmpty(curName))
{
pattern = Exact.IsPresent ? curName : curName + "*";
}
var options = Exact.IsPresent ? WildcardOptions.None : WildcardOptions.IgnoreCase;
WildcardPattern wildcard = new WildcardPattern(pattern, options);
WriteObject(from rep in repos where wildcard.IsMatch(rep.Name) select rep, true);
}
}
}