Reference Guide
Table Of Contents
- 1 Introduction
- 2 Establishing Your Test and Development Environments
- 3 Developing Applications
- Introduction
- Authentication
- REST API
- Audit Logging
- Alert Logging
- Configuration
- High Availability
- OpenFlow
- Metrics Framework
- GUI
- SKI Framework - Overview
- SKI Framework - Navigation Tree
- SKI Framework - Hash Navigation
- SKI Framework - View Life-Cycle
- SKI Framework - Live Reference Application
- UI Extension
- Introduction
- Controller Teaming
- Distributed Coordination Service
- Persistence
- Backup and Restore
- Device Driver Framework
- 4 Application Security
- 5 Including Debian Packages with Applications
- 6 Sample Application
- Application Description
- Creating Application Development Workspace
- Application Generator (Automatic Workspace Creation)
- Creating Eclipse Projects
- Updating Project Dependencies
- Building the Application
- Installing the Application
- Application Code
- 7 Testing Applications
- 8 Built-In Applications
- Appendix A
- Appendix B
- Bibliography
devices = new HashMap<Id<Switch, UUID>, Switch>();
idCount = new AtomicLong(1);
}
public void setAlertService(AlertService alertService) {
this.alertService = alertService;
}
@Override
public Switch create(String name) {
Switch device = new Switch(name);
if (isEmpty(device.name())) {
device.setName("Switch-" + device.getId().getValue().toString());
}
devices.put(device.getId(), device);
return device;
}
@Override
public Collection<Switch> getAll() {
synchronized (devices) {
return Collections.unmodifiableCollection(devices.values());
}
}
@Override
public Switch get(Id<Switch, UUID> id) {
if (id == null) {
throw new NullPointerException("id cannot be null");
}
synchronized (devices) {
Switch s = devices.get(id);
if (s == null)
throw new NotFoundException("Switch with id " + id + "not
found");
return s;
}
}
@Override
public void delete(Id<Switch, UUID> id) {
if (id == null) {
209