public interface ISocketObject {
void Send (BinaryWriter bw);
}
No es dificil entonces tambien incorporarle a la clase en particular que implementa esta interfaz un constructor que reciba un BinaryReader para construir un objeto a partir de la serializacion manual recibida por el Stream del Socket, quedando algo como lo que sigue:
public class MiObjeto : ISocketObject {
public MiObjecto (BinaryReader br) {
...
}
public void Send (BinaryWriter bw) {
...
}
}
Mucho mas facil, la migracion cuando se tienen dos clases Request y Response que hacen las veces de mensajes entre el Servidor y el Cliente.
La migracion y documentacion del protocolo de mensajeria es:
- DataQuery, INPUT (string sql, int rpp, int page) OUTPUT (string xml)
- DataObjectQuery, INPUT (string sql, int rpp, int page) OUTPUT (int page, int from, int total, int results, object[] data)
- UpdateQuery, INPUT (string sql) OUTPUT (int rows)
- BinaryUpdateQuery INPUT (string sql, int binParams, int param1Len, byte[] param1,...,int paramNLen, byte[] paramN) OUTPUT (int rows)
- BinaryDataQuery, INPUT (string sql) OUTPUT (int len, byte[] data)
Con estos metodos se pueden construir cualquier conjunto de operaciones para gestionar datos de cualquier tipo en la base de datos, aunque podrian no ser definitivos.
No hay comentarios:
Publicar un comentario