Changeset 11053
- Timestamp:
- Jan 11, 2007, 4:50:49 PM (19 years ago)
- Location:
- trunk/Ohana/src/opihi/cmd.data
- Files:
-
- 2 edited
-
book.c (modified) (3 diffs)
-
book_commands.c (modified) (19 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/opihi/cmd.data/book.c
r10997 r11053 2 2 3 3 int book_list (int argc, char **argv); 4 int book_init (int argc, char **argv); 4 5 int book_create (int argc, char **argv); 5 6 int book_delete (int argc, char **argv); … … 16 17 static Command book_commands[] = { 17 18 {"list", book_list, "list books"}, 19 {"init", book_init, "initialize a book"}, 18 20 {"create", book_create, "create a book"}, 19 21 {"delete", book_delete, "delete a book"}, … … 36 38 gprint (GP_ERR, "USAGE: book (command)\n"); 37 39 gprint (GP_ERR, " book list : list books\n"); 38 gprint (GP_ERR, " book create (book) : create book (name)\n"); 39 gprint (GP_ERR, " book delete (book) : delete book (name)\n"); 40 gprint (GP_ERR, " book init (book) : removes all pages from book\n"); 41 gprint (GP_ERR, " book create (book) : create a book\n"); 42 gprint (GP_ERR, " book delete (book) : delete a book\n"); 40 43 gprint (GP_ERR, " book getbook (where) : get book name\n"); 41 44 gprint (GP_ERR, " book listbook (book) : list a book\n"); -
trunk/Ohana/src/opihi/cmd.data/book_commands.c
r11007 r11053 2 2 3 3 int book_list (int argc, char **argv) { 4 ListBooks(); 4 if (argc != 1) { 5 gprint (GP_ERR, "USAGE: book list\n"); 6 return FALSE; 7 } 8 9 ListBooks(); 5 10 } 6 11 … … 36 41 } 37 42 43 int book_init (int argc, char **argv) { 44 45 int status; 46 Book *book; 47 48 if (argc != 2) { 49 gprint (GP_ERR, "USAGE: book init (book)\n"); 50 return FALSE; 51 } 52 53 book = FindBook (argv[1]); 54 if (book != NULL) { 55 status = DeleteBook (book); 56 if (!status) abort (); 57 } 58 59 CreateBook (argv[1]); 60 return TRUE; 61 } 62 38 63 int book_listbook (int argc, char **argv) { 39 64 … … 71 96 if (argc != 2) { 72 97 gprint (GP_ERR, "USAGE: book npages (book)\n"); 73 return FALSE; 74 } 75 76 book = FindBook (argv[1]); 77 if (book == NULL) { 78 gprint (GP_ERR, "book %s not found\n", argv[1]); 98 FREE (varName); 99 return FALSE; 100 } 101 102 book = FindBook (argv[1]); 103 if (book == NULL) { 104 gprint (GP_ERR, "book %s not found\n", argv[1]); 105 FREE (varName); 79 106 return FALSE; 80 107 } … … 85 112 gprint (GP_ERR, "%d pages\n", book[0].Npages); 86 113 } 114 FREE (varName); 87 115 return TRUE; 88 116 } … … 103 131 if (argc != 2) { 104 132 gprint (GP_ERR, "USAGE: book getbook (where) [-var var]\n"); 133 FREE (varName); 105 134 return FALSE; 106 135 } … … 110 139 if (book == NULL) { 111 140 gprint (GP_ERR, "book %s not found\n", argv[1]); 141 FREE (varName); 112 142 return FALSE; 113 143 } … … 118 148 gprint (GP_ERR, "%s\n", book[0].name); 119 149 } 150 FREE (varName); 120 151 return TRUE; 121 152 } … … 159 190 gprint (GP_ERR, "USAGE: book delpage (book) (page)\n"); 160 191 gprint (GP_ERR, "USAGE: book delpage (book) -key name value\n"); 161 return FALSE; 162 } 163 164 book = FindBook (argv[1]); 165 if (book == NULL) { 166 gprint (GP_ERR, "book %s not found\n", argv[1]); 192 FREE (Key); 193 FREE (Value); 194 return FALSE; 195 } 196 197 book = FindBook (argv[1]); 198 if (book == NULL) { 199 gprint (GP_ERR, "book %s not found\n", argv[1]); 200 FREE (Key); 201 FREE (Value); 167 202 return FALSE; 168 203 } … … 178 213 } 179 214 } 215 FREE (Key); 216 FREE (Value); 180 217 return TRUE; 181 218 } … … 184 221 if (page == NULL) { 185 222 gprint (GP_ERR, "page %s in book %s not found\n", argv[2], argv[1]); 223 FREE (Key); 224 FREE (Value); 186 225 return FALSE; 187 226 } 188 227 189 228 DeletePage (book, page); 229 FREE (Key); 230 FREE (Value); 190 231 return TRUE; 191 232 } … … 220 261 221 262 int where, N; 222 char * varName, *keyName, *keyValue;263 char *pageName, *varName, *keyName, *keyValue; 223 264 Book *book; 224 265 Page *page; … … 231 272 } 232 273 233 key Name = NULL;274 keyValue = keyName = NULL; 234 275 if ((N = get_argument (argc, argv, "-key"))) { 235 276 remove_argument (N, &argc, argv); … … 242 283 if (argc != 3) { 243 284 gprint (GP_ERR, "USAGE: book getpage (book) (where) [-var var] [-key key value]\n"); 285 FREE (varName); 286 FREE (keyName); 287 FREE (keyValue); 244 288 return FALSE; 245 289 } … … 250 294 if (book == NULL) { 251 295 gprint (GP_ERR, "book %s not found\n", argv[1]); 296 FREE (varName); 297 FREE (keyName); 298 FREE (keyValue); 252 299 return FALSE; 253 300 } … … 259 306 } 260 307 if (page == NULL) { 261 gprint (GP_ERR, "page %s in book %s not found\n", argv[2], argv[1]); 262 return FALSE; 308 pageName = strcreate ("NULL"); 309 } else { 310 pageName = strcreate (page[0].name); 263 311 } 264 312 265 313 if (varName) { 266 set_str_variable (varName, page[0].name); 267 } else { 268 gprint (GP_ERR, "%s\n", page[0].name); 269 } 314 set_str_variable (varName, pageName); 315 } else { 316 gprint (GP_ERR, "%s\n", pageName); 317 } 318 FREE (pageName); 319 FREE (varName); 320 FREE (keyName); 321 FREE (keyValue); 270 322 return TRUE; 271 323 } … … 313 365 if (argc != 4) { 314 366 gprint (GP_ERR, "USAGE: book newword (book) (page) (word)\n"); 315 return FALSE; 316 } 317 318 book = FindBook (argv[1]); 319 if (book == NULL) { 320 gprint (GP_ERR, "book %s not found\n", argv[1]); 367 FREE (varName); 368 return FALSE; 369 } 370 371 book = FindBook (argv[1]); 372 if (book == NULL) { 373 gprint (GP_ERR, "book %s not found\n", argv[1]); 374 FREE (varName); 321 375 return FALSE; 322 376 } … … 325 379 if (page == NULL) { 326 380 gprint (GP_ERR, "page %s in book %s not found\n", argv[2], argv[1]); 381 FREE (varName); 327 382 return FALSE; 328 383 } … … 331 386 if (value == NULL) { 332 387 gprint (GP_ERR, "value %s on page %s in book %s not found\n", argv[3], argv[2], argv[1]); 388 FREE (varName); 333 389 return FALSE; 334 390 } … … 340 396 } 341 397 342 return TRUE; 343 } 398 FREE (varName); 399 return TRUE; 400 }
Note:
See TracChangeset
for help on using the changeset viewer.
