You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datalab.apache.org by lf...@apache.org on 2022/01/12 13:42:07 UTC

[incubator-datalab] branch develop updated: [DATALAB-2653] fixed recreate button disable

This is an automated email from the ASF dual-hosted git repository.

lfrolov pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/incubator-datalab.git


The following commit(s) were added to refs/heads/develop by this push:
     new ac4a609  [DATALAB-2653] fixed recreate button disable
     new 4ffa1db  Merge pull request #1388 from GennadiyShpak/fix/DATALAB-2653/recreate-button-is-enabled
ac4a609 is described below

commit ac4a609804c1a5dc9474f8f314951baee699fc9e
Author: Hennadii_Shpak <bo...@gmail.com>
AuthorDate: Tue Jan 11 21:33:00 2022 +0200

    [DATALAB-2653] fixed recreate button disable
---
 .../administration-models/endpoint-model.ts              |  8 ++++++++
 .../project/project-list/project-list.component.html     |  2 +-
 .../project/project-list/project-list.component.ts       | 16 ++++++++++++++++
 .../webapp/src/app/core/services/endpoint.service.ts     |  1 -
 4 files changed, 25 insertions(+), 2 deletions(-)

diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/administration-models/endpoint-model.ts b/services/self-service/src/main/resources/webapp/src/app/administration/administration-models/endpoint-model.ts
new file mode 100644
index 0000000..6436ffe
--- /dev/null
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/administration-models/endpoint-model.ts
@@ -0,0 +1,8 @@
+export interface Endpoint {
+    account: string;
+    cloudProvider: string;
+    endpoint_tag: string;
+    name: string;
+    status: string;
+    url: string;
+}
diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.html b/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.html
index c1f54d1..bf4c8f7 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.html
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.html
@@ -93,7 +93,7 @@
                 Stop edge node
               </a>
             </li>
-            <li class="project-seting-item " *ngIf="element.areTerminatedNode" (click)="openEdgeDialog('recreate', element)">
+            <li class="project-seting-item " *ngIf="element.areTerminatedNode && isEndpointAvailable" (click)="openEdgeDialog('recreate', element)">
               <i class="material-icons">refresh</i>
               <a class="action">
                 Recreate edge node
diff --git a/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.ts b/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.ts
index 41a2127..ca2c331 100644
--- a/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.ts
+++ b/services/self-service/src/main/resources/webapp/src/app/administration/project/project-list/project-list.component.ts
@@ -27,6 +27,7 @@ import { ProjectDataService } from '../project-data.service';
 import { Project, Endpoint } from '../project.component';
 import {ProgressBarService} from '../../../core/services/progress-bar.service';
 import {EdgeActionDialogComponent} from '../../../shared/modal-dialog/edge-action-dialog';
+import { EndpointService } from '../../../core/services';
 
 @Component({
   selector: 'project-list',
@@ -38,6 +39,7 @@ export class ProjectListComponent implements OnInit, OnDestroy {
   displayedColumns: string[] = ['name', 'groups', 'endpoints', 'actions'];
   dataSource: Project[] | any = [];
   projectList: Project[];
+  isEndpointAvailable: boolean;
 
   @Input() isProjectAdmin: boolean;
   @Output() editItem: EventEmitter<{}> = new EventEmitter();
@@ -48,6 +50,7 @@ export class ProjectListComponent implements OnInit, OnDestroy {
     public toastr: ToastrService,
     private projectDataService: ProjectDataService,
     private progressBarService: ProgressBarService,
+    private endpointService: EndpointService,
     @Inject(MAT_DIALOG_DATA) public data: any,
     public dialogRef: MatDialogRef<ProjectListComponent>,
     public dialog: MatDialog,
@@ -55,6 +58,7 @@ export class ProjectListComponent implements OnInit, OnDestroy {
 
   ngOnInit() {
     this.getProjectList();
+    this.getEndpointList();
   }
 
   ngOnDestroy() {
@@ -82,6 +86,18 @@ export class ProjectListComponent implements OnInit, OnDestroy {
     );
   }
 
+  private getEndpointList() {
+    this.endpointService.getEndpointsData().subscribe(
+      (response: Endpoint[] | []) => {
+        this.isEndpointAvailable = this.checkIsEndpointAvailable(response);
+      }
+    )
+  }
+
+  private checkIsEndpointAvailable(data: Endpoint[] | []): boolean {
+    return  data.length ? true : false;
+  }
+
   public showActiveInstances(): void {
     const filteredList = this.projectList.map(project => {
       project.endpoints = project.endpoints.filter((endpoint: Endpoint) => {
diff --git a/services/self-service/src/main/resources/webapp/src/app/core/services/endpoint.service.ts b/services/self-service/src/main/resources/webapp/src/app/core/services/endpoint.service.ts
index ae522c5..3a77464 100644
--- a/services/self-service/src/main/resources/webapp/src/app/core/services/endpoint.service.ts
+++ b/services/self-service/src/main/resources/webapp/src/app/core/services/endpoint.service.ts
@@ -35,7 +35,6 @@ export class EndpointService {
     return this.applicationServiceFacade
       .buildGetEndpointsData()
       .pipe(
-        map(response => response),
         catchError(ErrorUtils.handleServiceError));
   }
 

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datalab.apache.org
For additional commands, e-mail: commits-help@datalab.apache.org