subject

The fourth programming project involves writing a program to manage a real estate database. This program should be comprised of an enumerated type, an interface, and two parts. The enumerated type should be named Status and should contain three enumeration literals, FOR_SALE, UNDER_CONTRACT and SOLD.

The interface should be a generic interface named StatusChangeable and it should have a bounded generic type parameter whose type must be an enumerated type. It should contain one abstract method changeStatus that has a parameter whose type of the generic type parameter.

The first part of the program is a class named Property. It should implement the StatusChangeable interface. It should contain five instance variables:

1. The property address stored as a string

2. The number of bedrooms stored as integer

3. The square footage stored as integer

4. The price stored as integer

5. The status of the property whose type should be the enumerated type Status with the equivalent integers of 0, 1, and 2.

In addition, it should have the following three methods:

1. A constructor that accepts four parameters for the purpose of initializing the characteristics of the property, specifically

a. Property address

b. Number of bedrooms

c. Square footage

d. Price

The status of the property should be set to FOR_SALE (0).

2. A method named changeStatus that allows the status of the property to be changed.

3. An overridden toString method that returns a string containing the property address, number of bedrooms, square footage, price, and current status appropriately labeled.

The second part of the program is the Program Core and contains the main method. In addition, it should contain an instance variable that defines the database of property records, which is implemented as a HashMap, with the transaction number field (Integer) as the key and a Property object as the value. For consistency and feedback, there is a PRJ4Property. txt data file to use with this project. For documentation, a Transaction array is declared to hold the actions implemented: insert, deleted, find, and change status.

The data file is read into the program and assigned into a HashMap. As each record is assigned, the program also displays all the records of the data file in the Output Window of the IDE.

The program should generate the GUI shown below:

Clicking the Process button should cause the selected choice of the three actions in the combo box to its right to be executed. When inserting a new record, the program should first check whether any non-integer values have been entered in any of the fields that require integers.

The following error messages should display in a JOptionPane window:

1. When the Process button is clicked, the program checks that there are integers in Transaction No, Bedrooms, Square Footage, and Price fields.

2. If the user attempts to insert a key that is already in the database.

3. If the user attempts to delete or find a record that is not in the database.

After each successful operation is completed a JOptionPane window should display confirming the success. In the case of a successful Find request, a window should pop up containing all the information in the associated Property object.

.

Clicking the Change Status button should cause status of the property association with the designated transaction number to be changed to status selected in the combo box to its right.

For design purposes, it might be helpful to include an Exit button on the GUI Interface.

Each transaction modifies/updates the HashMap holding the data that was read into the program. In addition, each transaction is assigned to the Transaction array.

When the program ends, there are two displays of information. The transactions are displayed in the Output Window of the IDE. After that display the newly modified HashMap of the original set of data is displayed in the Output Window of the IDE.

Be sure to follow good programming style, which means making all instance variables private, naming all constants and avoiding the duplication of code. Furthermore, you must select enough different kinds of shapes to completely test the program.

Text. file

7623:563 Main St, 4, 2234, 243212, 1

8729:One State Blvd, 7, 4280, 1250000, 0

7321:7865 W. Patrick Dr, 5, 3090, 26000, 2

3242:876 Northwest Way, 3, 1350,175000, 0

9823:76 Inverness Rd, 5, 2890, 398500, 2

2341:45871 Alpine Way, 5, 2850, 385750, 1

8321:44 North Beach Cir, 3, 1750,215250, 0


The fourth programming project involves writing a program to manage a real estate database. This pro
The fourth programming project involves writing a program to manage a real estate database. This pro

ansver
Answers: 1

Another question on Computers and Technology

question
Computers and Technology, 22.06.2019 00:00
Match each vocabulary word to its definition.1. desktoppicture used to represent acomputer application2. domainnetwork protectionsoftware code that can be viewed,3. iconmodified, and redistributed for freethe background screen on acomputer monitor4. url5. blogan online journalthe part of an internet address that6. firewallrefers to a group of computers on anetworkonline database of web pages7. intranetnetwork for use by an individual8. open address of a web page or9. wikiresource
Answers: 2
question
Computers and Technology, 22.06.2019 01:30
What kind of motivation is katrina showing? use the drop-down menu to complete the statement. katrina is using motivation because she is personally interested in learning more.
Answers: 2
question
Computers and Technology, 23.06.2019 16:30
You have read about the beginnings of the internet and how it was created. what was the internet originally created to do? (select all that apply) share research. play games. communicate. share documents. sell toys
Answers: 1
question
Computers and Technology, 24.06.2019 19:20
Kiesha has a worksheet with a range of cells using the following columns: name, score, group, study group, and date. kiesha needs to sort the worksheet on the date field. which option she use to most efficiently complete this task ? a use the cut and paste option to reorganize the data to fit that order b use the filter function to organize the data based on the date c use the order function to organize the data based on the date d use the sort function to organize the data based on date order
Answers: 3
You know the right answer?
The fourth programming project involves writing a program to manage a real estate database. This pro...
Questions
question
Mathematics, 13.12.2021 05:20
question
Mathematics, 13.12.2021 05:20
question
Biology, 13.12.2021 05:20
question
Mathematics, 13.12.2021 05:20
question
Mathematics, 13.12.2021 05:20
Questions on the website: 13722361