<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">package lab2;

import java.rmi.*;
import java.rmi.server.*;
import java.util.Random;
import java.util.Date;

public class JavaMarksCalculator extends UnicastRemoteObject 
implements MarksCalculatorI {
  private static Random r = new Random(new Date().getTime());
  
  public String getMark(String student) throws RemoteException {
	return (r.nextInt(3)+2)+(r.nextBoolean() ? "+" : "-");
  }

  //trzeba zadeklarowac, zeby podac klauzule throws
  public JavaMarksCalculator() throws RemoteException {
	super();//jest wywoływane domyślnie
  }

  public static void main(String[] args) throws Exception {
	System.setSecurityManager(new RMISecurityManager());
	JavaMarksCalculator mk = new JavaMarksCalculator();
	//registery musi dzialac
	//nie powinno sie tu podawac localhost
	//zeby dzialalo komputer powinien miec aktywne polaczenie TCP/IP, nawet jezeli testujemy lokalnie
	Naming.bind("Marks_proposals", mk);
	System.out.println("Ready to use");
  }
}
</pre></body></html>