예제 #1
0
        public Poster PostInBestTime(string i_TextOrFilePath, Poster.ePostOptions i_PostOption)
        {
            Poster poster;

            createPosterByPostOption(i_TextOrFilePath, i_PostOption, out poster);
            poster.PostInBestTime();

            return(poster);
        }
예제 #2
0
        private void createPosterByPostOption(string i_TextOrFilePath, Poster.ePostOptions i_PostOption, out Poster o_Poster)
        {
            switch (i_PostOption)
            {
            case Poster.ePostOptions.Photo:
                o_Poster = new PhotoPoster(LoggedInUser, i_TextOrFilePath);
                break;

            case Poster.ePostOptions.Status:
                o_Poster = new StatusPoster(LoggedInUser, i_TextOrFilePath);
                break;

            default:
                o_Poster = null;
                break;
            }
        }
예제 #3
0
        public Poster Post(string i_TextOrFilePath, DateTime i_TimeToPost, Poster.ePostOptions i_PostOption)
        {
            Poster poster;

            createPosterByPostOption(i_TextOrFilePath, i_PostOption, out poster);
            if (poster != null)
            {
                if (i_TimeToPost < DateTime.Now)
                {
                    PostedItem postedItem = poster.Post();
                    if (postedItem is StatusProxy)
                    {
                        PostedStatuses.AddLast(postedItem as StatusProxy);
                    }
                }
                else
                {
                    poster.PostInSelectedTime(i_TimeToPost);
                }
            }

            return(poster);
        }