Exemplo n.º 1
0
        private void onAddContainerMessage(Message message)
        {
            AddContainerMessage acm = (AddContainerMessage)message;

            Trace.TraceInformation("Added containter. Type: {0}; Id: {1}.", acm.containerType, acm.containerId);

            ContainersCore container = null;
            switch(acm.containerType)
            {
                case Enums.ContainerType.Home:
                    container = new Home(acm.containerId, acm.area, acm.dencity);
                    break;
                case Enums.ContainerType.Hospital:
                    container = new Hospital(acm.containerId, acm.area, acm.dencity);
                    break;
                case Enums.ContainerType.Mall:
                    container = new Mall(acm.containerId, acm.area, acm.dencity);
                    break;
                case Enums.ContainerType.Nursery:
                    container = new Nursery(acm.containerId, acm.area, acm.dencity);
                    break;
                case Enums.ContainerType.Office:
                    container = new Office(acm.containerId, acm.area, acm.dencity);
                    break;
                case Enums.ContainerType.School:
                    container = new School(acm.containerId, acm.area, acm.dencity);
                    break;
                case Enums.ContainerType.University:
                    container = new University(acm.containerId, acm.area, acm.dencity);
                    break;
            }

            if (container != null)
            {
                if (!Containers.Instance.ContainsKey(container.Id))
                {
                    Containers.Instance.Add(container.Id, container);
                }

                foreach (AddAgentMessage aam in acm.agentData)
                {
                    this.onAddAgentMessage(aam, container);
                }
            }
        }
Exemplo n.º 2
0
        private static void fillContainers() 
        {
            Home home = new Home(0, 50, 12);
            Containers.Instance.Add(0, home); //Containers.Instance — глобальная коллекция, содержащая контейнеры.

            Hospital hospital = new Hospital(1, 237, 19);
            Containers.Instance.Add(1, hospital);

            Mall mall = new Mall(2, 578, 90);
            Containers.Instance.Add(2, mall);

            Office office = new Office(3, 236, 20);
            Containers.Instance.Add(3, office);

            University university = new University(4, 300, 25);
            Containers.Instance.Add(4, university);

            School school = new School(5, 250, 30);
            Containers.Instance.Add(5, school);

            Nursery nursery = new Nursery(6, 60, 23);
            Containers.Instance.Add(6, nursery);

        }