<!--<p-dialog [showHeader]="false" [closeOnEscape]="false" [modal]="true" header="Discovery" [width]="800" [(visible)]="display" >--> <!--<of-discovery-setting [visible]="display" (close)="closeDialog()"></of-discovery-setting>--> <!--</p-dialog>--> <div class="ui-g"> <h1>Map</h1> <div class="ui-g-12 ui-g-nopad"> <div class="ui-g"> <div class="ui-g-12 ui-md-5 ui-g-nopad ui-bottom-space-10"> <button pButton type="button" class="ui-button-large ui-button-width-fit" icon="ui-icon-play-arrow" label="Discovery" (click)="showDialog()"></button> </div> <div class="ui-g-12 ui-md-7 ui-g-nopad"> <div style="float: right;"> <button pButton type="button" class="ui-button-secondary ui-button-width-fit" label="Expand all" style="margin-top: 16px;" (click)="expandAll()"></button> <button pButton type="button" class="ui-button-secondary ui-button-width-fit" label="Collapse all" style="margin-top: 16px;" (click)="collapseAll()"></button> </div> <div style="float: right; margin: 30px 15px 0 0;"> <i class="fa ui-icon-stop ui-status-icon ui-status-success"></i>Up <i class="fa ui-icon-stop ui-status-icon ui-status-fatal"></i>Down <i class="fa ui-icon-stop ui-status-icon ui-status-warn"></i>Warn <i class="fa ui-icon-stop ui-status-icon ui-status-error"></i>Error </div> </div> </div> </div> <div class="ui-g-12 ui-g-nopad"> <p-tree [value]="infraTree" selectionMode="single" [(selection)]="selectedTree" (onNodeSelect)="onNodeSelect($event)" [contextMenu]="cm" [pTooltip]="desiredTooltip"> <ng-template let-node pTemplate="default"> <div>{{node.label}}</div> </ng-template> <ng-template let-node pTemplate="infra"> <div (contextmenu)="nodeMenu($event, node)"> <div>{{node.label}}</div> </div> </ng-template> <ng-template let-node pTemplate="probe"> <div (contextmenu)="nodeMenu($event, node)"> <div>{{node.label}}</div> </div> </ng-template> <ng-template let-node pTemplate="host"> <div (contextmenu)="nodeMenu($event, node)"> <div>{{node.label}}</div> <!-- <div>{{node.obj.infraType.name}}</div> --> </div> </ng-template> <ng-template let-node pTemplate="service"> <div (contextmenu)="nodeMenu($event, node)"> <div>{{node.label}}</div> </div> </ng-template> <ng-template let-node pTemplate="sensor"> <div (contextmenu)="nodeMenu($event, node)"> <div> <i class="fa ui-icon-stop ui-status-icon ui-status-success"></i>{{node.label}} </div> <div> {{node.obj.itemCount}} SensorItems </div> </div> </ng-template> </p-tree> </div> </div> <p-contextMenu #cmProbe [model]="contextMenuProbe"></p-contextMenu> <p-contextMenu #cmHost [model]="contextMenuHost"></p-contextMenu> <p-contextMenu #cmService [model]="contextMenuService"></p-contextMenu> <p-contextMenu #cmSensor [model]="contextMenuSensor"></p-contextMenu> <!-- <p-dialog [modal]="true" [width]="800" [(visible)]="sensorSettingDisplay" [showHeader]="true" [closeOnEscape]="false"> <of-sensor-setting [visible]="sensorSettingDisplay" [preTarget]="target" (close)="onSensorSettingClose()"></of-sensor-setting> </p-dialog> --> <p-dialog header="Rename Probe" [(visible)]="renameProbeVisible" [modal]="true" [responsive]="true" [width]="350" [minWidth]="200" [minY]="70"> <span class="md-inputfield"> <input #probeAlias type="text" pInputText placeholder="Enter new alias."> </span> <p-footer> <button type="button" pButton icon="fa-check" (click)="onSaveProbeName(probeAlias.value)" label="Save"></button> <button type="button" pButton icon="fa-close" (click)="renameProbeVisible=false" label="Cancel"></button> </p-footer> </p-dialog> <!-- <div fxLayoutAlign="end" [style.margin]="'10px 10px'"> <form class="form"> <mat-form-field class="full-width"> <input matInput placeholder="Search" [(ngModel)]="searchWord" (ngModelChange)="handleSearch($event)" [ngModelOptions]="{standalone: true}"> <mat-icon matSuffix>search</mat-icon> </mat-form-field> </form> </div> <div fxLayoutAlign="end" [style.margin]="'10px 10px'"> ** probe가 설치된 host와 그 probe가 가장 상위에 나와야 함 ** <div class="box up"></div>Up <div class="box down"></div>Down <div class="box warn"></div>Warn <div class="box error"></div>Error </div> <div *ngIf="loading" fxLayoutAlign="center"> <mat-spinner></mat-spinner> </div> <div *ngIf="!loading" class="search-result" infinite-scroll [infiniteScrollDistance]="2" [infiniteScrollThrottle]="50" (scrolled)="onScroll()" [scrollWindow]="false"> <div class="infra-list mat-elevation-z4 " *ngFor="let infra of hostDataList"> <mat-toolbar> <mat-toolbar-row> <span matTooltip="showHostInfo(infra)">IP : {{infra.host.ip}}</span> <span class="pull-right"></span> <span style="margin-right: 20px"> </span> <button mat-raised-button color="primary" fxLayoutAlign="end" (click)="addSensor(infra)">Add Sensor</button> </mat-toolbar-row> </mat-toolbar> <mat-card-content *ngFor="let service of infra.services"> <mat-grid-list cols="6" rowHeight="9:1"> <mat-grid-tile [rowspan]="2" style="background-color: lightcoral"> {{service.vendor.name}} </mat-grid-tile> <mat-grid-tile [colspan]="3" style="background-color: lightblue"> <div class="grid-left-align"> Port : {{service.port}} | {{service.portType}} {{service.tlsType ? '| TLS' : ''}} </div> </mat-grid-tile> <mat-grid-tile [rowspan]="2" style="background-color: lightgray"> <span class="pull-right"></span> <button mat-button fxLayoutAlign="end" (click)="addSensor(infra)">Add Sensor</button> </mat-grid-tile> <mat-grid-tile [colspan]="3" style="background-color: lightgreen"> <div class="grid-left-align"> </div> </mat-grid-tile> </mat-grid-list> </mat-card-content> </div> </div> -->