Author: sayer
Date: 2009-03-25 20:47:42 +0100 (Wed, 25 Mar 2009)
New Revision: 1336

Modified:
   trunk/apps/dsm/mods/mod_sys/ModSys.cpp
   trunk/apps/dsm/mods/mod_sys/ModSys.h
   trunk/apps/dsm/mods/mod_sys/Readme.mod_sys.txt
Log:
+ function to rename a file
- getNewId (to utils)

This work was kindly sponsored by Teltech Systems Inc.



Modified: trunk/apps/dsm/mods/mod_sys/ModSys.cpp
===================================================================
--- trunk/apps/dsm/mods/mod_sys/ModSys.cpp      2009-03-25 14:40:16 UTC (rev 
1335)
+++ trunk/apps/dsm/mods/mod_sys/ModSys.cpp      2009-03-25 19:47:42 UTC (rev 
1336)
@@ -61,7 +61,7 @@
 
   DEF_CMD("sys.mkdir", SCMkDirAction);
   DEF_CMD("sys.mkdirRecursive", SCMkDirRecursiveAction);
-  DEF_CMD("sys.getNewId", SCGetNewIdAction);
+  DEF_CMD("sys.rename", SCRenameAction);
 
   return NULL;
 }
@@ -163,9 +163,17 @@
   }
 } EXEC_ACTION_END;
 
-EXEC_ACTION_START(SCGetNewIdAction) {
-  string d = resolveVars(arg, sess, sc_sess, event_params);
-  sc_sess->var[d]=AmSession::getNewId();
-} EXEC_ACTION_END;
+CONST_ACTION_2P(SCRenameAction, ',', true);
+EXEC_ACTION_START(SCRenameAction) {
+  string src = resolveVars(par1, sess, sc_sess, event_params);
+  string dst = resolveVars(par2, sess, sc_sess, event_params);
 
+  if (!rename(src.c_str(), dst.c_str())) {
+    sc_sess->SET_ERRNO(DSM_ERRNO_OK);    
+  } else {
+    DBG("renaming '%s' to '%s' failed: '%s'\n", 
+       src.c_str(), dst.c_str(), strerror(errno));
+    sc_sess->SET_ERRNO(DSM_ERRNO_FILE);
+  }
 
+} EXEC_ACTION_END;

Modified: trunk/apps/dsm/mods/mod_sys/ModSys.h
===================================================================
--- trunk/apps/dsm/mods/mod_sys/ModSys.h        2009-03-25 14:40:16 UTC (rev 
1335)
+++ trunk/apps/dsm/mods/mod_sys/ModSys.h        2009-03-25 19:47:42 UTC (rev 
1336)
@@ -42,6 +42,6 @@
 DEF_SCCondition(FileExistsCondition);
 DEF_ACTION_1P(SCMkDirAction);
 DEF_ACTION_1P(SCMkDirRecursiveAction);
-DEF_ACTION_1P(SCGetNewIdAction);
+DEF_ACTION_2P(SCRenameAction);
 
 #endif

Modified: trunk/apps/dsm/mods/mod_sys/Readme.mod_sys.txt
===================================================================
--- trunk/apps/dsm/mods/mod_sys/Readme.mod_sys.txt      2009-03-25 14:40:16 UTC 
(rev 1335)
+++ trunk/apps/dsm/mods/mod_sys/Readme.mod_sys.txt      2009-03-25 19:47:42 UTC 
(rev 1336)
@@ -1,7 +1,6 @@
 Actions: 
  sys.mkdir(string dirname)
  sys.mkdirRecursive(string dirname)
- sys.getNewId(string varname)
 
 Conditions: 
  sys.file_exists(string fname)

_______________________________________________
Semsdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/semsdev

Reply via email to