Example #1
0
        public int GetMovieStopTimeAndResumeData(int movieId, int userId, out string fileName, out byte[] resumeData)
        {
            // Only compare the file as only the the path is not stored.
            resumeData = null;
            StopTimeResumeData stopTimeResumeData = new StopTimeResumeData();
            stopTimeResumeData.stopTime = -1;
            stopTimeResumeData.fileName = string.Empty;

            try
            {
                QueryReader<StopTimeResumeData> resume = new QueryReader<StopTimeResumeData>(string.Format("SELECT * FROM tblResume where intId={0} AND intUserId={1}", movieId, userId));
                resume.OnRow += new QueryReader<StopTimeResumeData>.Row(ResumeData_OnRow);
                resume.Execute(_connection, stopTimeResumeData);

                if (stopTimeResumeData.stopTime != 0)
                {
                    resumeData = new byte[stopTimeResumeData.resumeString.Length / 2];
                    FromHexString(stopTimeResumeData.resumeString).CopyTo(resumeData, 0);
                }
            }
            catch (Exception ex)
            {
                Log.Error("MyMovies::GetMovieStopTimeAndResumeData - exception err:{0} stack:{1}", ex.Message, ex.StackTrace);
            }
            fileName = stopTimeResumeData.fileName;

            return stopTimeResumeData.stopTime;
        }
Example #2
0
        /// <summary>
        /// This only expects a single row. Anymore is an error.
        /// </summary>
        /// <param name="row"></param>
        /// <param name="itemlist"></param>
        private void ResumeData_OnRow(System.Data.SqlClient.SqlDataReader row, StopTimeResumeData rowData)
        {
            if (rowData.stopTime != -1)
            {
                throw new ApplicationException("Too many rows returned");
            }

            rowData.stopTime = Convert.ToInt32(row["intStopTime"]);
            rowData.resumeString = Convert.ToString(row["nvcResumeData"]);
            rowData.fileName = Convert.ToString(row["nvcFileName"]);
        }