Example #1
0
        static void Main(string[] args)
        {
            IGetMass[] arr =
            {
                CargoFactory.GetTypeOfCargoTransportation(TypeOfTransportation.Container,            1, 2, 3, 400,   5),
                CargoFactory.GetTypeOfCargoTransportation(TypeOfTransportation.Container,            3, 5, 7, 600,  50),
                CargoFactory.GetTypeOfCargoTransportation(TypeOfTransportation.StandartContainer, 100),
                CargoFactory.GetTypeOfCargoTransportation(TypeOfTransportation.Tank,                 1, 2, 3, 400,   5),
                CargoFactory.GetTypeOfCargoTransportation(TypeOfTransportation.Tank,                 3, 4, 2, 700, 500),
                CargoFactory.GetTypeOfCargoTransportation(TypeOfTransportation.StandartTank,      330),
                CargoFactory.GetTypeOfCargoTransportation(TypeOfTransportation.Cargo,             150),
                CargoFactory.GetTypeOfCargoTransportation(TypeOfTransportation.Cargo,             450),
                CargoFactory.GetTypeOfCargoTransportation(TypeOfTransportation.StandartCargo),
                CargoFactory.GetTypeOfCargoTransportation(TypeOfTransportation.Person,             60),
                CargoFactory.GetTypeOfCargoTransportation(TypeOfTransportation.Person,             80),
                CargoFactory.GetTypeOfCargoTransportation(TypeOfTransportation.StandartPerson)
            };

            Ferryboat ferryboat = new Ferryboat(arr);

            foreach (var item in ferryboat.Arr)
            {
                Console.WriteLine(item);
            }

            Console.WriteLine();
            Array.Sort(arr, new CargoComparer());
            foreach (var item in ferryboat.Arr)
            {
                Console.WriteLine(item);
            }

            Console.Read();
        }
        private void ExecuteRequest()
        {
            var cargo = CargoFactory.Create(CurrentAction, CurrentPlace,
                                            CurrentRepairing, CurrentProduction,
                                            CurrentOrderType, SuppliesValue.ToString());

            try
            {
                Json = _communicationManager.Send(cargo);
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message);
                return;
            }
            GameState = JsonConverter.Parse(Json);
            LogManager.AddTurnReport(cargo, GameState);
            if (IsGameTerminated())
            {
                LogManager.GenerateLog();
            }
            if (IsGameTerminated() || HasGameBeenRestarted(cargo))
            {
                LogManager = new LogManager();
                LogManager.AddTurnReport(GameState);
            }
        }
Example #3
0
        public void TestCargoFactory()
        {
            CargoFactory cf = new CargoFactory();

            CargoDecorator cd = cf.Create();

            bool res = (cd is StandartCargoDecorator || cd is EncryptedCargoDecorator) && (cd.Cargo is StandartCargo ||
                                                                                           cd.Cargo is PerishableCargo || cd.Cargo is ToxicCargo);

            Assert.IsTrue(res);
        }
        public void StoreAndLoad()
        {
            Cargo cargo = CargoFactory.CreateNew("Glyfada", "Perachora");

            m_repository.Store(cargo);

            Cargo saved = m_repository.Find(cargo.TrackingId);

            Debug.Assert(cargo.RouteSpecification.Equals(saved.RouteSpecification));
            Debug.Assert(cargo.Delivery.Equals(saved.Delivery));
            Debug.Assert(cargo.Equals(saved));
        }
Example #5
0
        private Cargo[] GenerateCargoes(int count)
        {
            Cargo[]      cs = new Cargo[count];
            CargoFactory cf = new CargoFactory();

            for (int i = 0; i < count; i++)
            {
                cs[i] = cf.Create();
            }

            return(cs);
        }
Example #6
0
 public CarsCatalog(EngineFactory engineFactory,
                    CargoFactory cargoFactory,
                    TireFactory tireFactory,
                    CarFactory carFactory)
 {
     this.Cars          = new List <Car>();
     this.engineFactory = engineFactory;
     this.cargoFactory  = cargoFactory;
     this.tireFactory   = tireFactory;
     this.carFactory    = carFactory;
     this.dataWrite     = new ConsoleWriter();
 }
Example #7
0
        private void ExecuteWithSyncIO()
        {
            Stopwatch sw = Stopwatch.StartNew();

            for (Int32 n = 0; n < c_iterations; n++)
            {
                Cargo cargo = CargoFactory.CreateNew("Glyfada" + n, "Perachora" + n);
                App.Database.Save(typeof(Cargo), cargo);
            }

            SetStatus("Sync/IO completed.", StatusState.Ready);
        }
        public void VerificarColaborador()
        {
            /**
             * Passo 1: instanciação das variáveis necessárias.
             */

            Colaborador colaborador = ColaboradorFactory.CriarColaborador(SessionTest, "000", DateTime.Now, "*****@*****.**", "Solicitacao", "Orcamento", "Historico", "nome.completo");

            colaborador.Save();

            Cargo cargo = CargoFactory.Criar(SessionTest, "Programador", true);

            cargo.Save();

            ParteInteressada parteinteressada = ParteInteressadaFactory.Criar(SessionTest, CsSimNao.Sim, colaborador, cargo, true);

            parteinteressada.Save();

            /*
             * Cenário 1: Verificação se colaborador existente é válido  se selecionado para ser colaborador
             */
            Assert.AreEqual(CsSimNao.Sim, parteinteressada.IsColaborador, "É um colaborador");
            Assert.AreEqual("000", parteinteressada.Colaborador.TxMatricula, "Se é colaborador, tem a matrícula 000 oriundo da tabela colaborador");
            Assert.AreEqual("*****@*****.**", parteinteressada.Colaborador.Usuario.Email, "Se é colaborador, tem o email [email protected] oriundo da tabela colaborador");
            Assert.AreEqual("nome.completo", parteinteressada.Colaborador.Usuario.UserName, "Se é colaborador, ter o username 'nome.completo' oriundo da tabela colaborador");

            /*
             * Cenário 2: Verificação de não ser um colaborador.
             */
            parteinteressada.IsColaborador = CsSimNao.Não;

            ParteInteressadaFactory.SetarCampos(parteinteressada, parteinteressada.IsColaborador, null, cargo);

            parteinteressada.Save();
            Assert.AreEqual(CsSimNao.Não, parteinteressada.IsColaborador, "Não é um colaborador");
            Assert.AreEqual("*****@*****.**", parteinteressada.TxEmail, "Verificação de salvar na tabela parte interessada o email");
            Assert.AreEqual("Programador", parteinteressada.Cargo.TxDescricao, "Verificação de salvar na tabela parte interessada o cargo");
            Assert.AreEqual("000000000000", parteinteressada.TxTelefoneFixo, "Verificação de salvar na tabela parte interessada o telefone fixo");
            Assert.AreEqual("000000000000", parteinteressada.TxCelular, "Verificação de salvar na tabela parte interessada o celular");

            parteinteressada.IsColaborador = CsSimNao.Sim;
            parteinteressada.Save();
            Assert.AreEqual(CsSimNao.Sim, parteinteressada.IsColaborador, "É um colaborador");
            Assert.AreEqual("000", parteinteressada.Colaborador.TxMatricula, "Se é colaborador, tem a matrícula 000 oriundo da tabela colaborador");
            Assert.AreEqual("*****@*****.**", parteinteressada.Colaborador.Usuario.Email, "Se é colaborador, tem o email [email protected] oriundo da tabela colaborador");
            Assert.AreEqual("nome.completo", parteinteressada.Colaborador.Usuario.UserName, "Se é colaborador, ter o username 'nome.completo' oriundo da tabela colaborador");

            Assert.AreEqual(1, new XPCollection <ParteInteressada>(SessionTest).Count);
        }
Example #9
0
        public void FeriasPlanejamentoTest_001_TestarDefinirControleFeriasComoRealizado()
        {
            #region Pré-condições

            // Configurações
            ConfiguracaoFactory.CriarConfiguracao(SessionTest, 10, 30, 12);

            // Cargo: Programador Jr 2
            Cargo cargoJr2 = CargoFactory.Criar(SessionTest, "Programador Jr 2", true);

            // Modalidade: 10 dias
            ModalidadeFerias modalidade10 = ModalidadeFeriasFactory.CriarModalidadeFerias(SessionTest, 10, false);

            // Usuário: João Souza
            Colaborador colaboradorJoaoSouza = ColaboradorFactory.CriarColaborador(SessionTest, "123",
                                                                                   new DateTime(2011, 1, 1), "*****@*****.**", "João", string.Empty, "Souza", "joao.souza", cargoJr2);

            // Planejamento de Férias
            FeriasPlanejamento planejamento = FeriasPlanejamentoFactory.CriarPlanejamentoFerias(SessionTest,
                                                                                                colaboradorJoaoSouza.PeriodosAquisitivos[0], modalidade10, new DateTime(2012, 1, 1));

            // Tipo de Afastamento
            TipoAfastamento tipoAfastamento = TipoAfastamentoFactory.CriarTipoAfastamento(SessionTest, "Férias", true, true);

            // Data atual
            DateUtil.CurrentDateTime = new DateTime(2012, 2, 1);

            #endregion

            #region Passos

            // Definindo Planejamento como Realizado
            planejamento.Reload();
            planejamento.Realizadas = true;
            planejamento.Save();

            // Verificação de criação de Afastamento
            Assert.AreEqual(1, colaboradorJoaoSouza.Afastamentos.Count,
                            "Deveria ter sido criado um Afastamento.");

            // Verificação do Tipo do Afastamento
            Assert.AreEqual(tipoAfastamento, colaboradorJoaoSouza.Afastamentos[0].TipoAfastamento,
                            "O Afastamento deveria ser o mesmo que existe para Férias Realizadas.");

            #endregion
        }
Example #10
0
        private void ExecuteWithEventBased()
        {
            IList <Cargo> cargos = new List <Cargo>();

            for (Int32 n = 0; n < c_iterations; n++)
            {
                Cargo cargo = CargoFactory.CreateNew("Glyfada" + n, "Perachora" + n);
                cargos.Add(cargo);
            }

            var bw = App.Database.SaveAsync <Cargo>(cargos);

            bw.RunWorkerCompleted += (sender, e) => {
                SetStatus("Event-based completed.", StatusState.Ready);
            };

            bw.RunWorkerAsync();
        }
Example #11
0
        public TrackingId BookNewCargo(UnLocode originUnLocode,
                                       UnLocode destinationUnLocode,
                                       DateTime arrivalDeadline)
        {
            //TODO: Revise transaciton and UoW logic
            using (var transactionScope = new TransactionScope())
            {
                TrackingId trackingId  = cargoRepository.NextTrackingId();
                Location   origin      = locationRepository.Find(originUnLocode);
                Location   destination = locationRepository.Find(destinationUnLocode);

                Cargo cargo = CargoFactory.NewCargo(trackingId, origin, destination, arrivalDeadline);

                cargoRepository.Store(cargo);
                logger.Info("Booked new cargo with tracking id " + cargo.TrackingId);

                transactionScope.Complete();
                return(cargo.TrackingId);
            }
        }
Example #12
0
        private void ExecuteWithIAsyncResult()
        {
            SetStatus("Working..", StatusState.Busy);

            for (Int32 n = 0; n < c_iterations; n++)
            {
                Cargo cargo = CargoFactory.CreateNew("Glyfada" + n, "Perachora" + n);

                App.Database.BeginSave <Cargo>(cargo, (ar) => {
                    App.Database.EndSave(ar);
                    if (Interlocked.Increment(ref m_numDone) == c_iterations)
                    {
                        Execute.OnUIThread(() =>
                        {
                            SetStatus("IAsyncResult APM completed.", StatusState.Ready);
                        });
                    }
                }, null);
            }
        }
Example #13
0
        private CargoAbstractFactory PickFactory(Type type1)
        {
            CargoAbstractFactory res = null;

            if (type1 == typeof(ToxicCargo))
            {
                res = new ToxicCargoFactory();
            }
            else if (type1 == typeof(SpoilableCargo))
            {
                res = new SpoilableCargoFactory();
            }
            else if (type1 == typeof(ProtectedCargo))
            {
                res = new ProtectedCargoFactory();
            }
            else if (type1 == typeof(Cargo))
            {
                res = new CargoFactory();
            }

            return(res);
        }
Example #14
0
        public static void Run()
        {
            EngineFactory engineFactory = new EngineFactory();
            CargoFactory  cargoFactory  = new CargoFactory();
            TireFactory   tireFactory   = new TireFactory();
            CarFactory    carFactory    = new CarFactory();
            ConsoleReader consoleReader = new ConsoleReader();

            CarsCatalog cars = new CarsCatalog(engineFactory, cargoFactory, tireFactory, carFactory);

            int lines = int.Parse(consoleReader.Read());

            for (int i = 0; i < lines; i++)
            {
                string[] parameters = consoleReader.Read()
                                      .Split(" ", StringSplitOptions.RemoveEmptyEntries);

                cars.Add(parameters);
            }

            string command = consoleReader.Read();

            cars.GetCarsInfo(command);
        }
Example #15
0
        private IEnumerator <Int32> ExecuteWithAsyncEnumerator(AsyncEnumerator ae)
        {
            for (Int32 n = 0; n < c_iterations; n++)
            {
                Cargo cargo = CargoFactory.CreateNew("Glyfada" + n, "Perachora" + n);

                App.Database.BeginSave <Cargo>(cargo, ae.End(), null);
            }

            // NOTE: AsyncEnumerator captures the calling thread's SynchronizationContext.
            // Set the Wintellect.Threading.AsyncProgModel.SynchronizationContext type to
            // null so that the callback continues on a ThreadPool thread.
            ae.SyncContext = null;

            yield return(c_iterations);

            for (Int32 n = 0; n < c_iterations; n++)
            {
                App.Database.EndSave(ae.DequeueAsyncResult());
            }

            // AsyncEnumerator captures the synchronization context.
            SetStatus("AsyncEnumerator completed.", StatusState.Ready);
        }
Example #16
0
 private static Cargo FactoryMethod()
 {
     return(CargoFactory.CreateNew("Glyfada", "Perachora"));
 }
Example #17
0
        public static void CreateCargo(string cargo)
        {
            Cargo c = CargoFactory.Criar(SessionTest, cargo, true);

            CargoDic.Add(cargo, c);
        }
Example #18
0
        static void Main(string[] args)
        {
            //FactoryMethod
            var shipFactory        = new ShipFactory();
            var fabricMethodClient = new FabricMethodClient(shipFactory);

            fabricMethodClient.Deliver();

            var cargoFactory = new CargoFactory();

            fabricMethodClient.SetTransportFactory(cargoFactory);
            fabricMethodClient.Deliver();

            //AbstractFactory
            var humanFactory          = new HumanUnitFactory();
            var abstractFactoryClient = new AbstractFactoryClient(humanFactory);

            abstractFactoryClient.DoSquad();

            var orkFactory = new OrkUnitFactory();

            abstractFactoryClient.SetUnitFactory(orkFactory);
            abstractFactoryClient.DoSquad();

            //Builder
            var opossumBuilder = new OpossumBuilder();
            var director       = new Director(opossumBuilder);
            var sectionalUnit  = director.GetUnit();

            sectionalUnit.DoStuff();

            var baldBuilder = new BaldBuilder();

            director.SetBuilder(baldBuilder);
            sectionalUnit = director.GetUnit();
            sectionalUnit.DoStuff();

            //Prototype
            var prototype = new PrototypeSample(2);

            prototype.SetProperty(1.0f);
            prototype.DoStuff();
            var clone = (PrototypeSample)prototype.Clone();

            clone.DoStuff();

            //Singleton
            Singleton.Instance.SingletonScream();

            //Adapter
            var adapterClient = new AdapterClient();

            adapterClient.DoStuff();

            //Bridge
            var bridgeClient = new BridgeClient();

            bridgeClient.DoStuff();

            //Composite
            var compositeClient = new CompositeClient();

            compositeClient.DoStuff();

            //Decorator
            var decoratorClient = new DecoratorClient();

            decoratorClient.DoStuff();

            //Facade
            var facadeClient = new Facade();

            facadeClient.DoStuff();

            //Flyweight
            var flyweightClient = new FlyweightClient();

            flyweightClient.DoStuff();

            //Proxy
            var proxyClient = new ProxyClient();

            proxyClient.DoStuff();

            //CoR
            var corClient = new CoRClient();

            corClient.DoStuff();

            //Command
            var commandClient = new CommandClient();

            commandClient.DoStuff();

            //Iterator
            var iteratorClient = new IteratorClient();

            iteratorClient.DoStuff();

            //Mediator
            var mediatorClient = new MediatorClient();

            mediatorClient.DoStuff();

            //Memento
            var mementoClient = new MementoClient();

            mementoClient.DoStuff();

            //Observer
            var observerClient = new ObserverClient();

            observerClient.DoStuff();

            //Strategy
            var strategyClient = new StrategyClient();

            strategyClient.DoStuff();

            //TemplateMethod
            var templateMethodClient = new TemplateMethodClient();

            templateMethodClient.DoStuff();

            //Visitor
            var visitorClient = new VisitorClient();

            visitorClient.DoStuff();
        }