Index: /trunk/Nebulous/nebclient/configure.ac
===================================================================
--- /trunk/Nebulous/nebclient/configure.ac	(revision 20109)
+++ /trunk/Nebulous/nebclient/configure.ac	(revision 20110)
@@ -1,9 +1,9 @@
 dnl Copyright (C) 2005  Joshua Hoblitt
 dnl
-dnl $Id: configure.ac,v 1.19 2008-09-15 21:26:28 jhoblitt Exp $
+dnl $Id: configure.ac,v 1.20 2008-10-13 22:11:09 jhoblitt Exp $
 
 AC_PREREQ(2.61)
 
-AC_INIT([nebclient], [0.06], [jhoblitt@cpan.org])
+AC_INIT([nebclient], [0.07], [jhoblitt@cpan.org])
 AC_CONFIG_SRCDIR([nebulous.wsdl])
 
Index: /trunk/Nebulous/nebclient/nebulous.wsdl
===================================================================
--- /trunk/Nebulous/nebclient/nebulous.wsdl	(revision 20109)
+++ /trunk/Nebulous/nebclient/nebulous.wsdl	(revision 20110)
@@ -35,8 +35,16 @@
 
     <message name="rename_objectRequest">
-        <part name="key" type="xsd:string" />
-        <part name="newkey" type="xsd:string" />
+        <part name="key1" type="xsd:string" />
+        <part name="key2" type="xsd:string" />
     </message>
     <message name="rename_objectResponse">
+        <part name="result" type="xsd:int" />
+    </message>
+
+    <message name="swap_objectsRequest">
+        <part name="key1" type="xsd:string" />
+        <part name="key2" type="xsd:string" />
+    </message>
+    <message name="swap_objectsResponse">
         <part name="result" type="xsd:string" />
     </message>
@@ -114,4 +122,11 @@
             -->
         </operation>
+        <operation name="swap_objects">
+            <input  message="tns:swap_objectsRequest" />
+            <output message="tns:swap_objectsResponse" />
+            <!--
+                <fault name="" message="" />
+            -->
+        </operation>
         <operation name="replicate_object">
             <input  message="tns:replicate_objectRequest" />
@@ -180,16 +195,16 @@
         </operation>
         <operation name="rename_object">
-            <soap:operation soapAction="urn:Nebulous/Server/SOAP#create_object" />
-            <input>
-                <soap:body use="encoded" namespace="urn:Nebulous/Server/SOAP"
-                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
-            </input>
-            <output>
-                <soap:body use="encoded" namespace="urn:Nebulous/Server/SOAP"
-                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
-            </output>
-        </operation>
-        <operation name="rename_object">
             <soap:operation soapAction="urn:Nebulous/Server/SOAP#rename_object" />
+            <input>
+                <soap:body use="encoded" namespace="urn:Nebulous/Server/SOAP"
+                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
+            </input>
+            <output>
+                <soap:body use="encoded" namespace="urn:Nebulous/Server/SOAP"
+                    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
+            </output>
+        </operation>
+        <operation name="swap_objects">
+            <soap:operation soapAction="urn:Nebulous/Server/SOAP#swap_objects" />
             <input>
                 <soap:body use="encoded" namespace="urn:Nebulous/Server/SOAP"
Index: /trunk/Nebulous/nebclient/src/nebclient.c
===================================================================
--- /trunk/Nebulous/nebclient/src/nebclient.c	(revision 20109)
+++ /trunk/Nebulous/nebclient/src/nebclient.c	(revision 20110)
@@ -4,5 +4,5 @@
  * Copyright (C) 2005  Joshua Hoblitt
  *
- * $Id: nebclient.c,v 1.50 2008-09-15 21:23:36 jhoblitt Exp $
+ * $Id: nebclient.c,v 1.51 2008-10-13 22:11:09 jhoblitt Exp $
  */
 
@@ -592,4 +592,30 @@
 }
 
+bool nebSwap(nebServer *server, const char *key1, const char *key2)
+{
+    struct ns1__create_USCOREobjectResponse response;
+
+    REQUIRE_SERVER;
+
+    if (!key1) {
+        nebSetErr(server, "parameter 'key' may not be NULL");
+
+        return false;
+    }
+
+    if (!key2) {
+        nebSetErr(server, "parameter 'newKey' may not be NULL");
+
+        return false;
+    }
+
+    if (soap_call_ns1__swap_USCOREobjects(server->soap, server->endpoint,
+            NULL, (char *)key1, (char *)key2, (char **)&response) != SOAP_OK) {
+        return false;
+    }
+
+    return true;
+}
+
 bool nebDeleteInstance(nebServer *server, const char *URI)
 {
Index: /trunk/Nebulous/nebclient/src/nebclient.h
===================================================================
--- /trunk/Nebulous/nebclient/src/nebclient.h	(revision 20109)
+++ /trunk/Nebulous/nebclient/src/nebclient.h	(revision 20110)
@@ -4,5 +4,5 @@
  * Copyright (C) 2005  Joshua Hoblitt
  *
- * $Id: nebclient.h,v 1.32 2007-05-03 21:26:55 jhoblitt Exp $
+ * $Id: nebclient.h,v 1.33 2008-10-13 22:11:09 jhoblitt Exp $
  */
 
@@ -215,4 +215,14 @@
 );
 
+/** Atomically swap two storage objects
+ *
+ * @return true on success
+ */
+bool nebSwap(
+    nebServer *server,                  ///< nebServer object
+    const char *key1,                   ///< storage object key (name)
+    const char *key2                    ///< storage object key (name)
+);
+
 /** Remove a storage object instance
  *
Index: /trunk/Nebulous/nebclient/src/nebulous.h
===================================================================
--- /trunk/Nebulous/nebclient/src/nebulous.h	(revision 20109)
+++ /trunk/Nebulous/nebclient/src/nebulous.h	(revision 20110)
@@ -1,5 +1,5 @@
 /* src/nebulous.h
    Generated by wsdl2h 1.2.11 from nebulous.wsdl and typemap.dat
-   2008-09-13 01:14:23 GMT
+   2008-10-13 22:06:54 GMT
    Copyright (C) 2001-2008 Robert van Engelen, Genivia Inc. All Rights Reserved.
    This part of the software is released under one of the following licenses:
@@ -107,5 +107,5 @@
   - @ref ns1__create_USCOREobject
   - @ref ns1__rename_USCOREobject
-  - @ref ns1__rename_USCOREobject_
+  - @ref ns1__swap_USCOREobjects
   - @ref ns1__replicate_USCOREobject
   - @ref ns1__lock_USCOREobject
@@ -197,5 +197,5 @@
 
   - SOAP RPC encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
-  - SOAP action="urn:Nebulous/Server/SOAP#create_object"
+  - SOAP action="urn:Nebulous/Server/SOAP#rename_object"
 
 C stub function (defined in soapClient.c[pp] generated by soapcpp2):
@@ -206,8 +206,8 @@
     NULL, // char *action = NULL selects default action for this operation
     // request parameters:
-    char*                               key,
-    char*                               newkey,
-    // response parameters:
-    char*                              *result
+    char*                               key1,
+    char*                               key2,
+    // response parameters:
+    int                                *result
   );
 @endcode
@@ -218,8 +218,8 @@
     struct soap *soap,
     // request parameters:
-    char*                               key,
-    char*                               newkey,
-    // response parameters:
-    char*                              *result
+    char*                               key1,
+    char*                               key2,
+    // response parameters:
+    int                                *result
   );
 @endcode
@@ -229,36 +229,36 @@
 //gsoap ns1  service method-style:	rename_USCOREobject rpc
 //gsoap ns1  service method-encoding:	rename_USCOREobject http://schemas.xmlsoap.org/soap/encoding/
-//gsoap ns1  service method-action:	rename_USCOREobject urn:Nebulous/Server/SOAP#create_object
+//gsoap ns1  service method-action:	rename_USCOREobject urn:Nebulous/Server/SOAP#rename_object
 int ns1__rename_USCOREobject(
-    char*                               key,	///< Request parameter
-    char*                               newkey,	///< Request parameter
-    char*                              *result	///< Response parameter
-);
-
-/******************************************************************************\
- *                                                                            *
- * ns1__rename_USCOREobject_                                                  *
- *                                                                            *
-\******************************************************************************/
-
-
-/// Operation "ns1__rename_USCOREobject_" of service binding "SOAP"
-
-/**
-
-Operation details:
-
-  - SOAP RPC encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
-  - SOAP action="urn:Nebulous/Server/SOAP#rename_object"
-
-C stub function (defined in soapClient.c[pp] generated by soapcpp2):
-@code
-  int soap_call_ns1__rename_USCOREobject_(
-    struct soap *soap,
-    NULL, // char *endpoint = NULL selects default endpoint for this operation
-    NULL, // char *action = NULL selects default action for this operation
-    // request parameters:
-    char*                               key,
-    char*                               newkey,
+    char*                               key1,	///< Request parameter
+    char*                               key2,	///< Request parameter
+    int                                *result	///< Response parameter
+);
+
+/******************************************************************************\
+ *                                                                            *
+ * ns1__swap_USCOREobjects                                                    *
+ *                                                                            *
+\******************************************************************************/
+
+
+/// Operation "ns1__swap_USCOREobjects" of service binding "SOAP"
+
+/**
+
+Operation details:
+
+  - SOAP RPC encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
+  - SOAP action="urn:Nebulous/Server/SOAP#swap_objects"
+
+C stub function (defined in soapClient.c[pp] generated by soapcpp2):
+@code
+  int soap_call_ns1__swap_USCOREobjects(
+    struct soap *soap,
+    NULL, // char *endpoint = NULL selects default endpoint for this operation
+    NULL, // char *action = NULL selects default action for this operation
+    // request parameters:
+    char*                               key1,
+    char*                               key2,
     // response parameters:
     char*                              *result
@@ -268,9 +268,9 @@
 C server function (called from the service dispatcher defined in soapServer.c[pp]):
 @code
-  int ns1__rename_USCOREobject_(
-    struct soap *soap,
-    // request parameters:
-    char*                               key,
-    char*                               newkey,
+  int ns1__swap_USCOREobjects(
+    struct soap *soap,
+    // request parameters:
+    char*                               key1,
+    char*                               key2,
     // response parameters:
     char*                              *result
@@ -280,10 +280,10 @@
 */
 
-//gsoap ns1  service method-style:	rename_USCOREobject_ rpc
-//gsoap ns1  service method-encoding:	rename_USCOREobject_ http://schemas.xmlsoap.org/soap/encoding/
-//gsoap ns1  service method-action:	rename_USCOREobject_ urn:Nebulous/Server/SOAP#rename_object
-int ns1__rename_USCOREobject_(
-    char*                               key,	///< Request parameter
-    char*                               newkey,	///< Request parameter
+//gsoap ns1  service method-style:	swap_USCOREobjects rpc
+//gsoap ns1  service method-encoding:	swap_USCOREobjects http://schemas.xmlsoap.org/soap/encoding/
+//gsoap ns1  service method-action:	swap_USCOREobjects urn:Nebulous/Server/SOAP#swap_objects
+int ns1__swap_USCOREobjects(
+    char*                               key1,	///< Request parameter
+    char*                               key2,	///< Request parameter
     char*                              *result	///< Response parameter
 );
Index: /trunk/Nebulous/nebclient/src/soapC.c
===================================================================
--- /trunk/Nebulous/nebclient/src/soapC.c	(revision 20109)
+++ /trunk/Nebulous/nebclient/src/soapC.c	(revision 20110)
@@ -12,5 +12,5 @@
 #endif
 
-SOAP_SOURCE_STAMP("@(#) soapC.c ver 2.7.11 2008-09-13 01:14:40 GMT")
+SOAP_SOURCE_STAMP("@(#) soapC.c ver 2.7.11 2008-10-13 22:06:55 GMT")
 
 
@@ -189,8 +189,8 @@
 	case SOAP_TYPE_ns1__replicate_USCOREobjectResponse:
 		return soap_in_ns1__replicate_USCOREobjectResponse(soap, NULL, NULL, "ns1:replicate_objectResponse");
-	case SOAP_TYPE_ns1__rename_USCOREobject_:
-		return soap_in_ns1__rename_USCOREobject_(soap, NULL, NULL, "ns1:rename_object");
-	case SOAP_TYPE_ns1__rename_USCOREobject_Response:
-		return soap_in_ns1__rename_USCOREobject_Response(soap, NULL, NULL, "ns1:rename_object-Response");
+	case SOAP_TYPE_ns1__swap_USCOREobjects:
+		return soap_in_ns1__swap_USCOREobjects(soap, NULL, NULL, "ns1:swap_objects");
+	case SOAP_TYPE_ns1__swap_USCOREobjectsResponse:
+		return soap_in_ns1__swap_USCOREobjectsResponse(soap, NULL, NULL, "ns1:swap_objectsResponse");
 	case SOAP_TYPE_ns1__rename_USCOREobject:
 		return soap_in_ns1__rename_USCOREobject(soap, NULL, NULL, "ns1:rename_object");
@@ -288,11 +288,11 @@
 			return soap_in_ns1__replicate_USCOREobjectResponse(soap, NULL, NULL, NULL);
 		}
-		if (!soap_match_tag(soap, t, "ns1:rename_object"))
-		{	*type = SOAP_TYPE_ns1__rename_USCOREobject_;
-			return soap_in_ns1__rename_USCOREobject_(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:rename_object-Response"))
-		{	*type = SOAP_TYPE_ns1__rename_USCOREobject_Response;
-			return soap_in_ns1__rename_USCOREobject_Response(soap, NULL, NULL, NULL);
+		if (!soap_match_tag(soap, t, "ns1:swap_objects"))
+		{	*type = SOAP_TYPE_ns1__swap_USCOREobjects;
+			return soap_in_ns1__swap_USCOREobjects(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:swap_objectsResponse"))
+		{	*type = SOAP_TYPE_ns1__swap_USCOREobjectsResponse;
+			return soap_in_ns1__swap_USCOREobjectsResponse(soap, NULL, NULL, NULL);
 		}
 		if (!soap_match_tag(soap, t, "ns1:rename_object"))
@@ -418,8 +418,8 @@
 	case SOAP_TYPE_ns1__replicate_USCOREobjectResponse:
 		return soap_out_ns1__replicate_USCOREobjectResponse(soap, tag, id, (const struct ns1__replicate_USCOREobjectResponse *)ptr, "ns1:replicate_objectResponse");
-	case SOAP_TYPE_ns1__rename_USCOREobject_:
-		return soap_out_ns1__rename_USCOREobject_(soap, tag, id, (const struct ns1__rename_USCOREobject_ *)ptr, "ns1:rename_object");
-	case SOAP_TYPE_ns1__rename_USCOREobject_Response:
-		return soap_out_ns1__rename_USCOREobject_Response(soap, tag, id, (const struct ns1__rename_USCOREobject_Response *)ptr, "ns1:rename_object-Response");
+	case SOAP_TYPE_ns1__swap_USCOREobjects:
+		return soap_out_ns1__swap_USCOREobjects(soap, tag, id, (const struct ns1__swap_USCOREobjects *)ptr, "ns1:swap_objects");
+	case SOAP_TYPE_ns1__swap_USCOREobjectsResponse:
+		return soap_out_ns1__swap_USCOREobjectsResponse(soap, tag, id, (const struct ns1__swap_USCOREobjectsResponse *)ptr, "ns1:swap_objectsResponse");
 	case SOAP_TYPE_ns1__rename_USCOREobject:
 		return soap_out_ns1__rename_USCOREobject(soap, tag, id, (const struct ns1__rename_USCOREobject *)ptr, "ns1:rename_object");
@@ -501,9 +501,9 @@
 		soap_serialize_ns1__replicate_USCOREobjectResponse(soap, (const struct ns1__replicate_USCOREobjectResponse *)ptr);
 		break;
-	case SOAP_TYPE_ns1__rename_USCOREobject_:
-		soap_serialize_ns1__rename_USCOREobject_(soap, (const struct ns1__rename_USCOREobject_ *)ptr);
+	case SOAP_TYPE_ns1__swap_USCOREobjects:
+		soap_serialize_ns1__swap_USCOREobjects(soap, (const struct ns1__swap_USCOREobjects *)ptr);
 		break;
-	case SOAP_TYPE_ns1__rename_USCOREobject_Response:
-		soap_serialize_ns1__rename_USCOREobject_Response(soap, (const struct ns1__rename_USCOREobject_Response *)ptr);
+	case SOAP_TYPE_ns1__swap_USCOREobjectsResponse:
+		soap_serialize_ns1__swap_USCOREobjectsResponse(soap, (const struct ns1__swap_USCOREobjectsResponse *)ptr);
 		break;
 	case SOAP_TYPE_ns1__rename_USCOREobject:
@@ -2160,67 +2160,67 @@
 }
 
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__rename_USCOREobject_(struct soap *soap, struct ns1__rename_USCOREobject_ *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_default_string(soap, &a->key);
-	soap_default_string(soap, &a->newkey);
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns1__rename_USCOREobject_(struct soap *soap, const struct ns1__rename_USCOREobject_ *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_string(soap, &a->key);
-	soap_serialize_string(soap, &a->newkey);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__rename_USCOREobject_(struct soap *soap, const struct ns1__rename_USCOREobject_ *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__rename_USCOREobject_);
-	if (soap_out_ns1__rename_USCOREobject_(soap, tag, id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__rename_USCOREobject_(struct soap *soap, const char *tag, int id, const struct ns1__rename_USCOREobject_ *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__rename_USCOREobject_), type))
-		return soap->error;
-	if (soap_out_string(soap, "key", -1, &a->key, ""))
-		return soap->error;
-	if (soap_out_string(soap, "newkey", -1, &a->newkey, ""))
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__swap_USCOREobjects(struct soap *soap, struct ns1__swap_USCOREobjects *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_default_string(soap, &a->key1);
+	soap_default_string(soap, &a->key2);
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns1__swap_USCOREobjects(struct soap *soap, const struct ns1__swap_USCOREobjects *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_string(soap, &a->key1);
+	soap_serialize_string(soap, &a->key2);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__swap_USCOREobjects(struct soap *soap, const struct ns1__swap_USCOREobjects *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__swap_USCOREobjects);
+	if (soap_out_ns1__swap_USCOREobjects(soap, tag, id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__swap_USCOREobjects(struct soap *soap, const char *tag, int id, const struct ns1__swap_USCOREobjects *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__swap_USCOREobjects), type))
+		return soap->error;
+	if (soap_out_string(soap, "key1", -1, &a->key1, ""))
+		return soap->error;
+	if (soap_out_string(soap, "key2", -1, &a->key2, ""))
 		return soap->error;
 	return soap_element_end_out(soap, tag);
 }
 
-SOAP_FMAC3 struct ns1__rename_USCOREobject_ * SOAP_FMAC4 soap_get_ns1__rename_USCOREobject_(struct soap *soap, struct ns1__rename_USCOREobject_ *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__rename_USCOREobject_(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 struct ns1__rename_USCOREobject_ * SOAP_FMAC4 soap_in_ns1__rename_USCOREobject_(struct soap *soap, const char *tag, struct ns1__rename_USCOREobject_ *a, const char *type)
-{
-	size_t soap_flag_key = 1;
-	size_t soap_flag_newkey = 1;
+SOAP_FMAC3 struct ns1__swap_USCOREobjects * SOAP_FMAC4 soap_get_ns1__swap_USCOREobjects(struct soap *soap, struct ns1__swap_USCOREobjects *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__swap_USCOREobjects(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 struct ns1__swap_USCOREobjects * SOAP_FMAC4 soap_in_ns1__swap_USCOREobjects(struct soap *soap, const char *tag, struct ns1__swap_USCOREobjects *a, const char *type)
+{
+	size_t soap_flag_key1 = 1;
+	size_t soap_flag_key2 = 1;
 	if (soap_element_begin_in(soap, tag, 0, type))
 		return NULL;
-	a = (struct ns1__rename_USCOREobject_ *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__rename_USCOREobject_, sizeof(struct ns1__rename_USCOREobject_), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default_ns1__rename_USCOREobject_(soap, a);
+	a = (struct ns1__swap_USCOREobjects *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__swap_USCOREobjects, sizeof(struct ns1__swap_USCOREobjects), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default_ns1__swap_USCOREobjects(soap, a);
 	if (soap->body && !*soap->href)
 	{
 		for (;;)
 		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_key && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_string(soap, "key", &a->key, "xsd:string"))
-				{	soap_flag_key--;
-					continue;
-				}
-			if (soap_flag_newkey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_string(soap, "newkey", &a->newkey, "xsd:string"))
-				{	soap_flag_newkey--;
+			if (soap_flag_key1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_string(soap, "key1", &a->key1, "xsd:string"))
+				{	soap_flag_key1--;
+					continue;
+				}
+			if (soap_flag_key2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_string(soap, "key2", &a->key2, "xsd:string"))
+				{	soap_flag_key2--;
 					continue;
 				}
@@ -2236,12 +2236,12 @@
 	}
 	else
-	{	a = (struct ns1__rename_USCOREobject_ *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__rename_USCOREobject_, 0, sizeof(struct ns1__rename_USCOREobject_), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__rename_USCOREobject_Response(struct soap *soap, struct ns1__rename_USCOREobject_Response *a)
+	{	a = (struct ns1__swap_USCOREobjects *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__swap_USCOREobjects, 0, sizeof(struct ns1__swap_USCOREobjects), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__swap_USCOREobjectsResponse(struct soap *soap, struct ns1__swap_USCOREobjectsResponse *a)
 {
 	(void)soap; (void)a; /* appease -Wall -Werror */
@@ -2249,5 +2249,5 @@
 }
 
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns1__rename_USCOREobject_Response(struct soap *soap, const struct ns1__rename_USCOREobject_Response *a)
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns1__swap_USCOREobjectsResponse(struct soap *soap, const struct ns1__swap_USCOREobjectsResponse *a)
 {
 	(void)soap; (void)a; /* appease -Wall -Werror */
@@ -2255,15 +2255,15 @@
 }
 
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__rename_USCOREobject_Response(struct soap *soap, const struct ns1__rename_USCOREobject_Response *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__rename_USCOREobject_Response);
-	if (soap_out_ns1__rename_USCOREobject_Response(soap, tag, id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__rename_USCOREobject_Response(struct soap *soap, const char *tag, int id, const struct ns1__rename_USCOREobject_Response *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__rename_USCOREobject_Response), type))
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__swap_USCOREobjectsResponse(struct soap *soap, const struct ns1__swap_USCOREobjectsResponse *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__swap_USCOREobjectsResponse);
+	if (soap_out_ns1__swap_USCOREobjectsResponse(soap, tag, id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__swap_USCOREobjectsResponse(struct soap *soap, const char *tag, int id, const struct ns1__swap_USCOREobjectsResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__swap_USCOREobjectsResponse), type))
 		return soap->error;
 	if (soap_out_PointerTostring(soap, "result", -1, &a->result, ""))
@@ -2272,21 +2272,21 @@
 }
 
-SOAP_FMAC3 struct ns1__rename_USCOREobject_Response * SOAP_FMAC4 soap_get_ns1__rename_USCOREobject_Response(struct soap *soap, struct ns1__rename_USCOREobject_Response *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__rename_USCOREobject_Response(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 struct ns1__rename_USCOREobject_Response * SOAP_FMAC4 soap_in_ns1__rename_USCOREobject_Response(struct soap *soap, const char *tag, struct ns1__rename_USCOREobject_Response *a, const char *type)
+SOAP_FMAC3 struct ns1__swap_USCOREobjectsResponse * SOAP_FMAC4 soap_get_ns1__swap_USCOREobjectsResponse(struct soap *soap, struct ns1__swap_USCOREobjectsResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__swap_USCOREobjectsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 struct ns1__swap_USCOREobjectsResponse * SOAP_FMAC4 soap_in_ns1__swap_USCOREobjectsResponse(struct soap *soap, const char *tag, struct ns1__swap_USCOREobjectsResponse *a, const char *type)
 {
 	size_t soap_flag_result = 1;
 	if (soap_element_begin_in(soap, tag, 0, type))
 		return NULL;
-	a = (struct ns1__rename_USCOREobject_Response *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__rename_USCOREobject_Response, sizeof(struct ns1__rename_USCOREobject_Response), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default_ns1__rename_USCOREobject_Response(soap, a);
+	a = (struct ns1__swap_USCOREobjectsResponse *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__swap_USCOREobjectsResponse, sizeof(struct ns1__swap_USCOREobjectsResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default_ns1__swap_USCOREobjectsResponse(soap, a);
 	if (soap->body && !*soap->href)
 	{
@@ -2309,5 +2309,5 @@
 	}
 	else
-	{	a = (struct ns1__rename_USCOREobject_Response *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__rename_USCOREobject_Response, 0, sizeof(struct ns1__rename_USCOREobject_Response), 0, NULL);
+	{	a = (struct ns1__swap_USCOREobjectsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__swap_USCOREobjectsResponse, 0, sizeof(struct ns1__swap_USCOREobjectsResponse), 0, NULL);
 		if (soap->body && soap_element_end_in(soap, tag))
 			return NULL;
@@ -2319,6 +2319,6 @@
 {
 	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_default_string(soap, &a->key);
-	soap_default_string(soap, &a->newkey);
+	soap_default_string(soap, &a->key1);
+	soap_default_string(soap, &a->key2);
 }
 
@@ -2326,6 +2326,6 @@
 {
 	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_string(soap, &a->key);
-	soap_serialize_string(soap, &a->newkey);
+	soap_serialize_string(soap, &a->key1);
+	soap_serialize_string(soap, &a->key2);
 }
 
@@ -2342,7 +2342,7 @@
 	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__rename_USCOREobject), type))
 		return soap->error;
-	if (soap_out_string(soap, "key", -1, &a->key, ""))
-		return soap->error;
-	if (soap_out_string(soap, "newkey", -1, &a->newkey, ""))
+	if (soap_out_string(soap, "key1", -1, &a->key1, ""))
+		return soap->error;
+	if (soap_out_string(soap, "key2", -1, &a->key2, ""))
 		return soap->error;
 	return soap_element_end_out(soap, tag);
@@ -2359,6 +2359,6 @@
 SOAP_FMAC3 struct ns1__rename_USCOREobject * SOAP_FMAC4 soap_in_ns1__rename_USCOREobject(struct soap *soap, const char *tag, struct ns1__rename_USCOREobject *a, const char *type)
 {
-	size_t soap_flag_key = 1;
-	size_t soap_flag_newkey = 1;
+	size_t soap_flag_key1 = 1;
+	size_t soap_flag_key2 = 1;
 	if (soap_element_begin_in(soap, tag, 0, type))
 		return NULL;
@@ -2371,12 +2371,12 @@
 		for (;;)
 		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_key && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_string(soap, "key", &a->key, "xsd:string"))
-				{	soap_flag_key--;
-					continue;
-				}
-			if (soap_flag_newkey && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_string(soap, "newkey", &a->newkey, "xsd:string"))
-				{	soap_flag_newkey--;
+			if (soap_flag_key1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_string(soap, "key1", &a->key1, "xsd:string"))
+				{	soap_flag_key1--;
+					continue;
+				}
+			if (soap_flag_key2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_string(soap, "key2", &a->key2, "xsd:string"))
+				{	soap_flag_key2--;
 					continue;
 				}
@@ -2408,5 +2408,5 @@
 {
 	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTostring(soap, &a->result);
+	soap_serialize_PointerToint(soap, &a->result);
 }
 
@@ -2423,5 +2423,5 @@
 	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__rename_USCOREobjectResponse), type))
 		return soap->error;
-	if (soap_out_PointerTostring(soap, "result", -1, &a->result, ""))
+	if (soap_out_PointerToint(soap, "result", -1, &a->result, ""))
 		return soap->error;
 	return soap_element_end_out(soap, tag);
@@ -2450,5 +2450,5 @@
 		{	soap->error = SOAP_TAG_MISMATCH;
 			if (soap_flag_result && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTostring(soap, "result", &a->result, "xsd:string"))
+				if (soap_in_PointerToint(soap, "result", &a->result, "xsd:int"))
 				{	soap_flag_result--;
 					continue;
Index: /trunk/Nebulous/nebclient/src/soapClient.c
===================================================================
--- /trunk/Nebulous/nebclient/src/soapClient.c	(revision 20109)
+++ /trunk/Nebulous/nebclient/src/soapClient.c	(revision 20110)
@@ -10,5 +10,5 @@
 #endif
 
-SOAP_SOURCE_STAMP("@(#) soapClient.c ver 2.7.11 2008-09-13 01:14:39 GMT")
+SOAP_SOURCE_STAMP("@(#) soapClient.c ver 2.7.11 2008-10-13 22:06:55 GMT")
 
 
@@ -71,5 +71,5 @@
 }
 
-SOAP_FMAC5 int SOAP_FMAC6 soap_call_ns1__rename_USCOREobject(struct soap *soap, const char *soap_endpoint, const char *soap_action, char *key, char *newkey, char **result)
+SOAP_FMAC5 int SOAP_FMAC6 soap_call_ns1__rename_USCOREobject(struct soap *soap, const char *soap_endpoint, const char *soap_action, char *key1, char *key2, int *result)
 {	struct ns1__rename_USCOREobject soap_tmp_ns1__rename_USCOREobject;
 	struct ns1__rename_USCOREobjectResponse *soap_tmp_ns1__rename_USCOREobjectResponse;
@@ -77,8 +77,8 @@
 		soap_endpoint = "http://localhost:80/nebulous";
 	if (!soap_action)
-		soap_action = "urn:Nebulous/Server/SOAP#create_object";
-	soap->encodingStyle = "http://schemas.xmlsoap.org/soap/encoding/";
-	soap_tmp_ns1__rename_USCOREobject.key = key;
-	soap_tmp_ns1__rename_USCOREobject.newkey = newkey;
+		soap_action = "urn:Nebulous/Server/SOAP#rename_object";
+	soap->encodingStyle = "http://schemas.xmlsoap.org/soap/encoding/";
+	soap_tmp_ns1__rename_USCOREobject.key1 = key1;
+	soap_tmp_ns1__rename_USCOREobject.key2 = key2;
 	soap_begin(soap);
 	soap_serializeheader(soap);
@@ -108,5 +108,5 @@
 	if (!result)
 		return soap_closesock(soap);
-	*result = NULL;
+	soap_default_int(soap, result);
 	if (soap_begin_recv(soap)
 	 || soap_envelope_begin_in(soap)
@@ -129,35 +129,35 @@
 }
 
-SOAP_FMAC5 int SOAP_FMAC6 soap_call_ns1__rename_USCOREobject_(struct soap *soap, const char *soap_endpoint, const char *soap_action, char *key, char *newkey, char **result)
-{	struct ns1__rename_USCOREobject_ soap_tmp_ns1__rename_USCOREobject_;
-	struct ns1__rename_USCOREobject_Response *soap_tmp_ns1__rename_USCOREobject_Response;
-	if (!soap_endpoint)
-		soap_endpoint = "http://localhost:80/nebulous";
-	if (!soap_action)
-		soap_action = "urn:Nebulous/Server/SOAP#create_object";
-	soap->encodingStyle = "http://schemas.xmlsoap.org/soap/encoding/";
-	soap_tmp_ns1__rename_USCOREobject_.key = key;
-	soap_tmp_ns1__rename_USCOREobject_.newkey = newkey;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize_ns1__rename_USCOREobject_(soap, &soap_tmp_ns1__rename_USCOREobject_);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put_ns1__rename_USCOREobject_(soap, &soap_tmp_ns1__rename_USCOREobject_, "ns1:rename_object", "")
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put_ns1__rename_USCOREobject_(soap, &soap_tmp_ns1__rename_USCOREobject_, "ns1:rename_object", "")
+SOAP_FMAC5 int SOAP_FMAC6 soap_call_ns1__swap_USCOREobjects(struct soap *soap, const char *soap_endpoint, const char *soap_action, char *key1, char *key2, char **result)
+{	struct ns1__swap_USCOREobjects soap_tmp_ns1__swap_USCOREobjects;
+	struct ns1__swap_USCOREobjectsResponse *soap_tmp_ns1__swap_USCOREobjectsResponse;
+	if (!soap_endpoint)
+		soap_endpoint = "http://localhost:80/nebulous";
+	if (!soap_action)
+		soap_action = "urn:Nebulous/Server/SOAP#swap_objects";
+	soap->encodingStyle = "http://schemas.xmlsoap.org/soap/encoding/";
+	soap_tmp_ns1__swap_USCOREobjects.key1 = key1;
+	soap_tmp_ns1__swap_USCOREobjects.key2 = key2;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize_ns1__swap_USCOREobjects(soap, &soap_tmp_ns1__swap_USCOREobjects);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put_ns1__swap_USCOREobjects(soap, &soap_tmp_ns1__swap_USCOREobjects, "ns1:swap_objects", "")
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put_ns1__swap_USCOREobjects(soap, &soap_tmp_ns1__swap_USCOREobjects, "ns1:swap_objects", "")
 	 || soap_body_end_out(soap)
 	 || soap_envelope_end_out(soap)
@@ -172,16 +172,16 @@
 	 || soap_body_begin_in(soap))
 		return soap_closesock(soap);
-	soap_tmp_ns1__rename_USCOREobject_Response = soap_get_ns1__rename_USCOREobject_Response(soap, NULL, "ns1:rename_object-Response", "");
-	if (soap->error)
-	{	if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2)
-			return soap_recv_fault(soap);
-		return soap_closesock(soap);
-	}
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (result && soap_tmp_ns1__rename_USCOREobject_Response->result)
-		*result = *soap_tmp_ns1__rename_USCOREobject_Response->result;
+	soap_tmp_ns1__swap_USCOREobjectsResponse = soap_get_ns1__swap_USCOREobjectsResponse(soap, NULL, "ns1:swap_objectsResponse", "");
+	if (soap->error)
+	{	if (soap->error == SOAP_TAG_MISMATCH && soap->level == 2)
+			return soap_recv_fault(soap);
+		return soap_closesock(soap);
+	}
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (result && soap_tmp_ns1__swap_USCOREobjectsResponse->result)
+		*result = *soap_tmp_ns1__swap_USCOREobjectsResponse->result;
 	return soap_closesock(soap);
 }
Index: /trunk/Nebulous/nebclient/src/soapH.h
===================================================================
--- /trunk/Nebulous/nebclient/src/soapH.h	(revision 20109)
+++ /trunk/Nebulous/nebclient/src/soapH.h	(revision 20110)
@@ -230,5 +230,5 @@
 
 #ifndef SOAP_TYPE_ns1__replicate_USCOREobject
-#define SOAP_TYPE_ns1__replicate_USCOREobject (20)
+#define SOAP_TYPE_ns1__replicate_USCOREobject (21)
 #endif
 SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__replicate_USCOREobject(struct soap*, struct ns1__replicate_USCOREobject *);
@@ -240,5 +240,5 @@
 
 #ifndef SOAP_TYPE_ns1__replicate_USCOREobjectResponse
-#define SOAP_TYPE_ns1__replicate_USCOREobjectResponse (19)
+#define SOAP_TYPE_ns1__replicate_USCOREobjectResponse (20)
 #endif
 SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__replicate_USCOREobjectResponse(struct soap*, struct ns1__replicate_USCOREobjectResponse *);
@@ -249,26 +249,26 @@
 SOAP_FMAC3 struct ns1__replicate_USCOREobjectResponse * SOAP_FMAC4 soap_in_ns1__replicate_USCOREobjectResponse(struct soap*, const char*, struct ns1__replicate_USCOREobjectResponse *, const char*);
 
-#ifndef SOAP_TYPE_ns1__rename_USCOREobject_
-#define SOAP_TYPE_ns1__rename_USCOREobject_ (17)
-#endif
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__rename_USCOREobject_(struct soap*, struct ns1__rename_USCOREobject_ *);
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns1__rename_USCOREobject_(struct soap*, const struct ns1__rename_USCOREobject_ *);
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__rename_USCOREobject_(struct soap*, const struct ns1__rename_USCOREobject_ *, const char*, const char*);
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__rename_USCOREobject_(struct soap*, const char*, int, const struct ns1__rename_USCOREobject_ *, const char*);
-SOAP_FMAC3 struct ns1__rename_USCOREobject_ * SOAP_FMAC4 soap_get_ns1__rename_USCOREobject_(struct soap*, struct ns1__rename_USCOREobject_ *, const char*, const char*);
-SOAP_FMAC3 struct ns1__rename_USCOREobject_ * SOAP_FMAC4 soap_in_ns1__rename_USCOREobject_(struct soap*, const char*, struct ns1__rename_USCOREobject_ *, const char*);
-
-#ifndef SOAP_TYPE_ns1__rename_USCOREobject_Response
-#define SOAP_TYPE_ns1__rename_USCOREobject_Response (16)
-#endif
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__rename_USCOREobject_Response(struct soap*, struct ns1__rename_USCOREobject_Response *);
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns1__rename_USCOREobject_Response(struct soap*, const struct ns1__rename_USCOREobject_Response *);
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__rename_USCOREobject_Response(struct soap*, const struct ns1__rename_USCOREobject_Response *, const char*, const char*);
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__rename_USCOREobject_Response(struct soap*, const char*, int, const struct ns1__rename_USCOREobject_Response *, const char*);
-SOAP_FMAC3 struct ns1__rename_USCOREobject_Response * SOAP_FMAC4 soap_get_ns1__rename_USCOREobject_Response(struct soap*, struct ns1__rename_USCOREobject_Response *, const char*, const char*);
-SOAP_FMAC3 struct ns1__rename_USCOREobject_Response * SOAP_FMAC4 soap_in_ns1__rename_USCOREobject_Response(struct soap*, const char*, struct ns1__rename_USCOREobject_Response *, const char*);
+#ifndef SOAP_TYPE_ns1__swap_USCOREobjects
+#define SOAP_TYPE_ns1__swap_USCOREobjects (18)
+#endif
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__swap_USCOREobjects(struct soap*, struct ns1__swap_USCOREobjects *);
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns1__swap_USCOREobjects(struct soap*, const struct ns1__swap_USCOREobjects *);
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__swap_USCOREobjects(struct soap*, const struct ns1__swap_USCOREobjects *, const char*, const char*);
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__swap_USCOREobjects(struct soap*, const char*, int, const struct ns1__swap_USCOREobjects *, const char*);
+SOAP_FMAC3 struct ns1__swap_USCOREobjects * SOAP_FMAC4 soap_get_ns1__swap_USCOREobjects(struct soap*, struct ns1__swap_USCOREobjects *, const char*, const char*);
+SOAP_FMAC3 struct ns1__swap_USCOREobjects * SOAP_FMAC4 soap_in_ns1__swap_USCOREobjects(struct soap*, const char*, struct ns1__swap_USCOREobjects *, const char*);
+
+#ifndef SOAP_TYPE_ns1__swap_USCOREobjectsResponse
+#define SOAP_TYPE_ns1__swap_USCOREobjectsResponse (17)
+#endif
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__swap_USCOREobjectsResponse(struct soap*, struct ns1__swap_USCOREobjectsResponse *);
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_ns1__swap_USCOREobjectsResponse(struct soap*, const struct ns1__swap_USCOREobjectsResponse *);
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__swap_USCOREobjectsResponse(struct soap*, const struct ns1__swap_USCOREobjectsResponse *, const char*, const char*);
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__swap_USCOREobjectsResponse(struct soap*, const char*, int, const struct ns1__swap_USCOREobjectsResponse *, const char*);
+SOAP_FMAC3 struct ns1__swap_USCOREobjectsResponse * SOAP_FMAC4 soap_get_ns1__swap_USCOREobjectsResponse(struct soap*, struct ns1__swap_USCOREobjectsResponse *, const char*, const char*);
+SOAP_FMAC3 struct ns1__swap_USCOREobjectsResponse * SOAP_FMAC4 soap_in_ns1__swap_USCOREobjectsResponse(struct soap*, const char*, struct ns1__swap_USCOREobjectsResponse *, const char*);
 
 #ifndef SOAP_TYPE_ns1__rename_USCOREobject
-#define SOAP_TYPE_ns1__rename_USCOREobject (14)
+#define SOAP_TYPE_ns1__rename_USCOREobject (15)
 #endif
 SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__rename_USCOREobject(struct soap*, struct ns1__rename_USCOREobject *);
@@ -280,5 +280,5 @@
 
 #ifndef SOAP_TYPE_ns1__rename_USCOREobjectResponse
-#define SOAP_TYPE_ns1__rename_USCOREobjectResponse (13)
+#define SOAP_TYPE_ns1__rename_USCOREobjectResponse (14)
 #endif
 SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__rename_USCOREobjectResponse(struct soap*, struct ns1__rename_USCOREobjectResponse *);
@@ -395,5 +395,5 @@
 
 #ifndef SOAP_TYPE_PointerToint
-#define SOAP_TYPE_PointerToint (21)
+#define SOAP_TYPE_PointerToint (12)
 #endif
 SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToint(struct soap*, int *const*);
Index: /trunk/Nebulous/nebclient/src/soapServer.c
===================================================================
--- /trunk/Nebulous/nebclient/src/soapServer.c	(revision 20109)
+++ /trunk/Nebulous/nebclient/src/soapServer.c	(revision 20110)
@@ -10,5 +10,5 @@
 #endif
 
-SOAP_SOURCE_STAMP("@(#) soapServer.c ver 2.7.11 2008-09-13 01:14:39 GMT")
+SOAP_SOURCE_STAMP("@(#) soapServer.c ver 2.7.11 2008-10-13 22:06:55 GMT")
 
 
@@ -81,6 +81,6 @@
 	if (!soap_match_tag(soap, soap->tag, "ns1:rename_object"))
 		return soap_serve_ns1__rename_USCOREobject(soap);
-	if (!soap_match_tag(soap, soap->tag, "ns1:rename_object"))
-		return soap_serve_ns1__rename_USCOREobject_(soap);
+	if (!soap_match_tag(soap, soap->tag, "ns1:swap_objects"))
+		return soap_serve_ns1__swap_USCOREobjects(soap);
 	if (!soap_match_tag(soap, soap->tag, "ns1:replicate_object"))
 		return soap_serve_ns1__replicate_USCOREobject(soap);
@@ -148,82 +148,82 @@
 {	struct ns1__rename_USCOREobject soap_tmp_ns1__rename_USCOREobject;
 	struct ns1__rename_USCOREobjectResponse soap_tmp_ns1__rename_USCOREobjectResponse;
+	int soap_tmp_int;
+	soap_default_ns1__rename_USCOREobjectResponse(soap, &soap_tmp_ns1__rename_USCOREobjectResponse);
+	soap_default_int(soap, &soap_tmp_int);
+	soap_tmp_ns1__rename_USCOREobjectResponse.result = &soap_tmp_int;
+	soap_default_ns1__rename_USCOREobject(soap, &soap_tmp_ns1__rename_USCOREobject);
+	soap->encodingStyle = "http://schemas.xmlsoap.org/soap/encoding/";
+	if (!soap_get_ns1__rename_USCOREobject(soap, &soap_tmp_ns1__rename_USCOREobject, "ns1:rename_object", NULL))
+		return soap->error;
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap->error;
+	soap->error = ns1__rename_USCOREobject(soap, soap_tmp_ns1__rename_USCOREobject.key1, soap_tmp_ns1__rename_USCOREobject.key2, &soap_tmp_int);
+	if (soap->error)
+		return soap->error;
+	soap_serializeheader(soap);
+	soap_serialize_ns1__rename_USCOREobjectResponse(soap, &soap_tmp_ns1__rename_USCOREobjectResponse);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put_ns1__rename_USCOREobjectResponse(soap, &soap_tmp_ns1__rename_USCOREobjectResponse, "ns1:rename_objectResponse", "")
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	};
+	if (soap_end_count(soap)
+	 || soap_response(soap, SOAP_OK)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put_ns1__rename_USCOREobjectResponse(soap, &soap_tmp_ns1__rename_USCOREobjectResponse, "ns1:rename_objectResponse", "")
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap->error;
+	return soap_closesock(soap);
+}
+
+SOAP_FMAC5 int SOAP_FMAC6 soap_serve_ns1__swap_USCOREobjects(struct soap *soap)
+{	struct ns1__swap_USCOREobjects soap_tmp_ns1__swap_USCOREobjects;
+	struct ns1__swap_USCOREobjectsResponse soap_tmp_ns1__swap_USCOREobjectsResponse;
 	char * soap_tmp_string;
-	soap_default_ns1__rename_USCOREobjectResponse(soap, &soap_tmp_ns1__rename_USCOREobjectResponse);
+	soap_default_ns1__swap_USCOREobjectsResponse(soap, &soap_tmp_ns1__swap_USCOREobjectsResponse);
 	soap_tmp_string = NULL;
-	soap_tmp_ns1__rename_USCOREobjectResponse.result = &soap_tmp_string;
-	soap_default_ns1__rename_USCOREobject(soap, &soap_tmp_ns1__rename_USCOREobject);
-	soap->encodingStyle = "http://schemas.xmlsoap.org/soap/encoding/";
-	if (!soap_get_ns1__rename_USCOREobject(soap, &soap_tmp_ns1__rename_USCOREobject, "ns1:rename_object", NULL))
-		return soap->error;
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap->error;
-	soap->error = ns1__rename_USCOREobject(soap, soap_tmp_ns1__rename_USCOREobject.key, soap_tmp_ns1__rename_USCOREobject.newkey, &soap_tmp_string);
-	if (soap->error)
-		return soap->error;
-	soap_serializeheader(soap);
-	soap_serialize_ns1__rename_USCOREobjectResponse(soap, &soap_tmp_ns1__rename_USCOREobjectResponse);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put_ns1__rename_USCOREobjectResponse(soap, &soap_tmp_ns1__rename_USCOREobjectResponse, "ns1:rename_objectResponse", "")
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	};
-	if (soap_end_count(soap)
-	 || soap_response(soap, SOAP_OK)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put_ns1__rename_USCOREobjectResponse(soap, &soap_tmp_ns1__rename_USCOREobjectResponse, "ns1:rename_objectResponse", "")
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap->error;
-	return soap_closesock(soap);
-}
-
-SOAP_FMAC5 int SOAP_FMAC6 soap_serve_ns1__rename_USCOREobject_(struct soap *soap)
-{	struct ns1__rename_USCOREobject_ soap_tmp_ns1__rename_USCOREobject_;
-	struct ns1__rename_USCOREobject_Response soap_tmp_ns1__rename_USCOREobject_Response;
-	char * soap_tmp_string;
-	soap_default_ns1__rename_USCOREobject_Response(soap, &soap_tmp_ns1__rename_USCOREobject_Response);
-	soap_tmp_string = NULL;
-	soap_tmp_ns1__rename_USCOREobject_Response.result = &soap_tmp_string;
-	soap_default_ns1__rename_USCOREobject_(soap, &soap_tmp_ns1__rename_USCOREobject_);
-	soap->encodingStyle = "http://schemas.xmlsoap.org/soap/encoding/";
-	if (!soap_get_ns1__rename_USCOREobject_(soap, &soap_tmp_ns1__rename_USCOREobject_, "ns1:rename_object", NULL))
-		return soap->error;
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap->error;
-	soap->error = ns1__rename_USCOREobject_(soap, soap_tmp_ns1__rename_USCOREobject_.key, soap_tmp_ns1__rename_USCOREobject_.newkey, &soap_tmp_string);
-	if (soap->error)
-		return soap->error;
-	soap_serializeheader(soap);
-	soap_serialize_ns1__rename_USCOREobject_Response(soap, &soap_tmp_ns1__rename_USCOREobject_Response);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put_ns1__rename_USCOREobject_Response(soap, &soap_tmp_ns1__rename_USCOREobject_Response, "ns1:rename_object-Response", "")
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	};
-	if (soap_end_count(soap)
-	 || soap_response(soap, SOAP_OK)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put_ns1__rename_USCOREobject_Response(soap, &soap_tmp_ns1__rename_USCOREobject_Response, "ns1:rename_object-Response", "")
+	soap_tmp_ns1__swap_USCOREobjectsResponse.result = &soap_tmp_string;
+	soap_default_ns1__swap_USCOREobjects(soap, &soap_tmp_ns1__swap_USCOREobjects);
+	soap->encodingStyle = "http://schemas.xmlsoap.org/soap/encoding/";
+	if (!soap_get_ns1__swap_USCOREobjects(soap, &soap_tmp_ns1__swap_USCOREobjects, "ns1:swap_objects", NULL))
+		return soap->error;
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap->error;
+	soap->error = ns1__swap_USCOREobjects(soap, soap_tmp_ns1__swap_USCOREobjects.key1, soap_tmp_ns1__swap_USCOREobjects.key2, &soap_tmp_string);
+	if (soap->error)
+		return soap->error;
+	soap_serializeheader(soap);
+	soap_serialize_ns1__swap_USCOREobjectsResponse(soap, &soap_tmp_ns1__swap_USCOREobjectsResponse);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put_ns1__swap_USCOREobjectsResponse(soap, &soap_tmp_ns1__swap_USCOREobjectsResponse, "ns1:swap_objectsResponse", "")
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	};
+	if (soap_end_count(soap)
+	 || soap_response(soap, SOAP_OK)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put_ns1__swap_USCOREobjectsResponse(soap, &soap_tmp_ns1__swap_USCOREobjectsResponse, "ns1:swap_objectsResponse", "")
 	 || soap_body_end_out(soap)
 	 || soap_envelope_end_out(soap)
Index: /trunk/Nebulous/nebclient/src/soapStub.h
===================================================================
--- /trunk/Nebulous/nebclient/src/soapStub.h	(revision 20109)
+++ /trunk/Nebulous/nebclient/src/soapStub.h	(revision 20110)
@@ -61,26 +61,26 @@
 
 #ifndef SOAP_TYPE_ns1__rename_USCOREobjectResponse
-#define SOAP_TYPE_ns1__rename_USCOREobjectResponse (13)
+#define SOAP_TYPE_ns1__rename_USCOREobjectResponse (14)
 /* ns1:rename_objectResponse */
 struct ns1__rename_USCOREobjectResponse
 {
-	char **result;	/* SOAP 1.2 RPC return element (when namespace qualified) */	/* optional element of type xsd:string */
+	int *result;	/* SOAP 1.2 RPC return element (when namespace qualified) */	/* optional element of type xsd:int */
 };
 #endif
 
 #ifndef SOAP_TYPE_ns1__rename_USCOREobject
-#define SOAP_TYPE_ns1__rename_USCOREobject (14)
+#define SOAP_TYPE_ns1__rename_USCOREobject (15)
 /* ns1:rename_object */
 struct ns1__rename_USCOREobject
 {
-	char *key;	/* optional element of type xsd:string */
-	char *newkey;	/* optional element of type xsd:string */
-};
-#endif
-
-#ifndef SOAP_TYPE_ns1__rename_USCOREobject_Response
-#define SOAP_TYPE_ns1__rename_USCOREobject_Response (16)
-/* ns1:rename_object-Response */
-struct ns1__rename_USCOREobject_Response
+	char *key1;	/* optional element of type xsd:string */
+	char *key2;	/* optional element of type xsd:string */
+};
+#endif
+
+#ifndef SOAP_TYPE_ns1__swap_USCOREobjectsResponse
+#define SOAP_TYPE_ns1__swap_USCOREobjectsResponse (17)
+/* ns1:swap_objectsResponse */
+struct ns1__swap_USCOREobjectsResponse
 {
 	char **result;	/* SOAP 1.2 RPC return element (when namespace qualified) */	/* optional element of type xsd:string */
@@ -88,16 +88,16 @@
 #endif
 
-#ifndef SOAP_TYPE_ns1__rename_USCOREobject_
-#define SOAP_TYPE_ns1__rename_USCOREobject_ (17)
-/* ns1:rename_object */
-struct ns1__rename_USCOREobject_
-{
-	char *key;	/* optional element of type xsd:string */
-	char *newkey;	/* optional element of type xsd:string */
+#ifndef SOAP_TYPE_ns1__swap_USCOREobjects
+#define SOAP_TYPE_ns1__swap_USCOREobjects (18)
+/* ns1:swap_objects */
+struct ns1__swap_USCOREobjects
+{
+	char *key1;	/* optional element of type xsd:string */
+	char *key2;	/* optional element of type xsd:string */
 };
 #endif
 
 #ifndef SOAP_TYPE_ns1__replicate_USCOREobjectResponse
-#define SOAP_TYPE_ns1__replicate_USCOREobjectResponse (19)
+#define SOAP_TYPE_ns1__replicate_USCOREobjectResponse (20)
 /* ns1:replicate_objectResponse */
 struct ns1__replicate_USCOREobjectResponse
@@ -108,5 +108,5 @@
 
 #ifndef SOAP_TYPE_ns1__replicate_USCOREobject
-#define SOAP_TYPE_ns1__replicate_USCOREobject (20)
+#define SOAP_TYPE_ns1__replicate_USCOREobject (21)
 /* ns1:replicate_object */
 struct ns1__replicate_USCOREobject
@@ -333,7 +333,7 @@
 SOAP_FMAC5 int SOAP_FMAC6 ns1__create_USCOREobject(struct soap*, char *key, char *volume, char **result);
 
-SOAP_FMAC5 int SOAP_FMAC6 ns1__rename_USCOREobject(struct soap*, char *key, char *newkey, char **result);
-
-SOAP_FMAC5 int SOAP_FMAC6 ns1__rename_USCOREobject_(struct soap*, char *key, char *newkey, char **result);
+SOAP_FMAC5 int SOAP_FMAC6 ns1__rename_USCOREobject(struct soap*, char *key1, char *key2, int *result);
+
+SOAP_FMAC5 int SOAP_FMAC6 ns1__swap_USCOREobjects(struct soap*, char *key1, char *key2, char **result);
 
 SOAP_FMAC5 int SOAP_FMAC6 ns1__replicate_USCOREobject(struct soap*, char *key, char *volume, char **result);
@@ -360,7 +360,7 @@
 SOAP_FMAC5 int SOAP_FMAC6 soap_call_ns1__create_USCOREobject(struct soap *soap, const char *soap_endpoint, const char *soap_action, char *key, char *volume, char **result);
 
-SOAP_FMAC5 int SOAP_FMAC6 soap_call_ns1__rename_USCOREobject(struct soap *soap, const char *soap_endpoint, const char *soap_action, char *key, char *newkey, char **result);
-
-SOAP_FMAC5 int SOAP_FMAC6 soap_call_ns1__rename_USCOREobject_(struct soap *soap, const char *soap_endpoint, const char *soap_action, char *key, char *newkey, char **result);
+SOAP_FMAC5 int SOAP_FMAC6 soap_call_ns1__rename_USCOREobject(struct soap *soap, const char *soap_endpoint, const char *soap_action, char *key1, char *key2, int *result);
+
+SOAP_FMAC5 int SOAP_FMAC6 soap_call_ns1__swap_USCOREobjects(struct soap *soap, const char *soap_endpoint, const char *soap_action, char *key1, char *key2, char **result);
 
 SOAP_FMAC5 int SOAP_FMAC6 soap_call_ns1__replicate_USCOREobject(struct soap *soap, const char *soap_endpoint, const char *soap_action, char *key, char *volume, char **result);
@@ -392,5 +392,5 @@
 SOAP_FMAC5 int SOAP_FMAC6 soap_serve_ns1__rename_USCOREobject(struct soap*);
 
-SOAP_FMAC5 int SOAP_FMAC6 soap_serve_ns1__rename_USCOREobject_(struct soap*);
+SOAP_FMAC5 int SOAP_FMAC6 soap_serve_ns1__swap_USCOREobjects(struct soap*);
 
 SOAP_FMAC5 int SOAP_FMAC6 soap_serve_ns1__replicate_USCOREobject(struct soap*);
