Index: fedd/federation/protogeni_access.py
===================================================================
--- fedd/federation/protogeni_access.py	(revision 4875e93dce4605e5e310795428710196547e6495)
+++ fedd/federation/protogeni_access.py	(revision 88dbe6330de24f2673a50c961f1651c0f63d0338)
@@ -100,4 +100,15 @@
 		return "%s XML blob" % method
 
+    def clearinghouse_call(self, method, params, context):
+	return self.pg_call(self.ch_url, method, params, context)
+
+    def slice_authority_call(self, method, params, context):
+	return self.pg_call(self.sa_url, method, params, context)
+
+    def component_manager_call(self, method, params, context):
+	return self.pg_call(self.cm_url, method, params, context)
+
+
+
 
 
@@ -878,7 +889,7 @@
 
 	try:
-	    gcred = segment_commands.pg_call(self.sa_url, 
-		    'GetCredential', {}, ctxt)
-	except self.ProtoGENIError, e:
+	    gcred = segment_commands.slice_authority_call('GetCredential', 
+		    {}, ctxt)
+	except segment_commands.ProtoGENIError, e:
 	    raise service_error(service_error.federant,
 		    "ProtoGENI: %s" % e)
@@ -909,5 +920,5 @@
 			'type': 'Slice'
 			}
-		segment_commands.pg_call(self.sa_url, 'Resolve', param, ctxt)
+		segment_commands.slice_authority_call('Resolve', param, ctxt)
 	    except segment_commands.ProtoGENIError, e:
 		print e
@@ -929,5 +940,5 @@
 		    'type': 'Slice'
 		    }
-	    slice_cred = segment_commands.pg_call(self.sa_url, 'Register',
+	    slice_cred = segment_commands.slice_authority_call('Register',
 		    param, ctxt)
 	    # Resolve the slice to get the URN that PG has assigned it.
@@ -937,5 +948,5 @@
 		    'hrn': slicename
 		    }
-	    data = segment_commands.pg_call(self.sa_url, 'Resolve', param,
+	    data = segment_commands.slice_authority_call('Resolve', param,
 		    ctxt)
 	    if 'urn' in data:
@@ -954,5 +965,5 @@
 		    'credential': gcred, 
 		    }
-	    keys =  segment_commands.pg_call(self.sa_url, 'GetKeys', param, 
+	    keys =  segment_commands.slice_authority_call('GetKeys', param, 
 		    ctxt)
 	    # Create a Sliver
@@ -967,5 +978,5 @@
 		    'slice_urn': slice_urn,
 		    }
-	    sliver_cred, manifest = segment_commands.pg_call(self.cm_url, 
+	    sliver_cred, manifest = segment_commands.component_manager_call(
 		    'CreateSliver', param, ctxt)
 	except segment_commands.ProtoGENIError, e:
@@ -991,5 +1002,5 @@
 			'slice_urn': slice_urn,
 			}
-		r = segment_commands.pg_call(self.cm_url,
+		r = segment_commands.component_manager_call(
 			'SliverStatus', param, ctxt)
 		status = r.get('status', 'changing')
@@ -1014,5 +1025,5 @@
 		    'slice_urn': slice_urn,
 		    }
-	    segment_commands.pg_call(self.cm_url, 'DeleteSlice',
+	    segment_commands.component_manager_call('DeleteSlice',
 		    param, ctxt)
 	except segment_commands.ProtoGENIError, e:
@@ -1428,5 +1439,5 @@
 	    expiration = time.strftime("%Y%m%dT%H:%M:%S",
 		    time.gmtime(time.time() + interval))
-	    cred = segment_commands.pg_call(self.sa_url, 'GetCredential', 
+	    cred = segment_commands.slice_authority_call('GetCredential', 
 		    {}, ctxt)
 
@@ -1435,5 +1446,5 @@
 		    'expiration': expiration
 		    }
-	    r = segment_commands.pg_call(self.sa_url, 'RenewSlice', param, ctxt)
+	    r = segment_commands.slice_authority_call('RenewSlice', param, ctxt)
 	    param = {
 		    'credential': cred,
@@ -1441,5 +1452,5 @@
 		    'type': 'Slice',
 		    }
-	    slice = segment_commands.pg_call(self.sa_url, 'Resolve', 
+	    slice = segment_commands.slice_authority_call('Resolve', 
 		    param, ctxt)
 	    uuid = slice.get('uuid', None)
@@ -1453,5 +1464,5 @@
 		    'type': 'Slice',
 		    }
-	    new_scred = segment_commands.pg_call(self.sa_url, 'GetCredential',
+	    new_scred = segment_commands.slice_authority_call('GetCredential',
 		    param, ctxt)
 
@@ -1465,5 +1476,6 @@
 		    'slice_urn': slice_urn,
 		    }
-	    r = segment_commands.pg_call(self.cm_url, 'RenewSlice', param, ctxt)
+	    r = segment_commands.component_manager_call('RenewSlice', param, 
+		    ctxt)
 	except segment_commands.ProtoGENIError, e:
 	    self.log.warn("Failed to renew sliver for %s: %s" % (name, e))
