For this assignment, you will be adding additional logic to handle exceptions, file output, and file input. Complete the following
Modify your handling of the quantity of items to include the following:
Only values in the range 1–99 are accepted.
Illegal or out-of-range values cause a reprompt for a valid input.
Up to 3 such requests for valid input are made, and the program terminates if a valid numeric in-range quantity is not entered by the customer.
Exception handling is used to accomplish this.
You should bundle all of this as a new method, such as getNumericInput( ), and then use a call to this new method in place of your existing quantity request code.
Modify your code that validates string input (like returning customer, color, crust, etc.) so that only correct responses are accepted. Check for yes or no, regular or deep dish, and so forth.
Modify your display of the cost of the product so that it appears properly formatted with a dollar sign and exactly two digits to the right of the decimal point.
Add a phone number to the collection of customer or product attributes. The phone number must be entered in the form (###) ###-####, where “#” is any digit (0–9) and the parentheses and hyphen are required. The space after the closed parentheses may or may not be present. You must create a method that handles the input and the validation of the phone number. You should use the Java java.util.regex.* pattern matching capabilities to validate the phone number.
A file (named “order.txt”) must be written that contains each of the above data items that constitute an order. The items must be written on separate lines in the file. No other information may be written to the file. You must be able to view the file using Notepad to verify that the information that it contains is complete and correct.
The order file only should be written if there are no validation errors whatsoever.
You should create a method (named “writeOrderFile( )”) that handles file output.
Create a confirmation method that reads the data values from the order file into separate variables. It then should create and display a confirmation that shows the values that were read. Each value should be identified using an appropriate label. Consider the following example:
Thank you for your order.
Name: Joe Blow
Returning customer: Yes
Phone: (123) 456-7890
Note: You must use this confirmation method in place of your existing code that creates the confirmation display.
New Content for Week 3
The Phase 3 Individual Project deliverables are as follows:
Save the program code that you just developed and ran successfully in a .zip file that includes all of your Java project files.
Update the Key Assignment design document that you started in Week 1 with a new date and project name.
Update your previously completed work based on your instructor’s feedback.
Perform a screen capture of each of the ordering system dialogs that display during execution just after you have entered the requested information. Place these screen captures in Week 3: Error Handling and File Input or Output.
Update your UML use case diagram to describe the additional information and capabilities.
Be sure to update your table of contents before submission.
Name your revised document “yourname_IT110_IP3.doc.”
Create a .zip file that contains your project document (including screen captures) and your Java source file or Eclipse project. Name your .zip file “yourname_IT110_IP3.zip”