blob: 0fee1e78e2081d872a38a63f532a5e94eea9aa65 [file] [log] [blame]
Thomas Vachuskac40d4632015-04-09 16:55:03 -07001/*
Brian O'Connor5ab426f2016-04-09 01:19:45 -07002 * Copyright 2015-present Open Networking Laboratory
Thomas Vachuskac40d4632015-04-09 16:55:03 -07003 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16package org.onosproject.provider.nil;
17
18/**
19 * Topology simulator which operates on topology configured via the REST API
20 * config service.
21 */
22public class ConfiguredTopologySimulator extends TopologySimulator {
23
24 @Override
25 protected void createDevices() {
26 deviceService.getDevices()
27 .forEach(device -> deviceProviderService
28 .deviceConnected(device.id(), description(device)));
29 }
30
31 @Override
32 protected void createLinks() {
33 linkService.getLinks()
34 .forEach(link -> linkProviderService
35 .linkDetected(description(link)));
36 }
37
38 @Override
39 protected void createHosts() {
40 hostService.getHosts()
41 .forEach(host -> hostProviderService
Ray Milkeydc083442016-02-22 11:27:57 -080042 .hostDetected(host.id(), description(host), false));
Thomas Vachuskac40d4632015-04-09 16:55:03 -070043 }
44}