-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathBombillaRMIClient.java
51 lines (44 loc) · 1.97 KB
/
BombillaRMIClient.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
import java.rmi.*;
import java.rmi.server.UnicastRemoteObject;
import java.util.*;
public class BombillaRMIClient{
public static void main(String args[])
{
System.out.println("Buscar el servicio BombillaRMI");
try {
// Comprobar si se ha especificado la direccion del servicio de registros
String registry = "localhost";
if (args.length >=1) registry = args[0];
// Formatear la url del registro
String registro ="rmi://" + registry + "/BombillaRMI";
// Buscar el servicio en el registro.
Remote servicioRemoto = Naming.lookup(registro);
// Convertir a un interfaz BombillaRMI
BombillaRMI servicioBombilla = (BombillaRMI) servicioRemoto;
// Encender la bombilla
System.out.println("Invocando servicioBombilla.on()"); servicioBombilla.on();
// Mirar si el estado ha cambiado
System.out.println("Estado bombilla: " + servicioBombilla.isOn() );
// Ahorrar energia -> Apagar la bombilla
System.out.println("Invocando servicioBombilla.off()");
servicioBombilla.off();
// Mirar si el estado ha cambiado
System.out.println("Estado bombilla: " + servicioBombilla.isOn() );
servicioBombilla.setTemperature(50.30);
servicioBombilla.setConsumption(5000.00);
bombilla.off();
bombilla.on();
bombilla.off();
bombilla.on();
bombilla.off();
System.out.println("Consumo bombilla: " + String.valueOf(servicioBombilla.checkConsumption()) );
System.out.println("Temperature bombilla: " + String.valueOf(servicioBombilla.checkTemperature()));
} catch (NotBoundException nbe) {
System.err.println("No existe el servicio de bombilla en el registro!");
} catch (RemoteException re) {
System.err.println("Error Remoto - " + re);
} catch (Exception e) {
System.err.println("Error - " + e);
}
}
}