Changeset 24931
- Timestamp:
- Jul 28, 2009, 1:32:48 PM (17 years ago)
- Location:
- trunk/Nebulous/nebclient/src
- Files:
-
- 2 edited
-
nebclient.c (modified) (1 diff)
-
nebclient.h (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Nebulous/nebclient/src/nebclient.c
r24923 r24931 883 883 } 884 884 885 int nebThereCanBeOnlyOne(nebServer *server, const char *key, const char *volume) 886 { 887 REQUIRE_SERVER; 888 889 if (!key) { 890 nebSetErr(server, "parameter 'key' may not be NULL"); 891 892 return -1; 893 } 894 895 if (nebPrune(server, key) < 0 ) { 896 } 897 898 nebObjectInstances *locations = NULL; 899 if (volume) { 900 locations = nebFindInstances(server, key, NULL); 901 } 902 903 if (locations && locations->n) { 904 nebObjectInstances *instances = nebFindInstances(server, key, NULL); 905 for (long i = 0; i < instances->n; i++) { 906 if (strcmp(locations->URI[0], instances->URI[i])) { 907 nebDeleteInstance(server, key, instances->URI[i]); 908 } 909 } 910 nebObjectInstancesFree(instances); 911 } 912 nebObjectInstancesFree(locations); 913 914 915 return 0; 916 } 917 885 918 886 919 char *nebErr(nebServer *server) -
trunk/Nebulous/nebclient/src/nebclient.h
r24923 r24931 296 296 nebObjectStat *nebStat( 297 297 nebServer *server, ///< nebServer object 298 const char *key /// storage object key (name)298 const char *key ///< storage object key (name) 299 299 ); 300 300 … … 309 309 int nebChmod( 310 310 nebServer *server, ///< nebServer object 311 const char *key, /// storage object key (name)312 mode_t mode /// chmod(2) compatible mode (mode_t)311 const char *key, ///< storage object key (name) 312 mode_t mode ///< chmod(2) compatible mode (mode_t) 313 313 ); 314 314 … … 320 320 int nebPrune( 321 321 nebServer *server, ///< nebServer object 322 const char *key /// storage object key (name) 322 const char *key ///< storage object key (name) 323 ); 324 325 /** Removes all but one instances of an object 326 * 327 * @return the number of available instances removed 328 */ 329 330 int nebThereCanBeOnlyOne( 331 nebServer *server, ///< nebServer object 332 const char *key, ///< storage object key (name) 333 const char *volume ///< leave remain instance on this volume 323 334 ); 324 335
Note:
See TracChangeset
for help on using the changeset viewer.
