/// <summary>
        /// This method displays the indicated page.
        /// </summary>
        /// <param name="direction">Direction can be a word like next, previous last or first.  Direction can also be an integer number.</param>
        private void GetPage(string direction)
        {
            if (Parameters.ShowPager)
            {
                if (direction == "next")
                {
                    CurrentPage++;
                }
                else if (direction == "previous")
                {
                    CurrentPage--;
                }
                else if (direction == "first")
                {
                    CurrentPage = 1;
                }
                else if (direction == "last")
                {
                    CurrentPage = TotalPages;
                }
                else
                {
                    CurrentPage = Convert.ToInt32(direction);
                }

                if (CurrentPage > TotalPages)
                {
                    CurrentPage = TotalPages;
                }
                if (CurrentPage < 1)
                {
                    CurrentPage = 1;
                }

                if (!FilterActive)
                {
                    Parameters.DataList = OriginalList.Skip((CurrentPage - 1) * Parameters.PageSize).Take(Parameters.PageSize).ToList();
                }
                else
                {
                    Parameters.DataList = FilteredList.Skip((CurrentPage - 1) * Parameters.PageSize).Take(Parameters.PageSize).ToList();
                }
            }
        }
        public FilteredList <Bid> GetAll(Filter filter)
        {
            var filteredList = new FilteredList <Bid>
            {
                TotalCount = _ctx.Bids.Count(),
                FilterUsed = filter,
                List       = _ctx.Bids.Select(b => new Bid()
                {
                    BidId     = b.BidId,
                    UserId    = b.UserId,
                    ProductId = b.ProductId,
                    Price     = b.Price,
                    CreatedAt = b.CreatedAt
                })
                             .ToList()
            };

            return(filteredList);
        }
Esempio n. 3
0
 public ActionResult <FilteredList <Pet> > Get([FromQuery] Filter filter)
 {
     try
     {
         FilteredList <Pet> filteredPets         = _petService.ReadAll(filter);
         List <Object>      advancedFilteredPets = new List <object>();
         foreach (Pet pet in filteredPets.List)
         {
             advancedFilteredPets.Add(new { pet.Id, pet.Name, pet.Price, pet.Type, age = DateTime.Today.Year - pet.Birthdate.Year, pet.Birthdate, pet.SoldDate, pet.Owner, pet.PetColors });
         }
         return(Ok(new FilteredList <object> {
             TotalPages = filteredPets.TotalPages, List = advancedFilteredPets
         }));;
     }
     catch (Exception e)
     {
         return(BadRequest(e.Message));
     }
 }
Esempio n. 4
0
        public FilteredList <Customer> ReadAll(Filter filter)
        {
            var filteredList = new FilteredList <Customer>();

            if (filter != null && filter.ItemsPerPage > 0 && filter.CurrentPage > 0)
            {
                filteredList.List = _ctx.Customers
                                    .Skip((filter.CurrentPage - 1) * filter.ItemsPerPage)
                                    .Take(filter.ItemsPerPage);
                filteredList.Count = _ctx.Customers.Count();
                return(filteredList);
            }
            else
            {
                filteredList.List  = _ctx.Customers;
                filteredList.Count = filteredList.List.Count();
                return(filteredList);
            }
        }
Esempio n. 5
0
 protected virtual void OnAllInputsFlowed(FilteredList <IColorable> sender)
 {
     if (!GetNotNullInput().Any())
     {
         Clear();
         //InvokeOnFlow();
         FlowResult(null);
     }
     else
     {
         if (!FlowIfCan())
         {
             return;
         }
         base.Flow(this, Color.Mix(Input.Select(inConn => inConn.GetCurrentColor())));
         CurrentColor = null;
         DoWork(); //Flow
     }
 }
Esempio n. 6
0
        public Model.FilteredList <Task> GetTasks(Model.Filter filter)
        {
            var filteredList = new FilteredList <Task> {
                FilterUsed = filter
            };
            var taskList = new List <Task>();

            if (filter.SearchField != null && filter.SearchValue != null)
            {
                switch (filter.SearchField)
                {
                case "Description":     //Where(p => p.Description.Contains(filter.SearchValue))
                    taskList = _ctx.Tasks.Select(t => new Task()
                    {
                        Id          = t.Id,
                        AssigneeId  = t.AssigneeId,
                        Assignee    = t.Assignee,
                        Description = t.Description,
                        DueDate     = t.DueDate,
                        IsCompleted = t.IsCompleted
                    }).Where(p => p.Description.Contains(filter.SearchValue)).ToList();
                    break;

                default:
                    break;
                }
                filteredList.List       = taskList;
                filteredList.TotalCount = taskList.Count();
                return(filteredList);
            }

            filteredList.List = _ctx.Tasks.Select(t => new Task()
            {
                Id          = t.Id,
                AssigneeId  = t.AssigneeId,
                Assignee    = t.Assignee,
                Description = t.Description,
                DueDate     = t.DueDate,
                IsCompleted = t.IsCompleted
            });
            filteredList.TotalCount = _ctx.Tasks.Count();
            return(filteredList);
        }
        public FilteredList <User> GetAll(Filter filter)
        {
            var filteredList = new FilteredList <User>
            {
                TotalCount = _ctx.Users.Count(),
                FilterUsed = filter,
                List       = _ctx.Users.Select(u => new User()
                {
                    UserId   = u.UserId,
                    Name     = u.Name,
                    Username = u.Username,
                    Address  = u.Address,
                    Email    = u.Email,
                    IsAdmin  = u.IsAdmin
                })
                             .ToList()
            };

            return(filteredList);
        }
Esempio n. 8
0
        public FilteredList <Pet> ReadPets(Filter filter)
        {
            var filteredList = new FilteredList <Pet>();

            if (filter.CurrentPage > 0 && filter.ItemsPrPage > 0)
            {
                filteredList.List = _context.Pets
                                    .Include(p => p.Colours)
                                    .Skip((filter.CurrentPage - 1) * filter.ItemsPrPage).Take(filter.ItemsPrPage);

                filteredList.Count = _context.Pets.Count();
                return(filteredList);
            }

            filteredList.List = _context.Pets
                                .Include(p => p.Colours)
                                .ToList();
            filteredList.Count = _context.Pets.Count();
            return(filteredList);
        }
Esempio n. 9
0
        public FilteredList <Owner> ReadAll(Filter filter)
        {
            //Create a Filtered List
            var filteredList = new FilteredList <Owner>();

            //If there is a Filter then filter the list and set Count
            if (filter != null && filter.ItemsPrPage > 0 && filter.CurrentPage > 0)
            {
                filteredList.List = _ctx.Owners
                                    .Skip((filter.CurrentPage - 1) * filter.ItemsPrPage)
                                    .Take(filter.ItemsPrPage);
                filteredList.Count = _ctx.Owners.Count();
                return(filteredList);
            }

            //Else just return the full list and get the count from the list (to save a SQL call)
            filteredList.List  = _ctx.Owners;
            filteredList.Count = filteredList.List.Count();
            return(filteredList);
        }
        public FilteredList <Product> GetAll(Filter filter)
        {
            var filteredList = new FilteredList <Product>();

            filteredList.TotalCount = _ctx.Products.Count();
            filteredList.FilterUsed = filter;

            IEnumerable <Product> filtering = _ctx.Products
                                              .Include(c => c.Category)
                                              .Include(b => b.Bids)
                                              .ThenInclude(u => u.User);


            if (!string.IsNullOrEmpty(filter.SearchText))
            {
                switch (filter.SearchField)
                {
                case "name":
                    filtering = filtering.Where(p => p.Name.ToLower().Contains(filter.SearchText.ToLower()));
                    break;

                case "category":
                    filtering = filtering.Where(p => p.Category.Name.ToLower().Contains(filter.SearchText.ToLower()));
                    break;
                }
            }

            if (!string.IsNullOrEmpty(filter.OrderDirection) && !string.IsNullOrEmpty(filter.OrderProperty))
            {
                var prop = typeof(Product).GetProperty(filter.OrderProperty);
                filtering = "ASC".Equals(filter.OrderDirection) ?
                            filtering.OrderBy(o => prop.GetValue(o, null)) :
                            filtering.OrderByDescending(o => prop.GetValue(o, null));
            }

            filteredList.List         = filtering.ToList();
            filteredList.ResultsFound = filtering.Count();

            return(filteredList);
        }
Esempio n. 11
0
        public FilteredList <PetType> GetAllPetTypesFiltered(Filter filter)
        {
            DateTime searchDate;
            Double   searchDouble;
            var      filteredList = new FilteredList <PetType>();

            filteredList.TotalCount = GetAllPetTypes().Count;
            filteredList.FilterUsed = filter;

            IEnumerable <PetType> filtering = GetAllPetTypes();

            if (!string.IsNullOrEmpty(filter.SearchText))
            {
                switch (filter.SearchField)
                {
                case "Name":
                    filtering = filtering.Where(p => p.Name.Contains(filter.SearchText));
                    break;

                default:
                    throw new InvalidDataException("Wrong Search-field input, search-field has to match a corresponding petType property");
                }
            }

            if (!string.IsNullOrEmpty(filter.OrderDirection) && !string.IsNullOrEmpty(filter.OrderProperty))
            {
                var prop = typeof(PetType).GetProperty(filter.OrderProperty);
                if (prop == null)
                {
                    throw new InvalidDataException("Wrong OrderProperty input, OrderProperty has to match to corresponding petType property");
                }

                filtering = "ASC".Equals(filter.OrderDirection)
                    ? filtering.OrderBy(p => prop.GetValue(p, null))
                    : filtering.OrderByDescending(p => prop.GetValue(p, null));
            }

            filteredList.List = filtering.ToList();
            return(filteredList);
        }
        public IActionResult Index(ResultsFilter filter)
        {
            var subjects = _api.GetSubjects();

            if (subjects == null)
            {
                throw new Exception("Failed to retrieve subject list from api");
            }
            filter.qualifications = !string.IsNullOrWhiteSpace(filter.qualifications) ? filter.qualifications : string.Join(",", Enum.GetNames(typeof(QualificationOption)));
            FilteredList <Subject> filteredSubjects;

            if (filter.SelectedSubjects.Count > 0)
            {
                filteredSubjects = new FilteredList <Subject>(
                    subjects.Where(subject => filter.SelectedSubjects.Contains(subject.Id)).ToList(),
                    subjects.Count
                    );
            }
            else
            {
                filteredSubjects = new FilteredList <Subject>(subjects, subjects.Count);
            }

            var mapsEnabled = _featureFlags.Maps;

            var queryFilter = filter.ToQueryFilter();

            var viewModel = new ResultsViewModel
            {
                Subjects    = filteredSubjects,
                FilterModel = filter,
                MapsEnabled = mapsEnabled
            };

            queryFilter.pageSize = 10;

            viewModel.Courses = _api.GetCourses(queryFilter);

            return(View(viewModel));
        }
Esempio n. 13
0
        public FilteredList <Owner> ReadOwners(Filter filter)
        {
            var filteredList = new FilteredList <Owner>();

            filteredList.TotalCount = listOwners.Count;
            filteredList.FilterUsed = filter;


            IEnumerable <Owner> filtering = listOwners;

            if (!string.IsNullOrEmpty(filter.SearchText))
            {
                switch (filter.SearchField)
                {
                case "FirstName":
                    filtering = filtering.Where(o => o.FirstName.ToLower().Contains(filter.SearchText.ToLower()));
                    break;

                case "LastName":
                    filtering = filtering.Where(o => o.LastName.Contains(filter.SearchText));
                    break;
                }
            }

            if (!string.IsNullOrEmpty(filter.OrderDirection) && !string.IsNullOrEmpty(filter.OrderProperty))
            {
                var prop = typeof(Owner).GetProperty(filter.OrderProperty);

                filtering = "ASC".Equals(filter.OrderDirection) ?
                            filtering.OrderBy(o => prop.GetValue(o, null)) :
                            filtering.OrderByDescending(o => prop.GetValue(o, null));
            }

            filteredList.List = filtering.ToList();

            filteredList.ShowingCount = filtering.Count();

            return(filteredList);
        }
Esempio n. 14
0
        public FilteredList <Pet> ReadAll(Filter filter)
        {
            var filteredList = new FilteredList <Pet>();

            filteredList.TotalCount = listPets.Count;
            filteredList.FilterUsed = filter;


            IEnumerable <Pet> filtering = listPets;

            if (!string.IsNullOrEmpty(filter.SearchText))
            {
                switch (filter.SearchField)
                {
                case "Name":
                    filtering = filtering.Where(p => p.Name.ToLower().Contains(filter.SearchText.ToLower()));
                    break;

                case "Color":
                    filtering = filtering.Where(p => p.Color.Contains(filter.SearchText));
                    break;
                }
            }

            if (!string.IsNullOrEmpty(filter.OrderDirection) && !string.IsNullOrEmpty(filter.OrderProperty))
            {
                var prop = typeof(Pet).GetProperty(filter.OrderProperty);

                filtering = "ASC".Equals(filter.OrderDirection) ?
                            filtering.OrderBy(p => prop.GetValue(p, null)) :
                            filtering.OrderByDescending(p => prop.GetValue(p, null));
            }

            filteredList.List = filtering.ToList();

            filteredList.ShowingCount = filtering.Count();

            return(filteredList);
        }
        public FilteredList <Customer> ReadAll(Filter filter)
        {
            var filteredList = new FilteredList <Customer>();

            filteredList.TotalCount = _ctx.Customers.Count();
            filteredList.FilterUsed = filter;
            filteredList.List       =
                _ctx.Customers.Select(c => new Customer()
            {
                Id        = c.Id,
                FirstName = c.FirstName,
                LastName  = c.LastName,
                Address   = c.Address == null ? null : new Address
                {
                    Id         = c.Address.Id,
                    Additional = c.Address.Additional,
                    StreetName = c.Address.StreetName,
                    StreetNr   = c.Address.StreetNr
                }
            }).ToList();
            return(filteredList);
        }
Esempio n. 16
0
        public FilteredList <PetType> ReadAllTypes(Filter filter)
        {
            var filteredList = new FilteredList <PetType>();

            filteredList.TotalCount = ListpetTypes.Count;
            filteredList.FilterUsed = filter;


            IEnumerable <PetType> filtering = ListpetTypes;

            if (!string.IsNullOrEmpty(filter.SearchText))
            {
                //switch (filter.SearchField)
                //{


                filtering = filtering.Where(p => p.Pettype.ToLower().Contains(filter.SearchText.ToLower()));
                //break;


                //}
            }

            if (!string.IsNullOrEmpty(filter.OrderDirection) && !string.IsNullOrEmpty(filter.OrderProperty))
            {
                var prop = typeof(PetType).GetProperty(filter.OrderProperty);

                filtering = "ASC".Equals(filter.OrderDirection) ?
                            filtering.OrderBy(p => prop.GetValue(p, null)) :
                            filtering.OrderByDescending(p => prop.GetValue(p, null));
            }

            filteredList.List = filtering.ToList();

            filteredList.ShowingCount = filtering.Count();

            return(filteredList);
        }
Esempio n. 17
0
        public void BrowseForSource()
        {
            OpenFileDialog dialog = new OpenFileDialog();

            dialog.InitialDirectory = Source;
            dialog.Title            = "Please select your osu! executable.";
            dialog.Filter           = "osu! launcher (osu!.exe)|osu!.exe";
            DialogResult result = dialog.ShowDialog();

            if (result.ToString() == "OK")
            {
                Source   = dialog.FileName.Replace("osu!.exe", "");
                FileList = OsuSong.ParseAll(Source);
                FilteredList.Clear();
                foreach (OsuSong file in FileList)
                {
                    FilteredList.Add(file);
                }
                StreamWriter sw = new StreamWriter("path.dat", false, Encoding.Unicode);
                sw.Write(Source + "?" + Destination);
                sw.Close();
            }
        }
        protected void FilterNinjas()
        {
            var selected = FilteredList.FirstOrDefault(i => i.IsSelected == true);

            if (selected != null)
            {
                selected.IsSelected = false;
            }

            FilteredList = NinjaList
                           .Where(i => i.Name.ToLower()
                                  .Contains(SearchTerm.ToLower()))
                           .ToList();

            selected = FilteredList.FirstOrDefault(n => n == NinjaModel);

            if (selected != null)
            {
                selected.IsSelected = true;
            }

            StateHasChanged();
        }
Esempio n. 19
0
        public FilteredList <Car> ReadAllCars(Filter filter)
        {
            var filteredList = new FilteredList <Car>();

            if (filter != null)
            {
                if (string.IsNullOrEmpty(filter.SearchBrandNameQuery))
                {
                    filter.SearchBrandNameQuery = "";
                }
            }

            if (filter != null && (filter.CurrentPage > 0 && filter.ItemsPrPage > 0))
            {
                filteredList.List = _carShopContext.Cars
                                    .Include(c => c.CarAccessories)
                                    .Include(c => c.CarDetails)
                                    .Include(c => c.CarSpecs)
                                    .Include(c => c.PictureLinks).Skip((filter.CurrentPage - 1)
                                                                       * filter.ItemsPrPage).Take(filter.ItemsPrPage)
                                    .Where(c => c.CarDetails.BrandName.Contains(filter.SearchBrandNameQuery));

                filteredList.Count = _carShopContext.Cars.Count();

                return(filteredList);
            }

            filteredList.List = _carShopContext.Cars
                                .Include(c => c.CarAccessories)
                                .Include(c => c.CarDetails)
                                .Include(c => c.CarSpecs)
                                .Include(c => c.PictureLinks)
                                .Where(c => c.CarDetails.BrandName.Contains(filter.SearchBrandNameQuery));
            filteredList.Count = _carShopContext.Cars.Count();

            return(filteredList);
        }
        public FilteredList <Pet> ReadPets(Filter filter)
        {
            FilteredList <Pet> filteredList = new FilteredList <Pet>();

            if (filter != null)
            {
                filteredList.List = context.Pets
                                    .Include(x => x.PreviousOwner)
                                    .AsNoTracking()
                                    .Skip((filter.CurrentPage - 1) * filter.ItemsPrPage)
                                    .Take(filter.ItemsPrPage);
                filteredList.Count = filteredList.List.Count();
                return(filteredList);
            }
            else
            {
                filteredList.List = context.Pets
                                    .AsNoTracking()
                                    .Include("PreviousOwner");
            }

            filteredList.Count = context.Pets.Count();
            return(filteredList);
        }
Esempio n. 21
0
        public static FilteredList <TList> AddFiltrationHeader <TList>(this HttpResponse response, FilteredList <TList> filteredList)
        {
            AddFiltrationHeader(response, filteredList.Header);

            return(filteredList);
        }
Esempio n. 22
0
        public FilteredList <Pet> GetAllPetsFiltered(Filter filter)
        {
            DateTime searchDate;
            Double   searchDouble;
            var      filteredList = new FilteredList <Pet>();

            filteredList.TotalCount = Count();
            filteredList.FilterUsed = filter;

            if (filter.CurrentPage == 0)
            {
                filter.CurrentPage = 1;
            }

            if (filter.ItemsPrPage == 0)
            {
                filter.ItemsPrPage = 10;
            }

            IEnumerable <Pet> filtering = _context.Pets
                                          .Skip((filter.CurrentPage - 1) * filter.ItemsPrPage)
                                          .Take(filter.ItemsPrPage);

            if (!string.IsNullOrEmpty(filter.SearchText))
            {
                switch (filter.SearchField)
                {
                case "Name":
                    filtering = filtering.Where(pet => pet.Name.Contains(filter.SearchText));
                    break;

                case "PetType":
                    if (_context.PetTypes.ToList().Exists(petType => petType.Name.Contains(filter.SearchText)))
                    {
                        filtering = filtering.Where(pet => pet.PetType.PetTypeId.Equals(_context.PetTypes.ToList().Find(petType => petType.Name.Equals(filter.SearchText)).PetTypeId));
                    }
                    else
                    {
                        throw new KeyNotFoundException("Could not find a pet with that petType");
                    }
                    break;

                case "BirthDate":

                    if (DateTime.TryParse(filter.SearchText, out searchDate))
                    {
                        filtering = filtering.Where(p => p.BirthDate.ToShortDateString().Contains(searchDate.ToShortDateString()));
                    }
                    else
                    {
                        throw new InvalidDataException("Wrong input, has to be a valid birthdate in format day/month/year");
                    }

                    break;

                case "SoldDate":

                    if (DateTime.TryParse(filter.SearchText, out searchDate))
                    {
                        filtering = filtering.Where(p => p.SoldDate.ToShortDateString().Contains(searchDate.ToShortDateString()));
                    }
                    else
                    {
                        throw new InvalidDataException("Wrong input, has to be a valid birthdate in format day/month/year");
                    }
                    break;

                case "PreviousOwner":
                    if (_context.Owners.ToList().Exists(owner => owner.Name.Contains(filter.SearchText)))
                    {
                        filtering = filtering.Where(pet => pet.Owner.OwnerId.Equals(_context.Owners.ToList().Find(owner => owner.Name.Equals(filter.SearchText)).OwnerId));
                    }
                    else
                    {
                        throw new KeyNotFoundException("Could not find a pet with that owner");
                    }

                    break;

                case "Price":
                    if (double.TryParse(filter.SearchText, out searchDouble))
                    {
                        filtering = filtering.Where(p => p.Price.Equals(searchDouble));
                    }
                    else
                    {
                        throw new InvalidDataException("Wrong input, has to be a valid double");
                    }
                    break;

                default:
                    throw new InvalidDataException("Wrong Search-field input, search-field has to match a corresponding pet property");
                }
            }

            if (!string.IsNullOrEmpty(filter.OrderDirection) && !string.IsNullOrEmpty(filter.OrderProperty))
            {
                var prop = typeof(Pet).GetProperty(filter.OrderProperty);
                if (prop == null)
                {
                    throw new InvalidDataException("Wrong OrderProperty input, OrderProperty has to match to corresponding pet property");
                }



                filtering = "ASC".Equals(filter.OrderDirection)
                    ? filtering.OrderBy(p => prop.GetValue(p, null))
                    : filtering.OrderByDescending(p => prop.GetValue(p, null));
            }

            filteredList.List = filtering.ToList();
            return(filteredList);
        }
Esempio n. 23
0
        public static FilteredList <TList, THeader> AddFiltrationHeader <TList, THeader>(this HttpResponse response, FilteredList <TList, THeader> filteredList)
            where THeader : FiltrationHeader
        {
            AddFiltrationHeader(response, filteredList.Header);

            return(filteredList);
        }
Esempio n. 24
0
 /// <summary>
 /// Clearing finished
 /// </summary>
 /// <param name="sender"></param>
 private void AllLastFinished(FilteredList <ColorableClass> sender)
 {
     WasCleared = true;
     ClearingEvent.Set();
 }
Esempio n. 25
0
 private void AllNotifyNodesSignalled(FilteredList <ColorableClass> sender)
 {
     Finish();
 }
Esempio n. 26
0
        private void DoFilterStdList()
        {
            if (this.PreFilteredList.Count > 0)
            {
                this.PreFilteredList.Clear();
            }
            if (this.Slist.Count > 0)
            {
                switch (this.FilterCategory)
                {
                case "none":
                    this.PreFilteredList = this.Slist;
                    break;

                case "male":
                    var stdlst = from std in this.Slist
                                 where std.Sex == "M"
                                 select std;
                    foreach (Student item in stdlst)
                    {
                        this.PreFilteredList.Add(item);
                    }
                    break;

                case "female":
                    var stdlst2 = from std in this.Slist
                                  where std.Sex == "F"
                                  select std;
                    foreach (Student item in stdlst2)
                    {
                        this.PreFilteredList.Add(item);
                    }
                    break;

                default:
                    break;
                }

                if ((SchoolClasses[ClsIndex] == "XI" || SchoolClasses[ClsIndex] == "XII") && HsSubIndex != -1)
                {
                    if (this.FilteredList.Count > 0)
                    {
                        this.FilteredList.Clear();
                    }
                    if (PreFilteredList.Count > 0)
                    {
                        var stdList3 = from std in PreFilteredList
                                       where std.HsSub1 == HsActiveSubs[HsSubIndex] || std.HsSub2 == HsActiveSubs[HsSubIndex] || std.HsSub3 == HsActiveSubs[HsSubIndex] || std.HsAdlSub == HsActiveSubs[HsSubIndex]
                                       select std;

                        FilteredList.Clear();
                        foreach (Student item in stdList3)
                        {
                            FilteredList.Add(item);
                        }
                    }
                }
                else
                {
                    if (this.FilteredList.Count > 0)
                    {
                        this.FilteredList.Clear();
                    }
                    if (PreFilteredList.Count > 0)
                    {
                        foreach (var item in PreFilteredList)
                        {
                            FilteredList.Add(item);
                        }
                    }
                }
            }
        }
Esempio n. 27
0
 /// <summary>
 /// Stoping finished
 /// </summary>
 /// <param name="sender"></param>
 private void AllFirstSignalled(FilteredList <ColorableClass> sender)
 {
     WasStoped = true;
     StopingEvent.Set();
 }
Esempio n. 28
0
 protected virtual void OnAllInputsFlowed(FilteredList<IColorable> sender)
 {
     if (!GetNotNullInput().Any())
     {
         Clear();
         //InvokeOnFlow();
         FlowResult(null);
     }
     else
     {
         if (!FlowIfCan())
             return;
         base.Flow(this, Color.Mix(Input.Select(inConn=>inConn.GetCurrentColor())));
         CurrentColor = null;
         DoWork(); //Flow
     }
 }
Esempio n. 29
0
 protected virtual void OnAllFiltered(FilteredList<IColorable> sender)
 {
 }
Esempio n. 30
0
        private void OnAllOutputSignalled(FilteredList<IColorable> sender)
        {
            if (!SignalIfCan())
                return;
            var exceptionChain = BuildExceptionChain(Output);
            Signal = new ErrorSignal(new GraphExceptionAllPossibilitiesFailed(this, exceptionChain));

            base.NotifyBack(this, Signal);
            InvokeOnNotifyBack();

            Input.NotifyBack(this, Signal);
        }
Esempio n. 31
0
 public List <Pet> ReadPetsWithoutOwner(FilteredList <Pet> filteredList)
 {
     throw new NotImplementedException();
 }
Esempio n. 32
0
 protected virtual void OnAllFiltered(FilteredList <IColorable> sender)
 {
 }
Esempio n. 33
0
 protected Exception[] BuildExceptionChain(FilteredList<IColorable> connections)
 {
     FilteredList<IColorable>.ElementList output = connections.Filtered;
     Exception[] previousErrors = output.Select(conn => conn.GetSignal())
           .Where(signal => signal is ErrorSignal)
           .Select(signal => ((ErrorSignal) signal).Error).ToArray();
     return previousErrors;
 }
Esempio n. 34
0
 /// <summary>
 /// All connections signalled false - send nil to all preceding nodes
 /// </summary>
 /// <param name="sender"></param>
 protected override void OnAllFiltered(FilteredList<IColorable> sender)
 {
     if (!SignalIfCan())
         return;
     var exceptionChain = BuildExceptionChain(Connections);
     Signal = new ErrorSignal(new GraphExceptionAllPossibilitiesFailed(this, exceptionChain));
     InvokeOnNotifyBack();
     if (Parent != null)
         Parent.NotifyBack(this, Signal);
 }
Esempio n. 35
0
        /* public bool CanFlow(Color newColor)
         * {
         *   if (newColor!=null)
         *       return (!Colored)||(newColor.CompareTo(CurrentColor)==0);
         *   return (Connections.IsFiltered())Connections.NotFilteredCount <= 1;
         * }*/

        /// <summary>
        /// All connections signalled nil - flow nil forth
        /// </summary>
        /// <param name="sender"></param>
        protected override void OnAllFiltered(FilteredList <IColorable> sender)
        {
            Clear();
            InvokeOnFlow();
            Parent.Flow(this, CurrentColor);
        }
Esempio n. 36
0
 /* public bool CanFlow(Color newColor)
 {
     if (newColor!=null)
         return (!Colored)||(newColor.CompareTo(CurrentColor)==0);
     return (Connections.IsFiltered())Connections.NotFilteredCount <= 1;
 }*/
 /// <summary>
 /// All connections signalled nil - flow nil forth
 /// </summary>
 /// <param name="sender"></param>
 protected override void OnAllFiltered(FilteredList<IColorable> sender)
 {
     Clear();
     InvokeOnFlow();
     Parent.Flow(this, CurrentColor);
 }