Aggiunto esercizio su stab-skeleton. Creato esercizio quindi con dns resolver, client -> stub -> skeleton -> server
This commit is contained in:
146
stub_skeleton/Stub.java
Normal file
146
stub_skeleton/Stub.java
Normal file
@@ -0,0 +1,146 @@
|
||||
package stub_skeleton;
|
||||
|
||||
import socket_test.test.Record;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.ObjectInputStream;
|
||||
import java.io.ObjectOutputStream;
|
||||
import java.net.Socket;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
/**
|
||||
* Created with xgiovio.macbookair.
|
||||
* User: xgiovio
|
||||
* Date: 21/10/14
|
||||
* Time: 12:31
|
||||
*/
|
||||
public class Stub implements Impiegato{
|
||||
|
||||
private static final Logger log = Logger.getLogger(Stub.class.getName());
|
||||
|
||||
public Stub (String in_ip, int in_port){
|
||||
server_ip = in_ip;
|
||||
port = in_port;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getNome() {
|
||||
try {
|
||||
Socket sock = new Socket(server_ip, port);
|
||||
saved_socket = sock;
|
||||
log.info("Connessione a " + server_ip + " " + port);
|
||||
ObjectOutputStream out = new ObjectOutputStream(sock.getOutputStream());
|
||||
log.info("inviando getNome al server");
|
||||
out.writeObject(new String("getNome"));
|
||||
ObjectInputStream in = new ObjectInputStream(sock.getInputStream());
|
||||
String to_return = (String) in.readObject();
|
||||
sock.close();
|
||||
return to_return;
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
} catch (ClassNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
finally {
|
||||
if (saved_socket!=null)
|
||||
try {
|
||||
saved_socket.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String getCognome() {
|
||||
try {
|
||||
Socket sock = new Socket(server_ip, port);
|
||||
saved_socket = sock;
|
||||
log.info("Connessione a " + server_ip + " " + port);
|
||||
ObjectOutputStream out = new ObjectOutputStream(sock.getOutputStream());
|
||||
log.info("inviando getCognome al server");
|
||||
out.writeObject(new String("getCognome"));
|
||||
ObjectInputStream in = new ObjectInputStream(sock.getInputStream());
|
||||
String to_return = (String) in.readObject();
|
||||
sock.close();
|
||||
return to_return;
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
} catch (ClassNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
finally {
|
||||
if (saved_socket!=null)
|
||||
try {
|
||||
saved_socket.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
@Override
|
||||
public double getStipendio() {
|
||||
try {
|
||||
Socket sock = new Socket(server_ip, port);
|
||||
saved_socket = sock;
|
||||
log.info("Connessione a " + server_ip + " " + port);
|
||||
ObjectOutputStream out = new ObjectOutputStream(sock.getOutputStream());
|
||||
log.info("inviando getStipendio al server");
|
||||
out.writeObject(new String("getStipendio"));
|
||||
ObjectInputStream in = new ObjectInputStream(sock.getInputStream());
|
||||
double to_return = in.readDouble();
|
||||
sock.close();
|
||||
return to_return;
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
finally {
|
||||
if (saved_socket!=null)
|
||||
try {
|
||||
saved_socket.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public double aumentaStipendio(double in_aumento) {
|
||||
try {
|
||||
Socket sock = new Socket(server_ip, port);
|
||||
saved_socket = sock;
|
||||
log.info("Connessione a " + server_ip + " " + port);
|
||||
ObjectOutputStream out = new ObjectOutputStream(sock.getOutputStream());
|
||||
log.info("inviando aumentaStipendio al server");
|
||||
out.writeObject(new String("aumentaStipendio"));
|
||||
out.flush();
|
||||
out.writeDouble(in_aumento);
|
||||
out.flush();
|
||||
ObjectInputStream in = new ObjectInputStream(sock.getInputStream());
|
||||
double to_return = in.readDouble();
|
||||
sock.close();
|
||||
return to_return;
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
finally {
|
||||
if (saved_socket!=null)
|
||||
try {
|
||||
saved_socket.close();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
|
||||
}
|
||||
|
||||
private String server_ip;
|
||||
private int port;
|
||||
private Socket saved_socket= null;
|
||||
}
|
||||
Reference in New Issue
Block a user