20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package jdk.internal.platform;
27
28 /**
29 * Data structure to hold info from /proc/self/cgroup
30 *
31 * man 7 cgroups
32 *
33 * @see CgroupSubsystemFactory
34 */
35 class CgroupInfo {
36
37 private final String name;
38 private final int hierarchyId;
39 private final boolean enabled;
40 private String cgroupPath;
41
42 private CgroupInfo(String name, int hierarchyId, boolean enabled) {
43 this.name = name;
44 this.hierarchyId = hierarchyId;
45 this.enabled = enabled;
46 }
47
48 String getName() {
49 return name;
50 }
51
52 int getHierarchyId() {
53 return hierarchyId;
54 }
55
56 boolean isEnabled() {
57 return enabled;
58 }
59
60 String getCgroupPath() {
61 return cgroupPath;
62 }
63
64 void setCgroupPath(String cgroupPath) {
65 this.cgroupPath = cgroupPath;
66 }
67
68 static CgroupInfo fromCgroupsLine(String line) {
69 String[] tokens = line.split("\\s+");
70 if (tokens.length != 4) {
71 return null;
72 }
73 // discard 3'rd field, num_cgroups
74 return new CgroupInfo(tokens[0] /* name */,
75 Integer.parseInt(tokens[1]) /* hierarchyId */,
76 (Integer.parseInt(tokens[3]) == 1) /* enabled */);
77 }
78
79 }
|
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package jdk.internal.platform;
27
28 /**
29 * Data structure to hold info from /proc/self/cgroup
30 *
31 * man 7 cgroups
32 *
33 * @see CgroupSubsystemFactory
34 */
35 class CgroupInfo {
36
37 private final String name;
38 private final int hierarchyId;
39 private final boolean enabled;
40
41 private CgroupInfo(String name, int hierarchyId, boolean enabled) {
42 this.name = name;
43 this.hierarchyId = hierarchyId;
44 this.enabled = enabled;
45 }
46
47 String getName() {
48 return name;
49 }
50
51 int getHierarchyId() {
52 return hierarchyId;
53 }
54
55 boolean isEnabled() {
56 return enabled;
57 }
58
59 static CgroupInfo fromCgroupsLine(String line) {
60 String[] tokens = line.split("\\s+");
61 if (tokens.length != 4) {
62 return null;
63 }
64 // discard 3'rd field, num_cgroups
65 return new CgroupInfo(tokens[0] /* name */,
66 Integer.parseInt(tokens[1]) /* hierarchyId */,
67 (Integer.parseInt(tokens[3]) == 1) /* enabled */);
68 }
69
70 }
|