allow single edge connections in tenancy graph

Change-Id: Ia878742e9a6b2718e6e6ceb02c65e2a79f045529
diff --git a/src/app/service-graph/services/graph.store.ts b/src/app/service-graph/services/graph.store.ts
index 7c6e552..eb41f38 100644
--- a/src/app/service-graph/services/graph.store.ts
+++ b/src/app/service-graph/services/graph.store.ts
@@ -279,31 +279,33 @@
       const links = _.reduce(data.tenants, (links: IXosServiceGraphLink[], tenant: IXosTenantModel) => {
         const sourceId = this.getSourceId(tenant);
         const targetId = this.getTargetId(tenant);
-        if (!angular.isDefined(targetId) || !angular.isDefined(sourceId)) {
-          // if the tenant is not pointing to anything, don't draw links
-          return links;
+
+        if (angular.isDefined(targetId)) {
+          const tenantToSubscriber = {
+            id: `${tenant.d3Id}_${targetId}`,
+            source: this.getNodeIndexById(tenant.d3Id, nodes),
+            target: this.getNodeIndexById(targetId, nodes),
+            model: tenant
+          };
+
+          if (angular.isDefined(tenantToSubscriber.source) && angular.isDefined(tenantToSubscriber.target)) {
+            links.push(tenantToSubscriber);
+          }
         }
 
-        const tenantToProvider = {
-          id: `${sourceId}_${tenant.d3Id}`,
-          source: this.getNodeIndexById(sourceId, nodes),
-          target: this.getNodeIndexById(tenant.d3Id, nodes),
-          model: tenant
-        };
+        if (angular.isDefined(sourceId)) {
+          const tenantToProvider = {
+            id: `${sourceId}_${tenant.d3Id}`,
+            source: this.getNodeIndexById(sourceId, nodes),
+            target: this.getNodeIndexById(tenant.d3Id, nodes),
+            model: tenant
+          };
 
-        const tenantToSubscriber = {
-          id: `${tenant.d3Id}_${targetId}`,
-          source: this.getNodeIndexById(tenant.d3Id, nodes),
-          target: this.getNodeIndexById(targetId, nodes),
-          model: tenant
-        };
+          if (angular.isDefined(tenantToProvider.source) && angular.isDefined(tenantToProvider.target)) {
+            links.push(tenantToProvider);
+          }
+        }
 
-        if (angular.isDefined(tenantToProvider.source) && angular.isDefined(tenantToProvider.target)) {
-          links.push(tenantToProvider);
-        }
-        if (angular.isDefined(tenantToSubscriber.source) && angular.isDefined(tenantToSubscriber.target)) {
-          links.push(tenantToSubscriber);
-        }
         return links;
       }, []);