Assume the existence of an interface, CommDevice, with the following methods :

transmit: accepts two string parameters and returns nothing

receive: accepts two string parameters and returns a boolean

Define a class , Firewall, that implements the above interface, and has the following members:

a string instance variable , permittedReceiver

a string instance variable , buffer

a constructor that accepts a string parameter that is used to initialize the permittedReceiver variable

an implementation of the transmit method that assigns the first parameter to the destination instance variable and the second to the buffer variable . It also send to System.out the message "Data scheduled for transmission to dest" where dest is replaced by the actual value of the destination string .

an implementation of the receiver method that checks if the first parameter is equal to the permittedReceiver and if so it sets the buffer instance variable to the second parameter and returns true ; otherwise it sets the buffer to the empty string , prints the message "Attempted breach of firewall by " where is replaced by the method 's first parameter , and returns false .

Respuesta :

Answer:

public class Firewall implements CommDevice { String permittedReceiver, buffer; Firewall(String str) { permittedReceiver = str; } public void transmit(String s1, String s2) { permittedReceiver = s1; buffer = s2; System.out.println("Data scheduled for transmission to " + s1); } public boolean receive(String s1, String s2) { boolean condition; if (s1.equals(permittedReceiver)) { buffer = s2; condition = true; } else { buffer = ""; System.out.println("Attempted breach of firewall by " + s1); condition = false; } return condition; } }

Explanation: