Esempio n. 1
0
 private void TransmitResult(ReadCommandResult <Account> result, IEnumerable <ICommandActionListener> listeners = null)
 {
     if (listeners != null && result != null)
     {
         foreach (var listener in listeners)
         {
             listener.OnCommand(result);
         }
     }
 }
Esempio n. 2
0
        protected override bool TryDoAction(ILog log, IEnumerable <ICommandActionListener> listeners = null)
        {
            IEnumerable <Account> accounts = GetAccounts();

            FilterCriteria criteria = GetFilterCriteria();

            ReadCommandResult <Account> result = new ReadCommandResult <Account>(this, true, accounts, criteria);

            TransmitResult(result, listeners);
            return(true);
        }
        public void OnCommand <T>(ReadCommandResult <T> result) where T : IListable
        {
            if (result.IsSuccessful)
            {
                int count = result.FilteredItems.Count();
                Console.WriteLine($"Successfully found {result.FilteredItems.First().TypeName.ToQuantity(count)}.");

                if (result.Criteria.Fields.Any())
                {
                    Console.WriteLine("Criteria:");
                    int i = 1;
                    foreach (var criteria in result.Criteria.Fields)
                    {
                        Console.WriteLine($"\t{i++}) {criteria.Key} {criteria.Value}");
                    }

                    Console.WriteLine();
                }

                ConsoleTable table = new ConsoleTable();

                Dictionary <T, List <object> > rows = new Dictionary <T, List <object> >();
                bool firstRow = true;
                foreach (var item in result.FilteredItems)
                {
                    var properties = item.GetPropertyValues().Where(x => x.Property.IsVisibleInList);
                    if (firstRow)
                    {
                        table.AddColumn(properties.Select(x => x.Property.DisplayName));
                        firstRow = false;
                    }
                    table.AddRow(properties.Select(x => x.Value.ToString()).ToArray());
                }

                table.Write(Format.Minimal);
            }
            else
            {
                Console.WriteLine($"Something went wrong. Failed to delete object");
            }
        }
Esempio n. 4
0
 static string Dump(ReadCommandResult commandResult)
 {
     return(TestUtility.Dump(commandResult.Records) + " / " + commandResult.TotalCount.Value);
 }
Esempio n. 5
0
 public virtual void OnCommand <T>(ReadCommandResult <T> result) where T : IListable
 {
     _results.Add(result);
 }