Skip to content

Commit 1dc1a27

Browse files
author
Will Meek
committed
(FM-7819) Clarify device shim and difference between device and transport classes
1 parent b9c9c17 commit 1dc1a27

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

README.md

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,15 @@ Support for remote resources is enabled through a `transport` class. A transport
178178

179179
### `puppet device` support
180180

181-
To connect to a remote resource through `puppet device`, you must call a `transport` class through a device shim. For example, the `device` class will be passed through to `transport`:
181+
To connect to a remote resource through `puppet device`, you must call a `transport` class through a device shim to maintain compatibility with Puppet Resource.
182+
183+
A `device` class is created that Puppet Resource will call, however this will inherit from the `transport` class which will contain the following methods (as detailed in the [Resource API specification](https://github.com/puppetlabs/puppet-specifications/tree/master/language/resource-api#transport)):
184+
* `initialize`
185+
* `verify`
186+
* `facts`
187+
* `connect`
188+
189+
For example, the `device` class will be a pass through to `transport`:
182190

183191
```ruby
184192
# lib/puppet/util/network_device/device_type/device.rb

0 commit comments

Comments
 (0)