X-Git-Url: https://git.llucax.com/z.facultad/75.06/emufs.git/blobdiff_plain/696ff22c96589e7f22479cd5d202d1050241322f..ddc964cd151aae4713a5d2d658da986df7cd3441:/emufs/tipo1_main.c diff --git a/emufs/tipo1_main.c b/emufs/tipo1_main.c index cc268ab..ebeb376 100644 --- a/emufs/tipo1_main.c +++ b/emufs/tipo1_main.c @@ -35,6 +35,7 @@ #include "emufs.h" int main(int argc, char* argv[]) { +#ifdef LA_PALOMA_MENSAJERA EMUFS* efs; char reg1[] = "Hola mundo"; char reg2[] = "Adiós mundo cruel"; @@ -58,33 +59,53 @@ int main(int argc, char* argv[]) { return 1; } + /* Lee estadisticas */ + printf("---------------------------------------------------\n"); + debug_ver_estadisticas(efs); + printf("---------------------------------------------------\n"); + /* Graba registros */ - id1 = efs->grabar_registro(efs, reg1, sizeof(reg1)+1, &err); + id1 = efs->grabar_registro(efs, reg1, sizeof(reg1), &err); if (err) { printf("No se pudo grabar el registro 1 (%d).\n", err); - goto error; + goto out; } printf("Se grabó el registro 1 (size: %u) con el id %lu.\n", sizeof(reg1), id1); - id2 = efs->grabar_registro(efs, reg2, sizeof(reg2)+1, &err); + /* Lee estadisticas */ + printf("---------------------------------------------------\n"); + debug_ver_estadisticas(efs); + printf("---------------------------------------------------\n"); + + id2 = efs->grabar_registro(efs, reg2, sizeof(reg2), &err); if (err) { printf("No se pudo grabar el registro 2 (%d).\n", err); - goto error; + goto out; } printf("Se grabó el registro 2 (size: %u) con el id %lu.\n", sizeof(reg2), id2); - id3 = efs->grabar_registro(efs, reg3, sizeof(reg3)+1, &err); + /* Lee estadisticas */ + printf("---------------------------------------------------\n"); + debug_ver_estadisticas(efs); + printf("---------------------------------------------------\n"); + + id3 = efs->grabar_registro(efs, reg3, sizeof(reg3), &err); if (err) { printf("No se pudo grabar el registro 3 (%d).\n", err); - goto error; + goto out; } printf("Se grabó el registro 3 (size: %u) con el id %lu.\n", sizeof(reg3), id3); + /* Lee estadisticas */ + printf("---------------------------------------------------\n"); + debug_ver_estadisticas(efs); + printf("---------------------------------------------------\n"); + /* Lee registros */ reg = efs->leer_registro(efs, id1, &size, &err); if (err) { printf("No se pudo leer el registro 1 (%d).\n", err); - goto error; + goto out; } printf("El contenido del registro 1 es: '%s'.\n", reg); free(reg); @@ -92,7 +113,7 @@ int main(int argc, char* argv[]) { reg = efs->leer_registro(efs, id2, &size, &err); if (err) { printf("No se pudo leer el registro 2 (%d).\n", err); - goto error; + goto out; } printf("El contenido del registro 2 es: '%s'.\n", reg); free(reg); @@ -100,7 +121,7 @@ int main(int argc, char* argv[]) { reg = efs->leer_registro(efs, id3, &size, &err); if (err) { printf("No se pudo leer el registro 3 (%d).\n", err); - goto error; + goto out; } printf("El contenido del registro 3 es: '%s'.\n", reg); free(reg); @@ -108,12 +129,69 @@ int main(int argc, char* argv[]) { /* Ve archivos auxiliares */ printf("\nArchivos auxiliares:\n\n"); ver_archivo_FS(efs); + printf("\n--------------------------------------------------\n\n"); - emufs_destruir(efs); - return 0; + /* Borra registro */ + err = efs->borrar_registro(efs, id2); + if (err) { + printf("No se pudo borrar el registro 2 (%d).\n", err); + goto out; + } + printf("Registro 2 (id = %lu) borrado!.\n", id2); -error: - emufs_destruir(efs); - return 2; + /* Lee estadisticas */ + printf("---------------------------------------------------\n"); + debug_ver_estadisticas(efs); + printf("---------------------------------------------------\n"); + + /* Lee registro 3 (desplazado a izquierda) */ + reg = efs->leer_registro(efs, id3, &size, &err); + if (err) { + printf("No se pudo leer el registro 3 (%d).\n", err); + goto out; + } + printf("El contenido del registro 3 es: '%s'.\n", reg); + free(reg); + + /* Ve archivos auxiliares */ + printf("\n--------------------------------------------------\n"); + printf("Archivos auxiliares:\n\n"); + ver_archivo_FS(efs); + + /* compacta archivo */ + printf("\n--------------------------------------------------\n"); + printf("Compactando archivo.......\n\n"); + efs->compactar(efs); + + /* Lee estadisticas */ + printf("---------------------------------------------------\n"); + debug_ver_estadisticas(efs); + printf("---------------------------------------------------\n"); + /* Ve archivos auxiliares */ + printf("Archivos auxiliares:\n\n"); + ver_archivo_FS(efs); + printf("\n--------------------------------------------------\n"); + + /* Lee registros */ + reg = efs->leer_registro(efs, id1, &size, &err); + if (err) { + printf("No se pudo leer el registro 1 (%d).\n", err); + goto out; + } + printf("El contenido del registro 1 es: '%s'.\n", reg); + free(reg); + + reg = efs->leer_registro(efs, id3, &size, &err); + if (err) { + printf("No se pudo leer el registro 3 (%d).\n", err); + goto out; + } + printf("El contenido del registro 3 es: '%s'.\n", reg); + free(reg); + +out: + emufs_destruir(efs); +#endif + return 0; /*err;*/ }