Exemplo n.º 1
0
        // TODO - genericize the input model so that this can be reused in a Lambda Layer
        public List <BlogPostInfo> GetBlogPostLookup()
        {
            var blogPostLookup = new List <BlogPostInfo>();

            try
            {
                using (var command = new NpgsqlCommand($"SELECT * from public.blogpostInfo", Connection))
                {
                    LambdaLogger.Log("before connection open");
                    Connection.Open();
                    LambdaLogger.Log("after connection open");
                    var reader = command.ExecuteReader();

                    while (reader.Read())
                    {
                        var id     = int.Parse(reader["blogpost_id"].ToString());
                        var slug   = reader["slug"].ToString();
                        var title  = reader["title"].ToString();
                        var teaser = reader["teaser"].ToString();
                        blogPostLookup.Add(new BlogPostInfo(id, slug, title, teaser));
                    }
                }
            }
            catch (Exception ex)
            {
                LambdaLogger.Log(_exceptionLogFormatter.FormatExceptionLogMessage(ex));
            }

            Connection.Close();
            return(blogPostLookup);
        }
        /// <summary>
        /// Entry point to retrieve BlogPost information from database
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public List <BlogPostInfo> FunctionHandler(ILambdaContext context)
        {
            LambdaLogger.Log("getBlogPostLookup Lambda Started");

            try
            {
                LambdaLogger.Log("getBlogPostLookup Lambda finishing");
                return(DataContext.GetBlogPostLookup());
            }
            catch (Exception ex)
            {
                LambdaLogger.Log(_exceptionLogFormatter.FormatExceptionLogMessage(ex));
                throw;
            }
        }
        /// <summary>
        /// Entry point to retrieve BlogPost information from database
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public List <BlogPostInfo> FunctionHandler(Tag tag)
        {
            LambdaLogger.Log("GetRelatedPostsByTag Lambda Started; tag is: " + tag.Id + "; " + tag.Name + "\n");

            try
            {
                LambdaLogger.Log("GetRelatedPostsByTag Lambda finishing \n");
                return(DataContext.GetBlogPostsByTag(tag));
            }
            catch (Exception ex)
            {
                LambdaLogger.Log(_exceptionLogFormatter.FormatExceptionLogMessage(ex));
                throw;
            }
        }
Exemplo n.º 4
0
        /// <summary>
        /// A simple function that takes a string and does a ToUpper
        /// </summary>
        /// <param name="blogPost"></param>
        /// <returns></returns>
        public BlogPost FunctionHandler(BlogPost blogPost)
        {
            LambdaLogger.Log("GetBlogPost Lambda Started");

            try
            {
                LambdaLogger.Log("GetBlogPost Lambda finishing");
                DataContext.GetBlogPost(blogPost);

                return(blogPost);
            }
            catch (Exception ex)
            {
                LambdaLogger.Log(_exceptionLogFormatter.FormatExceptionLogMessage(ex));
                throw;
            }
        }