| -- |
| -- Copyright 2020 The Android Open Source Project |
| -- |
| -- Licensed under the Apache License, Version 2.0 (the "License"); |
| -- you may not use this file except in compliance with the License. |
| -- You may obtain a copy of the License at |
| -- |
| -- https://www.apache.org/licenses/LICENSE-2.0 |
| -- |
| -- Unless required by applicable law or agreed to in writing, software |
| -- distributed under the License is distributed on an "AS IS" BASIS, |
| -- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| -- See the License for the specific language governing permissions and |
| -- limitations under the License. |
| -- |
| SELECT "directly_connected" as type, s.name, s1.name as start_name, s2.name as end_name FROM slice s |
| JOIN DIRECTLY_CONNECTED_FLOW(s.id) c |
| JOIN slice s1 ON s1.id = c.slice_out |
| JOIN slice s2 ON s2.id = c.slice_in |
| UNION |
| SELECT "following" as type, s.name, s1.name as start_name, s2.name as end_name FROM slice s |
| JOIN FOLLOWING_FLOW(s.id) c |
| JOIN slice s1 ON s1.id = c.slice_out |
| JOIN slice s2 ON s2.id = c.slice_in |
| UNION |
| SELECT "preceding" as type, s.name, s1.name as start_name, s2.name as end_name FROM slice s |
| JOIN PRECEDING_FLOW(s.id) c |
| JOIN slice s1 ON s1.id = c.slice_out |
| JOIN slice s2 ON s2.id = c.slice_in |
| ORDER BY type, s.name, s1.name, s2.name ASC |