public HomeController(ITemplateRepository templateRepo, IUserRepository userRepo, IMemeRepository memeRepo, IMemeCoordinateRepository memeCoordsRepo)
 {
     _templateRepo   = templateRepo;
     _userRepo       = userRepo;
     _memeRepo       = memeRepo;
     _memeCoordsRepo = memeCoordsRepo;
 }
Example #2
0
 public MemeService(IMemeRepository memeRepository,
                    IMapper mapper, IImageHandler imageHandler)
 {
     _memeRepository = memeRepository;
     _mapper         = mapper;
     _imageHandler   = imageHandler;
 }
Example #3
0
 public InitialMemesPopulator(
     IInitialMemesProvider provider,
     IMemeRepository imageTemplateRepository,
     IMigrationsChecker checker)
 {
     _initialMemesProvider = provider;
     _memeRepository       = imageTemplateRepository;
     _checker = checker;
 }
Example #4
0
 public MemeService(
     IMemeRepository _memeRepository,
     IValidator <Meme> validator,
     UserManager <PageUser> userManager,
     ICategoryService categoryService,
     ICommentService commentService,
     IVoteService voteService,
     IFavouriteService favouriteService) : base(_memeRepository, validator)
 {
     _userManager      = userManager;
     _categoryService  = categoryService;
     _commentService   = commentService;
     _voteService      = voteService;
     _favouriteService = favouriteService;
 }
Example #5
0
        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env,
                              IApplicationLifetime applicationLifetime, IMemeRepository memeRepository)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            FleckServer.Start(socket =>
            {
                var cancToken  = new CancellationTokenSource();
                var Task       = new FleckTask(socket, cancToken.Token, memeRepository);
                socket.OnOpen  = () => Task.Start();
                socket.OnClose = () => cancToken.Cancel();
            });

            applicationLifetime.ApplicationStopping.Register(() =>
            {
                FleckServer.Dispose();
                List <Task> workingMemes = new List <Task>(
                    from meme in memeRepository.Memes
                    where meme.MemeWork.Status == WorkStatus.Working
                    select meme.MemeWork.Worker);
                Task.WhenAll(workingMemes).Wait();
            });

            app.UseRouting();

            app.UseSpaStaticFiles();

            app.UseCors("CorsPolicy");

            //app.UseHttpsRedirection();

            app.UseEndpoints(endpoints => endpoints.MapControllers());

            app.UseSpa(spa =>
            {
                spa.Options.SourcePath = env.IsDevelopment() ? "catvibing/" : "dist";
                if (env.IsDevelopment())
                {
                    spa.UseVueCli(npmScript: "serve");
                }
            });
        }
Example #6
0
        private static void DoWork(IWebSocketConnection socket, IMemeRepository memeRepo)
        {
            var  id       = socket.ConnectionInfo.Path.Substring(1);
            Meme resource = null;

            try { resource = memeRepo.Get(new Guid(id)); }
            catch (Exception e) {}
            if (resource == null)
            {
                socket.Send("NOTFOUND");
                socket.Close();
                return;
            }
            bool       completed = false;
            int        num       = -1;
            WorkStatus status    = resource.MemeWork.Status;

            while (!completed)
            {
                if (resource.MemeWork.Percentage == num)
                {
                    continue;
                }
                if (resource.MemeWork.Status == WorkStatus.Done)
                {
                    completed = true;
                }
                num = resource.MemeWork.Percentage;
                String response = $"{num:D2}\n";
                socket.Send(response);
                if (resource.MemeWork.Percentage == 100)
                {
                    while (Utils.IsFileLocked(new FileInfo(resource.FilePath)))
                    {
                        Thread.Sleep(200);
                    }
                    socket.Send("DONE\n");
                }
            }
            socket.Close();
            memeRepo.Next();
        }
Example #7
0
 public MemeService(IMemeRepository memeRepository)
 {
     this._memeRepository = memeRepository;
 }
Example #8
0
 public MemeController(IMemeRepository memeRepository)
 {
     _memeRepo = memeRepository;
 }
 public MemesController(IMemeRepository repo)
 {
     this.repo = repo;
 }
Example #10
0
 public FleckTask(IWebSocketConnection socket, CancellationToken ct, IMemeRepository memeRepository)
     : base(() => DoWork(socket, memeRepository), ct)
 {
 }
 public MemeImageController(IMemeRepository memeRepository)
 {
     _memeRepository = memeRepository;
 }
Example #12
0
 public MemesControllerTests()
 {
     repo      = Substitute.For <IMemeRepository>();
     underTest = new MemesController(repo);
 }
 public MemeController(IMemeRepository memeRepo, IUserRepository userRepo)
 {
     _memeRepo = memeRepo;
     _userRepo = userRepo;
 }
Example #14
0
 public MemeController(IMemeRepository memesRepo)
 {
     this.memesRepo = memesRepo;
 }
 public MemeGeneratorTests()
 {
     testRepo  = Substitute.For <IMemeRepository>();
     underTest = new MemeController(testRepo);
 }
Example #16
0
 public MemeController(IMemeRepository memeRepository)
 {
     _memeRepository = memeRepository;
 }