public Computer CreatePC(int cpuType, int coreCount, int ramSize, int hardCount, int hardCapacity) { IRAM ram = new RAM(ramSize); ICPU cpu; switch (cpuType) { case 32: cpu = new CPU32(ram, coreCount); break; case 64: cpu = new CPU64(ram, coreCount); break; case 128: cpu = new CPU128(ram, coreCount); break; default: break; } IVideoCard videoCard = new ColorfulVideoCard(); IMotherboard motherBoard = new MotherBoard(); RAID hardDriveRaid = new RAID(); for (int i = 0; i < hardCount; i++) { HardDrive currentHardDrive = new HardDrive(hardCapacity, true); hardDriveRaid.AddHardDrive(currentHardDrive); } Computer pc = new PC(cpu, ram, videoCard, hardDriveRaid, motherBoard); return(pc); }
protected Computer(ICPU cpu, IRAM ram, IVideoCard videoCard, RAID hardDriveRaid, IMotherboard motherBoard) { this.cpu = cpu; this.ram = ram; this.videoCard = videoCard; this.hardDriveRaid = hardDriveRaid; this.motherBoard = motherBoard; }
public Computer CreateServer(int cpuType, int coreCount, int ramSize, int hardCount, int hardCapacity) { IRAM ram = new RAM(ramSize); ICPU cpu; switch (cpuType) { case 32: cpu = new CPU32(ram, coreCount); break; case 64: cpu = new CPU64(ram, coreCount); break; case 128: cpu = new CPU128(ram, coreCount); break; default: break; } IVideoCard videoCard = new MonochromeVideoCard(); IMotherboard motherBoard = new MotherBoard(); RAID hardDriveRaid = new RAID(); IBattery battery = new LaptopBattery(); for (int i = 0; i < hardCount; i++) { HardDrive currentHardDrive = new HardDrive(hardCapacity, true); hardDriveRaid.AddHardDrive(currentHardDrive); } Computer server = new Server(cpu, ram, videoCard, hardDriveRaid, motherBoard); return(server); }
public PC(ICPU cpu, IRAM ram, IVideoCard videoCard, RAID hardDriveRaid, IMotherboard motherBoard) : base(cpu, ram, videoCard, hardDriveRaid, motherBoard) { }
public Laptop(ICPU cpu, IRAM ram, IVideoCard videoCard, RAID hardDriveRaid, IMotherboard motherBoard, IBattery battery) : base(cpu, ram, videoCard, hardDriveRaid, motherBoard) { this.battery = battery; }
public Server(ICPU cpu, IRAM ram, MonochromeVideoCard videoCard, RAID hardDriveRaid, MonochromeVideoCard motherBoard) : base(cpu, ram, videoCard, hardDriveRaid, motherBoard) { }