Я должен реализовать сервер RMI, который будет внешним интерфейсом для двух других служб RMI. Поэтому я решил, что логично было бы иметь интерфейс для реализации этих интерфейсов для двух других сервисов.
public interface FrontEndServer extends Remote, BookServer, StudentServer
{
// Block empty so far
}
Однако на StudentServer есть метод
/**
* Allows a student to borrow a book
*
* @param studentID of the student who wishes to borrow a book
* @param bookID of the book the student wishes to borrow
* @throws RemoteException
* @throws StudentNotFoundException when a student is not found in the system
*/
void addBookToStudent(int studentID, int bookID) throws RemoteException, StudentNotFoundException;
Я бы хотел, чтобы FrontEndServer
также выдавал BookNotFoundException
, так как этот сервис также проверит, если книга действительно существует, прежде чем пытаться добавить детали в.
Возможно ли это, или моя дизайнерская идея полностью отключена, и это на самом деле плохая дизайнерская идея, как будто другие интерфейсы меняются и все? И лучше ли мне писать сигнатуры методов для всех методов внутри FrontEndServer
?