- <h3 class="control__header">xApp Control</h3>
- <div class="spinner-container" *ngIf="dataSource.loading$ | async">
- <mat-spinner></mat-spinner>
- </div>
- <table mat-table [dataSource]="dataSource" multiTemplateDataRows class="control-table mat-elevation-z8">
-
- <ng-container matColumnDef="xapp">
- <mat-header-cell *matHeaderCellDef> xApp Name </mat-header-cell>
- <mat-cell *matCellDef="let element"> {{element.xapp}} </mat-cell>
- </ng-container>
-
- <ng-container matColumnDef="name">
- <mat-header-cell *matHeaderCellDef> Instance Name</mat-header-cell>
- <mat-cell *matCellDef="let element"> {{element.instance.name}} </mat-cell>
- </ng-container>
-
- <ng-container matColumnDef="status">
- <mat-header-cell *matHeaderCellDef> Status </mat-header-cell>
- <mat-cell *matCellDef="let element"> {{element.instance.status}} </mat-cell>
- </ng-container>
-
- <ng-container matColumnDef="ip">
- <mat-header-cell *matHeaderCellDef> IP </mat-header-cell>
- <mat-cell *matCellDef="let element"> {{element.instance.ip}} </mat-cell>
- </ng-container>
-
- <ng-container matColumnDef="port">
- <mat-header-cell *matHeaderCellDef> Port </mat-header-cell>
- <mat-cell *matCellDef="let element"> {{element.instance.port}} </mat-cell>
- </ng-container>
-
- <ng-container matColumnDef="action">
- <mat-header-cell *matHeaderCellDef> Action </mat-header-cell>
- <mat-cell *matCellDef="let element">
- <button mat-icon-button
- (click)="view()">
- <mat-icon>settings</mat-icon>
- </button>
- <button mat-icon-button
- color="warn"
- (click)="undeploy(element.xapp)">
- <mat-icon>delete</mat-icon>
- </button>
- </mat-cell>
- </ng-container>
-
- <ng-container matColumnDef="expandedDetail">
- <td mat-cell *matCellDef="let element" [attr.colspan]="displayedColumns.length">
- <div [@messageExpand]="element == expandedElement ? 'expanded' : 'collapsed'">
- <div>
- txMessages:
- </div>
- <li *ngFor="let rxmessage of element.instance.rxMessage">
- <span>{{rxmessage}}</span>
- </li>
- <div>
- rxMessages:
- </div>
- <li *ngFor="let txmessage of element.instance.txMessage">
- <span>{{txmessage}}</span>
- </li>
- </div>
- </td>
- </ng-container>
-
- <mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
- <mat-row *matRowDef="let element; columns: displayedColumns;"
- [class.example-expanded-row]="expandedElement === element"
- (click)="expandedElement = expandedElement === element ? null : element"></mat-row>
- <tr mat-row *matRowDef="let row; columns: ['expandedDetail']" class="message-row"></tr>
- </table>