flow.html 4.7 KB
<!-- Flow partial HTML -->
<div id="ov-flow">
    <div class="tabular-header">
        <h2>
            Flows for Device {{devId || "(No device selected)"}}
            ({{tableData.length}} total)
        </h2>

        <div class="search">
            <input type="text" ng-model="query" placeholder="Search"/>
            <select ng-model="queryBy">
                <option value="" disabled>Search By</option>
                <option value="$">All</option>
                <option value="id">Flow ID</option>
                <option value="appId">App ID</option>
                <option value="groupId">Group ID</option>
                <option value="tableId">Table ID</option>
                <option value="priority">Priority</option>
                <option value="timeout">Timeout</option>
                <option value="permanent">Permanent</option>
                <option value="state">State</option>
            </select>
        </div>

        <div class="ctrl-btns">
            <div class="refresh" ng-class="{active: autoRefresh}"
                 icon icon-size="42" icon-id="refresh"
                 tooltip tt-msg="autoRefreshTip"
                 ng-click="toggleRefresh()"></div>

            <div class="separator"></div>

            <span ng-if="brief">
            <div class="active"
                 icon icon-id="plus" icon-size="42"
                 tooltip tt-msg="detailTip"
                 ng-click="briefToggle()"> </div>
            </span>

            <span ng-if="!brief">
            <div class="active"
                 icon icon-id="minus" icon-size="42"
                 tooltip tt-msg="briefTip"
                 ng-click="briefToggle()"> </div>
            </span>

            <div class="separator"></div>

            <div class="active"
                 icon icon-id="deviceTable" icon-size="42"
                 tooltip tt-msg="deviceTip"
                 ng-click="nav('device')"></div>

            <div class="current-view"
                 icon icon-id="flowTable" icon-size="42"></div>

            <div class="active"
                 icon icon-id="portTable" icon-size="42"
                 tooltip tt-msg="portTip"
                 ng-click="nav('port')"></div>

            <div class="active"
                 icon icon-id="groupTable" icon-size="42"
                 tooltip tt-msg="groupTip"
                 ng-click="nav('group')"></div>

            <div class="active"
                 icon icon-id="meterTable" icon-size="42"
                 tooltip tt-msg="meterTip"
                 ng-click="nav('meter')"></div>

        </div>
    </div>

    <div class="summary-list" onos-table-resize>
        <div class="table-header" onos-sortable-header>
            <table>
                <tr>
                    <td colId="id" col-width="180px" sortable>Flow ID </td>
                    <td colId="appId" sortable>App ID </td>
                    <td colId="groupId" sortable>Group ID </td>
                    <td colId="tableId" sortable>Table ID </td>
                    <td colId="priority" sortable>Priority </td>
                    <td colId="timeout" sortable>Timeout </td>
                    <td colId="permanent" sortable>Permanent </td>
                    <td colId="state" sortable>State </td>
                    <td class="right" colId="packets" sortable>Packets </td>
                    <td class="right" colId="bytes" sortable>Bytes </td>
                </tr>
            </table>
        </div>

        <div class="table-body">
            <table onos-flash-changes id-prop="id">
                <tr ng-if="!tableData.length" class="no-data">
                    <td colspan="10">
                        {{annots.no_rows_msg}}
                    </td>
                </tr>

                <tr ng-repeat-start="flow in tableData | filter:queryFilter track by $index"
                    ng-repeat-complete row-id="{{flow.id}}">
                    <td>{{flow.id}}</td>
                    <td>{{flow.appId}}</td>
                    <td>{{flow.groupId}}</td>
                    <td>{{flow.tableId}}</td>
                    <td>{{flow.priority}}</td>
                    <td>{{flow.timeout}}</td>
                    <td>{{flow.permanent}}</td>
                    <td>{{flow.state}}</td>
                    <td class="right">{{flow.packets}}</td>
                    <td class="right">{{flow.bytes}}</td>
                </tr>
                <tr row-id="{{flow.id}}" ng-hide="brief">
                    <td class="selector" colspan="10" >{{flow.selector}} </td>
                </tr>
                <tr row-id="{{flow.id}}" ng-repeat-end ng-hide="brief">
                    <td class="treatment" colspan="10">{{flow.treatment}}</td>
                </tr>
            </table>
        </div>

    </div>

</div>