hpc_observer support for multiple HPCs
diff --git a/xos/hpc_observer/steps/sync_cdnprefix.py b/xos/hpc_observer/steps/sync_cdnprefix.py
index 58cda11..c22eb51 100644
--- a/xos/hpc_observer/steps/sync_cdnprefix.py
+++ b/xos/hpc_observer/steps/sync_cdnprefix.py
@@ -25,10 +25,15 @@
         SyncStep.__init__(self, **args)
         HpcLibrary.__init__(self)
 
+    def filter_hpc_service(self, objs):
+        hpcService = self.get_hpc_service()
+
+        return [x for x in objs if x.contentProvider.serviceProvider.hpcService == hpcService]
+
     def fetch_pending(self, deleted):
         #self.consistency_check()
 
-        return SyncStep.fetch_pending(self, deleted)
+        return self.filter_hpc_service(SyncStep.fetch_pending(self, deleted))
 
     def consistency_check(self):
         # set to true if something changed
diff --git a/xos/hpc_observer/steps/sync_contentprovider.py b/xos/hpc_observer/steps/sync_contentprovider.py
index bf96421..3732466 100644
--- a/xos/hpc_observer/steps/sync_contentprovider.py
+++ b/xos/hpc_observer/steps/sync_contentprovider.py
@@ -25,10 +25,15 @@
         SyncStep.__init__(self, **args)
         HpcLibrary.__init__(self)
 
+    def filter_hpc_service(self, objs):
+        hpcService = self.get_hpc_service()
+
+        return [x for x in objs if x.serviceProvider.hpcService == hpcService]
+
     def fetch_pending(self, deleted):
         #self.consistency_check()
 
-        return SyncStep.fetch_pending(self, deleted)
+        return self.filter_hpc_service(SyncStep.fetch_pending(self, deleted))
 
     def consistency_check(self):
         # set to true if something changed
diff --git a/xos/hpc_observer/steps/sync_originserver.py b/xos/hpc_observer/steps/sync_originserver.py
index d8baea4..7efab07 100644
--- a/xos/hpc_observer/steps/sync_originserver.py
+++ b/xos/hpc_observer/steps/sync_originserver.py
@@ -26,10 +26,15 @@
         SyncStep.__init__(self, **args)
         HpcLibrary.__init__(self)
 
+    def filter_hpc_service(self, objs):
+        hpcService = self.get_hpc_service()
+
+        return [x for x in objs if x.contentProvider.serviceProvider.hpcService == hpcService]
+
     def fetch_pending(self, deleted):
         #self.consistency_check()
 
-        return SyncStep.fetch_pending(self, deleted)
+        return self.filter_hpc_service(SyncStep.fetch_pending(self, deleted))
 
     def consistency_check(self):
         # set to true if something changed
diff --git a/xos/hpc_observer/steps/sync_serviceprovider.py b/xos/hpc_observer/steps/sync_serviceprovider.py
index 9d7d7ea..ff7e2f6 100644
--- a/xos/hpc_observer/steps/sync_serviceprovider.py
+++ b/xos/hpc_observer/steps/sync_serviceprovider.py
@@ -25,10 +25,15 @@
         SyncStep.__init__(self, **args)
         HpcLibrary.__init__(self)
 
+    def filter_hpc_service(self, objs):
+        hpcService = self.get_hpc_service()
+
+        return [x for x in objs if x.hpcService == hpcService]
+
     def fetch_pending(self, deleted):
         #self.consistency_check()
 
-        return SyncStep.fetch_pending(self, deleted)
+        return self.filter_hpc_service(SyncStep.fetch_pending(self, deleted))
 
     def consistency_check(self):
         # set to true if something changed
diff --git a/xos/hpc_observer/steps/sync_sitemap.py b/xos/hpc_observer/steps/sync_sitemap.py
index ae8ca76..c81e2ce 100644
--- a/xos/hpc_observer/steps/sync_sitemap.py
+++ b/xos/hpc_observer/steps/sync_sitemap.py
@@ -25,8 +25,13 @@
         SyncStep.__init__(self, **args)
         HpcLibrary.__init__(self)
 
+    def filter_hpc_service(self, objs):
+        hpcService = self.get_hpc_service()
+
+        return [x for x in objs if x.hpcService == hpcService]
+
     def fetch_pending(self, deleted):
-        return SyncStep.fetch_pending(self, deleted)
+        return self.filter_hpc_service(SyncStep.fetch_pending(self, deleted))
 
     def consistency_check(self):
         # set to true if something changed