mirror of
https://github.com/binlaab/nanofiles.git
synced 2026-07-01 13:37:22 +02:00
'jars'
This commit is contained in:
@@ -43,6 +43,11 @@ public class DirMessage {
|
||||
|
||||
private static final String FIELDNAME_PEERS = "serverPeers";
|
||||
|
||||
private static final String FIELDNAME_FILENAME = "filename";
|
||||
private static final String FIELDNAME_FILEDATA = "filedata";
|
||||
private static final String FIELDNAME_FILESIZE = "filesize";
|
||||
private static final String FIELDNAME_FILEHASH = "filehash";
|
||||
|
||||
/**
|
||||
* Tipo del mensaje, de entre los tipos definidos en PeerMessageOps.
|
||||
*/
|
||||
@@ -58,6 +63,11 @@ public class DirMessage {
|
||||
|
||||
private FileInfo[] fileList;
|
||||
private Map<String, InetSocketAddress> peerList;
|
||||
|
||||
private String filename;
|
||||
private String filedata;
|
||||
private String fileHash;
|
||||
private long fileSize;
|
||||
/*
|
||||
* TODO: (Boletín MensajesASCII) Crear un atributo correspondiente a cada uno de
|
||||
* los campos de los diferentes mensajes de este protocolo.
|
||||
@@ -67,6 +77,7 @@ public class DirMessage {
|
||||
operation = op;
|
||||
}
|
||||
|
||||
|
||||
public DirMessage(String op, String nick, String ip, int puerto) {
|
||||
this(op);
|
||||
this.nick = nick;
|
||||
@@ -75,15 +86,28 @@ public class DirMessage {
|
||||
|
||||
}
|
||||
|
||||
public DirMessage(String op, String nick) {
|
||||
public DirMessage(String op, String field) {
|
||||
this(op);
|
||||
this.nick = nick;
|
||||
|
||||
if (op.equals(DirMessageOps.OPERATION_SERVE) || op.equals(DirMessageOps.OPERATION_STOP_SERVE)) {
|
||||
this.nick = field;
|
||||
} else if (op.equals(DirMessageOps.OPERATION_REQUEST_DIRDL)) {
|
||||
this.fileHash = field;
|
||||
}
|
||||
}
|
||||
|
||||
public DirMessage(String op, FileInfo[] filelist) {
|
||||
this(op);
|
||||
this.fileList = filelist;
|
||||
}
|
||||
|
||||
public DirMessage(String op, String filename, String data, long size, String hash) {
|
||||
this(op);
|
||||
this.filename = filename;
|
||||
this.filedata = data;
|
||||
this.fileSize = size;
|
||||
this.fileHash = hash;
|
||||
}
|
||||
|
||||
/*
|
||||
* TODO: (Boletín MensajesASCII) Crear diferentes constructores adecuados para
|
||||
@@ -161,6 +185,37 @@ public class DirMessage {
|
||||
this.peerList = peers;
|
||||
}
|
||||
|
||||
public String getFilename() {
|
||||
return this.filename;
|
||||
}
|
||||
|
||||
public void setFilename(String filename) {
|
||||
this.filename = filename;
|
||||
}
|
||||
|
||||
public String getFiledata() {
|
||||
return this.filedata;
|
||||
}
|
||||
|
||||
public void setFiledata(String data) {
|
||||
this.filedata = data;
|
||||
}
|
||||
|
||||
public String getHash() {
|
||||
return this.fileHash;
|
||||
}
|
||||
|
||||
public void setHash(String h) {
|
||||
this.fileHash = h;
|
||||
}
|
||||
|
||||
public long getFileSize() {
|
||||
return this.fileSize;
|
||||
}
|
||||
|
||||
public void setFileSize(Long fs) {
|
||||
this.fileSize = fs;
|
||||
}
|
||||
|
||||
/**
|
||||
* Método que convierte un mensaje codificado como una cadena de caracteres, a
|
||||
@@ -245,6 +300,25 @@ public class DirMessage {
|
||||
m.setPeers(peersList);
|
||||
break;
|
||||
}
|
||||
|
||||
case FIELDNAME_FILENAME: {
|
||||
m.setFilename(value);
|
||||
break;
|
||||
}
|
||||
|
||||
case FIELDNAME_FILEDATA: {
|
||||
m.setFiledata(value);
|
||||
break;
|
||||
}
|
||||
|
||||
case FIELDNAME_FILESIZE: {
|
||||
m.setFileSize(Long.parseLong(value));
|
||||
}
|
||||
|
||||
case FIELDNAME_FILEHASH: {
|
||||
m.setHash(value);
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
System.err.println("PANIC: DirMessage.fromString - message with unknown field name " + fieldName);
|
||||
@@ -307,6 +381,16 @@ public class DirMessage {
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case DirMessageOps.OPERATION_REQUEST_DIRDL:
|
||||
sb.append(FIELDNAME_FILEHASH + DELIMITER + this.fileHash + END_LINE);
|
||||
break;
|
||||
case DirMessageOps.OPERATION_DIRDL: // data name size hash
|
||||
sb.append(FIELDNAME_FILENAME + DELIMITER + this.filename + END_LINE);
|
||||
sb.append(FIELDNAME_FILEDATA + DELIMITER + this.filedata + END_LINE);
|
||||
sb.append(FIELDNAME_FILESIZE + DELIMITER + this.fileSize + END_LINE);
|
||||
sb.append(FIELDNAME_FILEHASH + DELIMITER + this.fileHash + END_LINE);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user