Question: A. Panel for main system. This panel would hold the main view of the application. Possible usage may be to list and manage all computer

A. Panel for main system. This panel would hold the main view of the application. Possible usage may be to list and manage all computer images , and all applications.

B. Panel for computer images. This panel would allow the user to examine an image: list applications in that image, view additional data needs for each application , view the total data requirements. Also consider how an application may be removed.

C. Panel for applications. This panel would allow an application to be examined and modified: name , CPU and memory, default data needs.

Existing code for

Part A-

/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package hciproject; import java.util.*;

/** * * @author */ public class HCIproject {

/** * @param args the command line arguments */ public static void main(String[] args) { // TODO code application logic here Image image1, image2; image1 = new Image(); image2 = new Image(); AppObject a, b, c, d; a = new AppObject(); b = new AppObject(); c = new AppObject(); d = new AppObject(); a.setName("MS Office"); a.setDiskSize(2524); a.setCoresUsed(3); a.setRamSize(1399); b.setName("Firefox "); b.setDiskSize(122); b.setCoresUsed(1); b.setRamSize(1577); c.setName("Acrobat "); c.setDiskSize(682); c.setCoresUsed(2); c.setRamSize(889); d.setName("AutoCAD "); d.setDiskSize(51229); d.setCoresUsed(6); d.setRamSize(32000); image1.setName("Sales Laptops"); image1.addApplication(a, 200); image1.addApplication(b, 0); image1.addApplication(c, 100); image2.setName("Engineering Workstations"); image2.addApplication(a, 200); image2.addApplication(b, 0); image2.addApplication(c, 100); image2.addApplication(d, 500); printImage(image1); printImage(image2); image1.setApplicationData(a, 100); image1.setApplicationData(b, 50); image1.setApplicationData(c, 200); image2.setApplicationData(a, 300); image2.setApplicationData(b, 75); image2.setApplicationData(c, 500); image2.setApplicationData(d, 1000); System.out.println(""); System.out.println("==================="); System.out.println(""); System.out.println("-------------------"); printImage(image1); printImage(image2); image1.removeApplication(a); image1.removeApplication(c); image2.removeApplication(b); System.out.println(""); System.out.println("==================="); System.out.println(""); System.out.println("-------------------"); printImage(image1); printImage(image2); } public static void printImage(Image im){ System.out.println("Printing contents of \"" + im.getName() + "\" image:"); System.out.println("\tName \t\tRAM \tCores \tDisk Space \tExtra Disk Space"); for(int i = 0; i < im.getNumberOfApplications(); i++){ AppObject app; app = im.getApplication(i); System.out.print("\t" + app.getName() + "\t" + app.getDiskSize() + "\t" + app.getCoresUsed() + "\t" + app.getRamSize()); System.out.println("\t\t" + im.getApplicationExtraData(i)); } System.out.println("-------------------"); }

}

Part B-

Image.java

package HCIproject;

import java.util.ArrayList;

public class Image { private String name; // List for AppObject private ArrayList appObjectList = new ArrayList (); // List for AppObject data private ArrayList appDataList = new ArrayList (); /** * * @return */ public String getName() { return name; } /** * * @param name */ public void setName(String name) { this.name = name; } /** * * @param a * @param i */ public void addApplication(AppObject a, int i) { // Add to each list appObjectList.add(a); appDataList.add(new Integer(i)); } /** * * @param a * @param i */ public void setApplicationData(AppObject a, int i) { // Get the index of the object and add to the data list appDataList.set(appObjectList.indexOf(a), new Integer(i)); } /** * * @param a */ public void removeApplication(AppObject a) { // Remove from both the list appDataList.remove(appObjectList.indexOf(a)); appObjectList.remove(a); } /** * * @return */ public int getNumberOfApplications() { // Return the count of App object return appObjectList.size(); } /** * * @param i * @return */ public AppObject getApplication(int i) { // Get the application return appObjectList.get(i); } /** * * @param i * @return */ public int getApplicationExtraData(int i) { // Get application data return appDataList.get(i).intValue(); } } AppObject.java

package HCIproject;

public class AppObject { // Data members of the App objects private String name; private int diskSize; private int coresUsed; private int ramSize; // Getters and setters /** * * @return */ public String getName() { return name; } /** * * @param name */ public void setName(String name) { this.name = name; } /** * * @return */ public int getDiskSize() { return diskSize; } /** * * @param diskSize */ public void setDiskSize(int diskSize) { this.diskSize = diskSize; } /** * * @return */ public int getCoresUsed() { return coresUsed; } /** * * @param coresUsed */ public void setCoresUsed(int coresUsed) { this.coresUsed = coresUsed; } /** * * @return */ public int getRamSize() { return ramSize; } /** * * @param ramSize */ public void setRamSize(int ramSize) { this.ramSize = ramSize; }

}

Thank You

Yes, you have to strictly modify and also add neccesary data and ram

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!