예제 #1
0
        private void ApplicationOnDispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e)
        {
            e.Handled = true;

            ExceptionController = ExceptionController ?? new ExceptionController();
            ExceptionController.ShowException(e.Exception);
        }
예제 #2
0
        /// <summary>
        /// Tarkistaa parametrit ja jos kaikki on OK, palauttaa varaus-olion. Jos jokin virhe, kirjoittaa lokiin ja palauttaa null
        /// </summary>
        /// <param name="Id"></param>
        /// <param name="VaraajanNimi"></param>
        /// <param name="MateriaaliId"></param>
        /// <param name="Maara"></param>
        /// <returns>new Varaus || null, jos virhe</returns>
        public static Varaus Create(int Id, string VaraajanNimi, int MateriaaliId, int Maara)
        {
            Varaus v = new Varaus(-1, "", -1, -1);

            if (!checkId(Id))
            {
                ExceptionController.WriteException(v, "Varausta luodessa huono ID.");
                return(null);
            }
            if (!checkVaraajanNimi(VaraajanNimi))
            {
                ExceptionController.WriteException(v, "Varausta luodessa huono varaajan nimi.");
                return(null);
            }
            if (!checkMateriaaliId(MateriaaliId))
            {
                ExceptionController.WriteException(v, "Varausta luodessa huono materiaaliID.");
                return(null);
            }
            if (!checkMaara(Maara))
            {
                ExceptionController.WriteException(v, "Varausta luodessa huono määrä.");
                return(null);
            }
            return(new Varaus(Id, VaraajanNimi, MateriaaliId, Maara));
        }
예제 #3
0
        [HttpPost] // Muokataan tietuetta
        public ActionResult AddSijainti(FormCollection form)
        {
            string sijainti = form[String.Format("Sijainti")];

            if (!SQLFilter.checkInput(sijainti))
            {
                ExceptionController.WriteException(this, "Sijainti ei läpäissyt SQLFilteriä.");
                return(RedirectToAction("Index"));
            }
            string kaappi = form[String.Format("Kaappi")];

            if (!SQLFilter.checkInput(kaappi))
            {
                ExceptionController.WriteException(this, "Kaappi ei läpäissyt SQLFilteriä.");
                return(RedirectToAction("Index"));
            }
            cnn = dbMan.OpenConnection();
            DatabaseSijainti dmSij = new DatabaseSijainti(cnn);

            int    id         = 1;
            string hylly      = "nolla";
            string lisatiedot = "ei tietoja";

            dmSij.InsertInto(Sijainti.Create(id, sijainti, kaappi, hylly, lisatiedot));

            dbMan.CloseConnection(); //suljetaan yhteys
            return(RedirectToAction("Index"));
        }
 public AlbumsController(AlbumController albumController, GalleryObjectController galleryObjectController, UserController userController, ExceptionController exController, IAuthorizationService authorizationService)
 {
     _albumController         = albumController;
     _galleryObjectController = galleryObjectController;
     _userController          = userController;
     _exController            = exController;
     _authorizationService    = authorizationService;
 }
 public MediaItemsController(GalleryController galleryController, AlbumController albumController, GalleryObjectController galleryObjectController, FileStreamController streamController, HtmlController htmlController, UrlController urlController, UserController userController, ExceptionController exController, IAuthorizationService authorizationService)
 {
     _galleryController       = galleryController;
     _albumController         = albumController;
     _galleryObjectController = galleryObjectController;
     _streamController        = streamController;
     _htmlController          = htmlController;
     _urlController           = urlController;
     _userController          = userController;
     _exController            = exController;
     _authorizationService    = authorizationService;
 }
예제 #6
0
        public MainWindow()
        {
            ExceptionController            = new ExceptionController();
            Dispatcher.UnhandledException += ApplicationOnDispatcherUnhandledException;

            InitializeComponent();

            AppProgressBarController           = new AppProgressBarController(ProgressForm, AppProgressBar, AppProgressBarLabel);
            SkinController                     = new SkinController(CanvasPreview, TeFile, AppProgressBarController, RenderImage, SvCanvas);
            CanvasPreview.MouseMove           += CanvasPreviewOnMouseMove;
            CanvasPreview.MouseDown           += CanvasPreviewOnPreviewMouseDown;
            CanvasPreview.PreviewMouseUp      += CanvasPreviewOnPreviewMouseUp;
            TvSkinProject.SelectedItemChanged += TvSkinProjectOnSelectedItemChanged;
            PgElement.PropertyValueChanged    += PgElementOnPropertyValueChanged;
        }
예제 #7
0
        /// <summary>
        /// Tarkistaa parametrit ja luo uuden tilauksen. Viheellisellä syötteellä palauttaa null.
        /// </summary>
        /// <param name="Id"></param>
        /// <param name="TilaajanNimi"></param>
        /// <param name="Maara"></param>
        /// <param name="MateriaaliId"></param>
        /// <returns>Tilaus || null</returns>
        public static Tilaus Create(int Id, string TilaajanNimi, string TilaajanOsoite)
        {
            Tilaus t = new Tilaus(-1, "", "");

            if (!checkId(Id))
            {
                ExceptionController.WriteException(t, "Tilausta luodessa huono ID.");
                return(null);
            }
            if (!checkTilaajanNimi(TilaajanNimi))
            {
                ExceptionController.WriteException(t, "Tilausta luodessa huono tilaajan nimi.");
                return(null);
            }
            if (!checkTilaajanOsoite(TilaajanOsoite))
            {
                ExceptionController.WriteException(t, "Tilausta luodessa huono tilaajan osoite.");
                return(null);
            }
            return(new Tilaus(Id, TilaajanNimi, TilaajanOsoite));
        }
예제 #8
0
        /// <summary>
        /// Get Application by Name
        /// </summary>
        /// <param name="applicationName">Name of the application to get</param>
        /// <returns>Application matching the name, returns null if no match</returns>
        public App GetApplicationByName(string applicationName)
        {
            // GET  app/{name}?appSid={appSid}

            string apiUrl = "app/" + applicationName;
            App    app    = null;

            try
            {
                JObject jObject = JObject.Parse(ServiceController.Get(apiUrl, AppSid, AppKey));
                app = jObject.ToObject <App>();
            }
            catch (WebException webException)
            {
                if (ExceptionController.CheckNotFoundResponse(webException) == null)
                {
                    return(null);
                }

                throw;
            }
            return(app);
        }
예제 #9
0
        /// <summary>
        /// Get Application Usage By Period
        /// </summary>
        /// <param name="existingApplicationName">Name of the existing application</param>
        /// <param name="startDate">Period start date</param>
        /// <param name="endDate">Period end date</param>
        /// <returns>Application usage details, reutrns null if no match</returns>
        public ApplicationUsageResponse GetApplicationUsageByPeriod(string applicationName, DateTime startDate, DateTime endDate)
        {
            // GET  app/{name}/usage?start={start}&end={end}&appSid={appSid}

            string apiUrl = string.Format("app/{0}/usage?start={1}&end={2}", applicationName, startDate.ToString(), endDate.ToString());

            ApplicationUsageResponse applicationUsageResponse = null;

            try
            {
                JObject jObject = JObject.Parse(ServiceController.Get(apiUrl, AppSid, AppKey));
                applicationUsageResponse = jObject.ToObject <ApplicationUsageResponse>();
            }
            catch (WebException webException)
            {
                if (ExceptionController.CheckNotFoundResponse(webException) == null)
                {
                    return(null);
                }

                throw;
            }
            return(applicationUsageResponse);
        }
예제 #10
0
 public GalleryItemsController(GalleryObjectController galleryObjectController, ExceptionController exController)
 {
     _galleryObjectController = galleryObjectController;
     _exController            = exController;
 }
예제 #11
0
 public MetaController(MetadataController metadataController, UserController userController, ExceptionController exController)
 {
     _metadataController = metadataController;
     _userController     = userController;
     _exController       = exController;
 }
예제 #12
0
        [HttpPost] // Muokataan tietuetta
        public ActionResult AddNew(FormCollection form)
        {
            if ((string)Session["Valtuus"] == "2")
            {
                //Haetaan tyyppi id. eli ensimmäinen numero joka määrittää mikä materiaali kyseessä
                int.TryParse(form[String.Format("tyyppi")], out int id);
                //Käydään läpi kaikki tiedot ja kirjoitetaan exception jos ongelmia
                string Koko = form[String.Format("koko")];
                if (!SQLFilter.checkInput(Koko))
                {
                    ExceptionController.WriteException(this, "VaneriKoko ei läpäissyt SQLFilteriä.");
                    return(RedirectToAction("Index"));
                }
                if (!float.TryParse(form[String.Format("hinta")], out float Hinta))
                {
                    ExceptionController.WriteException(this, "VaneriHinta muunnossa floatiksi virhe.");
                    return(RedirectToAction("Index"));
                }
                string Kauppa = form[String.Format("kauppa")];
                if (!SQLFilter.checkInput(Kauppa))
                {
                    ExceptionController.WriteException(this, "VaneriKauppa ei läpäissyt SQLFilteriä.");
                    return(RedirectToAction("Index"));
                }
                string Lisatiedot = form[String.Format("komm")];
                if (!SQLFilter.checkInput(Lisatiedot))
                {
                    ExceptionController.WriteException(this, "VaneriLisatiedot ei läpäissyt SQLFilteriä.");
                    return(RedirectToAction("Index"));
                }
                if (!int.TryParse(form[String.Format("sijainti")], out int Sijainti))
                {
                    ExceptionController.WriteException(this, "VaneriSijainti muunnossa integeriksi virhe.");
                    return(RedirectToAction("Index"));
                }
                string kaappi = form[String.Format("kaappi")];
                if (!SQLFilter.checkInput(kaappi))
                {
                    ExceptionController.WriteException(this, "VaneriKaappi ei läpäissyt SQLFilteriä.");
                    return(RedirectToAction("Index"));
                }
                string Yksikko = Request.Form["yksikko"].ToString();
                if (!SQLFilter.checkInput(Yksikko))
                {
                    ExceptionController.WriteException(this, "VaneriYksikko ei läpäissyt SQLFilteriä.");
                    return(RedirectToAction("Index"));
                }

                if (!int.TryParse(form[String.Format("maara")], out int Maara))
                {
                    ExceptionController.WriteException(this, "VaneriMaara muunnossa integeriksi virhe.");
                    return(RedirectToAction("Index"));
                }

                //Kertoo switchille mikä kutsu on kyseessä
                string kutsu = "uusi";
                switchi(kutsu, id, Koko, Hinta, Maara, Yksikko, Sijainti, Kauppa, Lisatiedot); //Kutsutaan switchiä joka tekee loput hommasta
                dbMan.CloseConnection();                                                       //suljetaan yhteys
                return(RedirectToAction("Index"));                                             // palataan
            }
            else
            {
                return(RedirectToAction("Index"));
            }
        }
예제 #13
0
        [HttpPost]                                        // Muokataan tietuetta
        public ActionResult EditInfo(FormCollection form) //Tuodaan formin tiedot
        {
            //Haetaan id formista
            string sid = form[String.Format("Tid")];

            if (form["Tid"] != null)
            { //Mikäli ei null niin jatketaan
                if (!int.TryParse(form[String.Format("Tid")], out int id))
                {
                    ExceptionController.WriteException(this, "VaneriID muunnossa integeriksi virhe.");
                    return(RedirectToAction("Index"));
                }
                string Koko = form[String.Format("TKoko")];
                if (!SQLFilter.checkInput(Koko))
                {
                    ExceptionController.WriteException(this, "VaneriKoko ei läpäissyt SQLFilteriä.");
                    return(RedirectToAction("Index"));
                }
                if (!float.TryParse(form[String.Format("THinta")], out float Hinta))
                {
                    ExceptionController.WriteException(this, "VaneriHinta muunnossa floatiksi virhe.");
                    return(RedirectToAction("Index"));
                }
                string Kauppa = form[String.Format("TKauppa")];
                if (!SQLFilter.checkInput(Kauppa))
                {
                    ExceptionController.WriteException(this, "VaneriKauppa ei läpäissyt SQLFilteriä.");
                    return(RedirectToAction("Index"));
                }
                string Lisatiedot = form[String.Format("TLisatiedot")];
                if (!SQLFilter.checkInput(Lisatiedot))
                {
                    ExceptionController.WriteException(this, "VaneriKauppa ei läpäissyt SQLFilteriä.");
                    return(RedirectToAction("Index"));
                }
                if (!int.TryParse(form[String.Format("TSijainti")], out int sijainti))
                {
                    ExceptionController.WriteException(this, "VaneriSijainti muunnossa integeriksi virhe.");
                    return(RedirectToAction("Index"));
                }
                string valittu = Request.Form["TYksikko"].ToString();
                if (!SQLFilter.checkInput(valittu))
                {
                    ExceptionController.WriteException(this, "VaneriYksikko ei läpäissyt SQLFilteriä.");
                    return(RedirectToAction("Index"));
                }
                if (!int.TryParse(form[String.Format("TMaara")], out int Maara))
                {
                    ExceptionController.WriteException(this, "VaneriMaara muunnossa integeriksi virhe.");
                    return(RedirectToAction("Index"));
                }

                string kutsu = "muokkaus";                                                     //Muokkaus kutsu switchille
                switchi(kutsu, id, Koko, Hinta, Maara, valittu, sijainti, Kauppa, Lisatiedot); //Kutsutaan switchia ja viedään tiedot sinne.
                dbMan.CloseConnection();
            }
            ;

            //Palataan Indexiin
            return(RedirectToAction("Index"));
        }
        //private SignInManager<GalleryUser> _signInMgr;
        //private GalleryRoleManager _roleManager;

        //private readonly GalleryDb _ctx;
        //private IMemoryCache _cache;

        public EventsController(ExceptionController exController)
        {
            _exController = exController;
        }
예제 #15
0
        public void ExecuteAsync_RunsExceptionFilter_WhenActionThrowsException()
        {
            // Arrange
            Exception expectedException = new NotImplementedException();
            ApiController controller = new ExceptionController(expectedException);

            // Act & Assert
            TestExceptionFilter(controller, expectedException, configure: null);
        }
예제 #16
0
        public void ExecuteAsync_IfActionThrows_CallsExceptionServicesFromConfiguration()
        {
            List<string> log = new List<string>();
            Exception expectedException = new Exception();
            ExceptionController controller = new ExceptionController(expectedException);

            Mock<IExceptionLogger> exceptionLoggerMock = new Mock<IExceptionLogger>(MockBehavior.Strict);
            exceptionLoggerMock
                .Setup(h => h.LogAsync(It.IsAny<ExceptionLoggerContext>(), It.IsAny<CancellationToken>()))
                .Returns<ExceptionLoggerContext, CancellationToken>((c, i) =>
                {
                    log.Add("logger");
                    return Task.FromResult(0);
                });
            IExceptionLogger exceptionLogger = exceptionLoggerMock.Object;

            Mock<IExceptionHandler> exceptionHandlerMock = new Mock<IExceptionHandler>(MockBehavior.Strict);
            exceptionHandlerMock
                .Setup(h => h.HandleAsync(It.IsAny<ExceptionHandlerContext>(), It.IsAny<CancellationToken>()))
                .Returns<ExceptionHandlerContext, CancellationToken>((c, i) =>
                {
                    log.Add("handler");
                    return Task.FromResult(0);
                });
            IExceptionHandler exceptionHandler = exceptionHandlerMock.Object;

            HttpControllerContext controllerContext = ContextUtil.CreateControllerContext();

            HttpControllerDescriptor controllerDescriptor = new HttpControllerDescriptor(
                controllerContext.Configuration, "Get", typeof(ExceptionController));
            controllerContext.ControllerDescriptor = controllerDescriptor;
            controllerContext.Controller = controller;
            controllerContext.Configuration.Services.Add(typeof(IExceptionLogger), exceptionLogger);
            controllerContext.Configuration.Services.Replace(typeof(IExceptionHandler), exceptionHandler);
            controllerContext.Configuration.Filters.Add(CreateStubExceptionFilter());

            // Act
            Task<HttpResponseMessage> task = controller.ExecuteAsync(controllerContext, CancellationToken.None);

            // Assert
            Assert.NotNull(task);
            Assert.Equal(TaskStatus.Faulted, task.Status);
            Assert.NotNull(task.Exception);
            Assert.Same(expectedException, task.Exception.GetBaseException());
            Assert.Equal(new string[] { "logger", "handler" }, log.ToArray());
        }
 public GalleryItemMetaController(MetadataController metadataController, ExceptionController exController)
 {
     _metadataController = metadataController;
     _exController       = exController;
 }