public static byte[] GetExamTimeForStudent(StudentInformation student) { student.ExamStartTime = GetStartTime(); student.ExamEndTime = GetEndTime(); return(GetByteArrayFromObject(student)); }
public static byte[] GetQuestionForStudent(StudentInformation student) { var file = FullQuestionFilePath; var fileData = File.ReadAllBytes(file); //var examStartedMessage = //string.Format("Exam has started! Please save the question file and click finish when done!"); var examStartedMsg = string.Format("Your exam is started. please save the question file!"); var studentInfo = new StudentInformation { StudentId = student.StudentId, ServerIPAddress = student.ServerIPAddress, //ExamTime = student.ExamTime, ExamStartTime = student.ExamStartTime, ExamEndTime = student.ExamEndTime, IsAlreadyRegistered = student.IsAlreadyRegistered, IsExamStarted = student.IsExamStarted, ExamStartedMessage = examStartedMsg, IsStudentIdValid = student.IsStudentIdValid, StudentAlreadyRegisteredMessage = student.StudentAlreadyRegisteredMessage, QuestionFileData = fileData }; var serverData = GetByteArrayFromObject(studentInfo); return(serverData); }
public static void CreateStudentDirectory(StudentInformation student) { var path = Path.Combine(StudentAnswerFolder, student.StudentId.ToString()); if (!Directory.Exists(path)) { Directory.CreateDirectory(path); GrantAccess(path); } }
public static byte[] GetConnectionMessageForStudent() { var msg = string.Format( "Connection successful!"); var connectionMessage = new StudentInformation { ConnectionSuccessfulMessage = msg, ServerOperationType = ServerOperationType.ConnectionSuccessful }; return(GetByteArrayFromObject(connectionMessage)); }
public static byte[] ConvertMessageToByteArray(StudentInformation obj) { if (obj == null) { return(null); } var bf = new BinaryFormatter(); var ms = new MemoryStream(); bf.Serialize(ms, obj); return(ms.ToArray()); }
public static byte[] GetInValidStudentIdMessage(StudentInformation student) { student.IsStudentIdValid = false; var studentIdStart = int.Parse(ConfigurationManager.AppSettings["StudentIdRangeStart"]); var studentIdEnd = int.Parse(ConfigurationManager.AppSettings["StudentIdRangeEnd"]); student.StudentIdInvalidMessage = string.Format("Invalid Student Id! Please Send a valid studentId in the range from {0} to {1}", studentIdStart, studentIdEnd); var data = GetByteArrayFromObject(student); return(data); }
public static void AddStudentToList(StudentInformation studentInformation) { var studentModel = new StudentModel { StudentId = studentInformation.StudentId, ExamEndTime = studentInformation.ExamEndTime, ExamStartTime = studentInformation.ExamStartTime, ExamTime = DateTime.UtcNow, IsExamFinished = false, IsBackupAvailable = false, StudentIpAddress = studentInformation.ServerIPAddress, ActualAnswerFilePath = Path.Combine(StudentAnswerFolder, studentInformation.StudentId.ToString()) }; ConnectedStudentList.Add(studentInformation.StudentId, studentModel); }
public static void SaveAnswerIntoServer(StudentInformation student) { /*if (student.OperationType == 0) * { * if (!Directory.Exists(student.StudentId.ToString())) * { * Directory.CreateDirectory(student.StudentId.ToString()); * * StudentList.Add(student.StudentId, student); * * * //TODO new implementation * * var studentDb = new Student() * { * StudentId = student.StudentId, * ExamStartTime = examStartTime, * ExamEndTime = examEndTime * }; * * dataService.CreateStudentIfNotExists(studentDb); * } * * }*/ if (student.OperationType == OperationType.ClientAnswer) { // TODO; file Save var dirName = student.StudentId.ToString(); var filePath = Path.Combine(dirName, dirName + ".txt"); if (Directory.Exists(dirName)) { //File.WriteAllBytes(filePath, student.FileData); } // TODO new implementation. save answer var studentDb = new Student() { StudentId = student.StudentId, ExamTime = DateTime.UtcNow }; dataService.UpdateStudent(studentDb); } }
public static StudentInformation GetStudentInformationFromConnectedList(int studentId) { StudentModel studentModel = null; ConnectedStudentList.TryGetValue(studentId, out studentModel); if (studentModel == null) { return(null); } var student = new StudentInformation { StudentId = studentModel.StudentId, ServerIPAddress = studentModel.StudentIpAddress, }; return(student); }
public static void SaveStudentInformation(StudentInformation student) { if (student.OperationType == 0) { if (!Directory.Exists(student.StudentId.ToString())) { Directory.CreateDirectory(student.StudentId.ToString()); StudentList.Add(student.StudentId, student); // TODO new implementation var studentDb = new Student() { StudentId = student.StudentId, ExamStartTime = GetStartTime(), ExamEndTime = GetEndTime() }; dataService.CreateStudentIfNotExists(studentDb); } } }