private static void Main(string[] args)
        {
            WindsorContainerWrapper installerWrapper =
                new WindsorContainerWrapper(new WindsorContainer(), new Registration(), new BackendServices());

            installerWrapper.RegistrationLogger = new ConsoleLogger();
            installerWrapper.Install();
            IWindsorContainer container = installerWrapper.WindsorContainer;

            IServiceProvider <string, BusinessResponse> serviceProvider =
                container.Resolve <IServiceProvider <string, BusinessResponse> >();
            string           serviceData = @"{ ""datafield"" : ""Some data""}";
            BusinessResponse response    = serviceProvider.PerformService(serviceData);

            Console.WriteLine($"{response.Success}");

            foreach (string responseMessage in response.Messages)
            {
                Console.WriteLine($"{responseMessage}");
            }

            Console.Write("Implementation: ");
            Implementation = Console.ReadLine();

            serviceProvider = container.Resolve <IServiceProvider <string, BusinessResponse> >();
            response        = serviceProvider.PerformService(serviceData);
            Console.WriteLine($"{response.Success}");

            foreach (string responseMessage in response.Messages)
            {
                Console.WriteLine($"{responseMessage}");
            }

            Console.ReadKey();
        }
Example #2
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public IServiceProvider ConfigureServices(IServiceCollection services)
        {
            services.Configure <CookiePolicyOptions>(options =>
            {
                // This lambda determines whether user consent for non-essential cookies is needed for a given request.
                options.CheckConsentNeeded    = context => true;
                options.MinimumSameSitePolicy = SameSiteMode.None;
            });


            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1).AddControllersAsServices();

            WindsorContainerWrapper wrapper = new WindsorContainerWrapper(new WindsorContainer(), new WebAppRegistration());

            wrapper.Install();

            return(WindsorRegistrationHelper.CreateServiceProvider(wrapper.WindsorContainer, services));
        }
        private static void Main(string[] args)
        {
            WindsorContainerWrapper containerWrapper = new WindsorContainerWrapper(new WindsorContainer(),
                                                                                   new MainAssemblyProvider(), new PluginRegistration());

            containerWrapper.RegistrationLogger = new ConsoleLogger();
            containerWrapper.Install();
            IWindsorContainer container = containerWrapper.WindsorContainer;

            do
            {
                Console.Write("Customer Key: ");
                Console.ReadLine();
                //ContextUtilities.ContextValidationString = Console.ReadLine();
                ICustomerInformation customerInformation = container.Resolve <ICustomerInformation>();
                IConsoleWriter       consoleWriter       = container.Resolve <IConsoleWriter>();

                consoleWriter.WriteCustomerInformation(customerInformation);
            } while (Console.ReadLine() != "exit".ToLower());
        }
Example #4
0
        /// <summary>
        /// Processes the queue message.
        /// </summary>
        /// <param name="asinList">The asin list.</param>
        public static void ProcessQueueMessage([QueueTrigger("amazonqueue")] IList <string> asinList)
        {
            Args.IsNotNull(() => asinList);

            var itemsQuery = EcsLookup.GetItemsFromAsinList(asinList);
            var items      = itemsQuery.FirstOrDefault();

            using (var windsorContainer = new WindsorContainer())
            {
                var containerWrapper = new WindsorContainerWrapper(windsorContainer);
                containerWrapper.RegisterAllInstances();

                if (items != null)
                {
                    var amazonWishListCollection = containerWrapper.Resolve <IBusinessObjectCollection <AmazonWishList> >();
                    var wishListEditCollection   = amazonWishListCollection.Query(awl => asinList.Contains(awl.Identifier));

                    foreach (var item in items.Item)
                    {
                        var wishListEdit = wishListEditCollection
                                           .Where(we => we.Identifier == item.ASIN)
                                           .FirstOrDefault();

                        UploadImageToAzure(item, wishListEdit);

                        wishListEdit.Identifier  = item.ASIN;
                        wishListEdit.Name        = item.ItemAttributes.Title;
                        wishListEdit.ImageUrl    = item.MediumImage.URL.ToUri();
                        wishListEdit.Category    = item.ItemAttributes.Binding;
                        wishListEdit.SiteUrl     = item.DetailPageURL.ToUri();
                        wishListEdit.Description = item.ItemAttributes.Feature.ExplodeList();
                        wishListEdit.Price       = item.GetPrice();
                        wishListEdit.SiteName    = "Amazon";
                        wishListEdit.SiteUrl     = new Uri("http://www.amazon.com/");
                    }

                    wishListEditCollection.Save();
                }
            }
        }