You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
**Note:** Here we are **NOT** using `selenium-java` as a dependency because its already part of the original selenium uber jar and we are just adding our custom node to the classpath via the `--ext` argument.
44
64
45
-
Here's a sample that just prints some messages on to the console whenever there's an activity of interest (session created, session deleted, a webdriver command executed etc.,) on the Node.
65
+
Below is a sample that just prints some messages on to the console whenever there's an activity of interest (session created, session deleted, a webdriver command executed etc.,) on the Node.
46
66
47
67
48
68
<details>
@@ -88,7 +108,10 @@ public class DecoratedLoggingNode extends Node {
@@ -208,4 +231,23 @@ public class DecoratedLoggingNode extends Node {
208
231
}
209
232
}
210
233
```
211
-
</details>
234
+
</details>
235
+
236
+
**_Foot Notes:_**
237
+
238
+
In the above example, the line `Node node = LocalNodeFactory.create(config);` explicitly creates a `LocalNode`.
239
+
240
+
There are basically 2 types of *user facing implementations* of `org.openqa.selenium.grid.node.Node` available.
241
+
242
+
These classes are good starting points to learn how to build a custom Node and also to learn the internals of a Node.
243
+
244
+
*`org.openqa.selenium.grid.node.local.LocalNode` - Used to represent a long running Node and is the default implementation that gets wired in when you start a `node`.
245
+
* It can be created by calling `LocalNodeFactory.create(config);`, where:
246
+
*`LocalNodeFactory` belongs to `org.openqa.selenium.grid.node.local`
247
+
*`Config` belongs to `org.openqa.selenium.grid.config`
248
+
*`org.openqa.selenium.grid.node.k8s.OneShotNode` - This is a special reference implementation wherein the Node gracefully shuts itself down after servicing one test session. This class is currently not available as part of any pre-built maven artifact.
249
+
* You can refer to the source code [here](https://github.com/SeleniumHQ/selenium/blob/trunk/java/src/org/openqa/selenium/grid/node/k8s/OneShotNode.java) to understand its internals.
250
+
* To build it locally refer [here](https://github.com/SeleniumHQ/selenium/blob/trunk/deploys/k8s/README.md).
251
+
* It can be created by calling `OneShotNode.create(config)`, where:
252
+
*`OneShotNode` belongs to `org.openqa.selenium.grid.node.k8s`
253
+
*`Config` belongs to `org.openqa.selenium.grid.config`
**Note:** Here we are **NOT** using `selenium-java` as a dependency because its already part of the original selenium uber jar and we are just adding our custom node to the classpath via the `--ext` argument.
52
72
53
-
Here's a sample that just prints some messages on to the console whenever there's an activity of interest (session created, session deleted, a webdriver command executed etc.,) on the Node.
73
+
Below is a sample that just prints some messages on to the console whenever there's an activity of interest (session created, session deleted, a webdriver command executed etc.,) on the Node.
54
74
55
75
56
76
<details>
@@ -96,7 +116,10 @@ public class DecoratedLoggingNode extends Node {
@@ -216,4 +239,23 @@ public class DecoratedLoggingNode extends Node {
216
239
}
217
240
}
218
241
```
219
-
</details>
242
+
</details>
243
+
244
+
**_Foot Notes:_**
245
+
246
+
In the above example, the line `Node node = LocalNodeFactory.create(config);` explicitly creates a `LocalNode`.
247
+
248
+
There are basically 2 types of *user facing implementations* of `org.openqa.selenium.grid.node.Node` available.
249
+
250
+
These classes are good starting points to learn how to build a custom Node and also to learn the internals of a Node.
251
+
252
+
*`org.openqa.selenium.grid.node.local.LocalNode` - Used to represent a long running Node and is the default implementation that gets wired in when you start a `node`.
253
+
* It can be created by calling `LocalNodeFactory.create(config);`, where:
254
+
*`LocalNodeFactory` belongs to `org.openqa.selenium.grid.node.local`
255
+
*`Config` belongs to `org.openqa.selenium.grid.config`
256
+
*`org.openqa.selenium.grid.node.k8s.OneShotNode` - This is a special reference implementation wherein the Node gracefully shuts itself down after servicing one test session. This class is currently not available as part of any pre-built maven artifact.
257
+
* You can refer to the source code [here](https://github.com/SeleniumHQ/selenium/blob/trunk/java/src/org/openqa/selenium/grid/node/k8s/OneShotNode.java) to understand its internals.
258
+
* To build it locally refer [here](https://github.com/SeleniumHQ/selenium/blob/trunk/deploys/k8s/README.md).
259
+
* It can be created by calling `OneShotNode.create(config)`, where:
260
+
*`OneShotNode` belongs to `org.openqa.selenium.grid.node.k8s`
261
+
*`Config` belongs to `org.openqa.selenium.grid.config`
**Note:** Here we are **NOT** using `selenium-java` as a dependency because its already part of the original selenium uber jar and we are just adding our custom node to the classpath via the `--ext` argument.
72
+
73
+
Below is a sample that just prints some messages on to the console whenever there's an activity of interest (session created, session deleted, a webdriver command executed etc.,) on the Node.
52
74
53
-
Here's a sample that just prints some messages on to the console whenever there's an activity of interest (session created, session deleted, a webdriver command executed etc.,) on the Node.
54
75
55
-
<summary>Sample customized node</summary>
56
76
<details>
77
+
<summary>Sample customized node</summary>
57
78
58
79
```java
59
80
packageorg.seleniumhq.samples;
@@ -95,7 +116,10 @@ public class DecoratedLoggingNode extends Node {
@@ -215,4 +239,23 @@ public class DecoratedLoggingNode extends Node {
215
239
}
216
240
}
217
241
```
218
-
</details>
242
+
</details>
243
+
244
+
**_Foot Notes:_**
245
+
246
+
In the above example, the line `Node node = LocalNodeFactory.create(config);` explicitly creates a `LocalNode`.
247
+
248
+
There are basically 2 types of *user facing implementations* of `org.openqa.selenium.grid.node.Node` available.
249
+
250
+
These classes are good starting points to learn how to build a custom Node and also to learn the internals of a Node.
251
+
252
+
*`org.openqa.selenium.grid.node.local.LocalNode` - Used to represent a long running Node and is the default implementation that gets wired in when you start a `node`.
253
+
* It can be created by calling `LocalNodeFactory.create(config);`, where:
254
+
*`LocalNodeFactory` belongs to `org.openqa.selenium.grid.node.local`
255
+
*`Config` belongs to `org.openqa.selenium.grid.config`
256
+
*`org.openqa.selenium.grid.node.k8s.OneShotNode` - This is a special reference implementation wherein the Node gracefully shuts itself down after servicing one test session. This class is currently not available as part of any pre-built maven artifact.
257
+
* You can refer to the source code [here](https://github.com/SeleniumHQ/selenium/blob/trunk/java/src/org/openqa/selenium/grid/node/k8s/OneShotNode.java) to understand its internals.
258
+
* To build it locally refer [here](https://github.com/SeleniumHQ/selenium/blob/trunk/deploys/k8s/README.md).
259
+
* It can be created by calling `OneShotNode.create(config)`, where:
260
+
*`OneShotNode` belongs to `org.openqa.selenium.grid.node.k8s`
261
+
*`Config` belongs to `org.openqa.selenium.grid.config`
0 commit comments