Java project, computer programming, Programming Languages

Assignment Help:
NOTE: You will only submit the University.java and EmptyFileException.java files (inside P3.zip/tar)

NOTE on null objects:. From Project 1: Since the array of students in the Course class might have no objects (null), remember to do a null check when traversing the array.

UPDATE March 23rd: There was a slight error in the "university.txt" file provided for part A. Please make sure you work with the latest version.

NOTE: You should NOT modify any classes other than University.java.
Description:

For this project you will be storing and retrieving the Sakai system implemented in project 1.
You will first need to download the solution to project 1.
There are two parts to the project:

PART A:. This part involves writing out all the information to a file. Modify the University.java file by adding this method:
public boolean writeToFile(String filename):
-The method should write out all the information to the filename passed in. If successfully written it returns true, otherwise false.
-The file format is as follows: (parentheses indicate the information has to be written out)

University Name: (university''s name)
Current Term: (currentTerm)
Current Year: (currentYear)
Number of Students: (number of students)
Number of Instructors: (number of instructors)
Number of Courses: (number of courses)

The information above is to be written out first. Immediately following the above the information for each student has to be written out as specified below:

Undergrad/Grad Student:
Name: (student''s name)
UFID: (student''s ufid)
D.O.B: (student''s dob)
GPA: (student''s gpa)
Number of Courses: (number of courses the student is enrolled in)

Immediately following the above the information for each instructor has to be written out as specified below:

Instructor:
Name: (instructor''s name)
UFID: (instructor''s ufid)
D.O.B: (instructor''s dob)

Immediately following the above the information for each course has to be written out as specified below:

Course:
(type) (number)
(title)
Number of credits: (numCredits)
Instructor UFID: (UFID of the instructor)
Number of TAs: (number of TAs)
TA UFIDs: (ufid of first ta),(ufid of second ta),...,(ufid of last ta)
Capacity: (capacity)
Current Enrollment: (currentEnrollment)
Student UFIDs: (ufid of first student),(ufid of second student),...,(ufid of last student)


That signifies the end of the file.


Use TestDriver1 to test your solution to Part A.
This driver will produce a file named university.txt. Use the output file provided to compare whether your program writes it out properly.

PART B: This part will involve reading from a file and reconstructing all the objects in the Sakai system.

Create the class EmptyFileException, which will be a subclass of Exception.. This exception is thrown when a file is empty. It will have the following properties and methods:
Properties:
----------
- String filename; // This represents the name of the file which is empty

Constructors:
------------
- EmptyFileException()
Empty constructor which does nothing
- EmptyFileException(String filename)
Takes in the name of the file which is empty and set''s the properties appropriately

Methods:
--------
public String toString();
It will return a string in this format:

The file (filename) is empty.


Modify the University.java file by adding this method:
public static University readFromFile(String filename):
-This method will read in all the university info from a file and construct the university object.
-If the object is properly created it is returned, otherwise a null object is returned.
-If the file to read from is empty, the method will try-and-catch the EmptyFileException created above.
When the exception is caught it''s information is printed out (via the toString method).

(HINT: Try to use helper methods for reading in different kinds of objects - Student, Instructor and Course.)

Use TestDriver2 to test your solution. It tries to read in the university.txt file. Compare with our output.

Related Discussions:- Java project, computer programming

Python 2.7.3, I have assignment about python language . Could you helpe me ...

I have assignment about python language . Could you helpe me to built it

Program for tube challenge route, 1. Introduction The Tube Challenge is ...

1. Introduction The Tube Challenge is a Guinness World Records challenge that tests both the physical and mental abilities of the person trying to break it. The main components

Operating systems, list of 10 operating systems with their hardware specifi...

list of 10 operating systems with their hardware specification and also list any 5 software associated with each operating system

Need help for crowdsporting website development, CrowdSporting Website Deve...

CrowdSporting Website Development I want an advanced web developer to spend 1-2 days coding our newly designed website. It will be a single page scrolling site, fully designed a

Document type definition schema, Create a DTD which describes the structure...

Create a DTD which describes the structure of the document which you prepared in Question 1. Make sure that you use all appropriate DTD ingredients to constrain valid documents as

What is .net technology?, What is .NET TECHNOLOGY? .NET technological ...

What is .NET TECHNOLOGY? .NET technological innovation was presented by Enthusiasm, to get the industry from the SUN's Coffee. Few in the past, Enthusiasm had only VC++ and VB

Lmc, Plan, design and dry run a program for the Little Man Computer (LMC) t...

Plan, design and dry run a program for the Little Man Computer (LMC) that produces the same result using a fixed number of 10 iterations.

Assembly, Write an assembly program that computes Fibonacci numbers 2-5. a....

Write an assembly program that computes Fibonacci numbers 2-5. a. Assume Fib(0)=0 and Fib(1)=1. b. Store Fib(2) in EAX, Fib(3) in EBX, Fib(4) in ECX and Fib(5) in EDX. c. Use a LOO

Program compares interest rates, 'This program compares interest rates betw...

'This program compares interest rates between two banks and determines the best bank 'Eric Weber, Adam Litchfield, Eric Romero, Sarah, Alex, Amy '10/5/12 'Lab #4 Problem 42 'CSC

Design an application that opens and analyses word files, Design an applica...

Design an application that opens and analyses word files. Requirements: Create an application that analyses text documents. It should open a text file, read each word in

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd