Empezar boletín 5, el 4 está acabado

This commit is contained in:
binlaab
2026-04-22 11:53:24 +02:00
parent 25bf19ee9c
commit c0fb933fce
6 changed files with 192 additions and 66 deletions

View File

@@ -289,8 +289,16 @@ public class DirectoryConnector {
* de la operación
*/
DirMessage serve = new DirMessage(DirMessageOps.OPERATION_SERVE);
DirMessage serve = new DirMessage(DirMessageOps.OPERATION_SERVE, NanoFiles.peerNickname, this.directoryHostname, serverPort);
byte[] serveBytes = serve.toString().getBytes();
byte[] response = sendAndReceiveDatagrams(serveBytes);
String respStr = new String(response, 0, response.length);
DirMessage respServe= DirMessage.fromString(respStr);
success = respServe.getOperation().equals(DirMessageOps.OPERATION_SERVE_OK);
if (success) {
}
return success;
}
@@ -303,24 +311,27 @@ public class DirectoryConnector {
* pudo satisfacer nuestra solicitud
*/
public FileInfo[] getFileList() {
FileInfo[] filelist = new FileInfo[0];
DirMessage dirfiles = new DirMessage(DirMessageOps.OPERATION_DIRFILES);
byte[] dirfilesBytes = dirfiles.toString().getBytes();
byte[] resp = sendAndReceiveDatagrams(dirfilesBytes);
// tenemos que empezar a hacer con esta línea
DirMessage respDirfiles = DirMessage.fromString(resp.toString());
return filelist;
DirMessage requestDirfiles = new DirMessage(DirMessageOps.OPERATION_REQUEST_DIRFILES);
byte[] requestBytes = requestDirfiles.toString().getBytes();
byte[] response = sendAndReceiveDatagrams(requestBytes);
String respStr = new String(response, 0, response.length);
DirMessage respDirfiles = DirMessage.fromString(respStr);
return respDirfiles.getFileList();
// return responseDirfiles.getFileList();
}
public Map<String, InetSocketAddress> getPeerList() {
Map<String, InetSocketAddress> peers = new LinkedHashMap<String, InetSocketAddress>();
return peers;
// Map<String, InetSocketAddress> peers = new LinkedHashMap<String, InetSocketAddress>();
DirMessage requestPeers = new DirMessage(DirMessageOps.OPERATION_REQUEST_SERVER_PEERS);
byte[] requestBytes = requestPeers.toString().getBytes();
byte[] response = sendAndReceiveDatagrams(requestBytes);
String respStr = new String(response, 0, response.length);
DirMessage respPeers = DirMessage.fromString(respStr);
return respPeers.getPeers();
}
public Map<String, InetSocketAddress[]> searchFilesByHash(String hashSubstring) {