forked from docker-java/docker-java
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathPortConfig.java
More file actions
131 lines (112 loc) · 2.59 KB
/
Copy pathPortConfig.java
File metadata and controls
131 lines (112 loc) · 2.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
package com.github.dockerjava.api.model;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import javax.annotation.CheckForNull;
import java.io.Serializable;
/**
* @since {@link RemoteApiVersion#VERSION_1_24}
*/
@EqualsAndHashCode
@ToString
public class PortConfig implements Serializable {
public static final long serialVersionUID = 1L;
/**
* @since 1.24
*/
@JsonProperty("Name")
private String name;
/**
* @since 1.24
*/
@JsonProperty("Protocol")
private PortConfigProtocol protocol;
/**
* @since 1.24
*/
@JsonProperty("TargetPort")
private int targetPort;
/**
* @since 1.24
*/
@JsonProperty("PublishedPort")
private int publishedPort;
/**
* @since 1.25
* docker 1.13
* https://github.com/mrjana/docker/blob/14ac9f60d0174256e0713701ebffaf5ca827da71/api/types/swarm/network.go
*/
@JsonProperty("PublishMode")
private PublishMode publishMode;
/**
* @see #name
*/
public String getName() {
return name;
}
/**
* @see #name
*/
public PortConfig withName(String name) {
this.name = name;
return this;
}
/**
* @see #protocol
*/
@CheckForNull
public PortConfigProtocol getProtocol() {
return protocol;
}
/**
* @see #protocol
*/
public PortConfig withProtocol(PortConfigProtocol protocol) {
this.protocol = protocol;
return this;
}
/**
* @see #targetPort
*/
@CheckForNull
public int getTargetPort() {
return targetPort;
}
/**
* @see #targetPort
*/
public PortConfig withTargetPort(int targetPort) {
this.targetPort = targetPort;
return this;
}
/**
* @see #publishedPort
*/
@CheckForNull
public int getPublishedPort() {
return publishedPort;
}
/**
* @see #publishedPort
*/
public PortConfig withPublishedPort(int publishedPort) {
this.publishedPort = publishedPort;
return this;
}
@CheckForNull
public PublishMode getPublishMode() {
return publishMode;
}
public PortConfig withPublishMode(PublishMode publishMode) {
this.publishMode = publishMode;
return this;
}
public enum PublishMode {
//ingress load balancing using routing mesh.
@JsonProperty("ingress")
ingress,
//direct host level access on the host where the task is running.
@JsonProperty("host")
host
}
}