Systemd::jsonSerialize()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 0
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace CyberLine\SystemdState\Types;
4
5
class Systemd implements TypesInterface, \JsonSerializable
6
{
7
    /** @var string */
8
    protected $Architecture;
9
10
    /** @var boolean */
11
    protected $ConfirmSpawn;
12
13
    /** @var boolean */
14
    protected $DefaultBlockIOAccounting;
15
16
    /** @var boolean */
17
    protected $DefaultCPUAccounting;
18
19
    protected $DefaultLimitAS;
20
21
    protected $DefaultLimitASSoft;
22
23
    protected $DefaultLimitCORE;
24
25
    protected $DefaultLimitCORESoft;
26
27
    protected $DefaultLimitCPU;
28
29
    protected $DefaultLimitCPUSoft;
30
31
    protected $DefaultLimitDATA;
32
33
    protected $DefaultLimitDATASoft;
34
35
    protected $DefaultLimitFSIZE;
36
37
    protected $DefaultLimitFSIZESoft;
38
39
    protected $DefaultLimitLOCKS;
40
41
    protected $DefaultLimitLOCKSSoft;
42
43
    protected $DefaultLimitMEMLOCK;
44
45
    protected $DefaultLimitMEMLOCKSoft;
46
47
    protected $DefaultLimitMSGQUEUE;
48
49
    protected $DefaultLimitMSGQUEUESoft;
50
51
    protected $DefaultLimitNICE;
52
53
    protected $DefaultLimitNICESoft;
54
55
    protected $DefaultLimitNOFILE;
56
57
    protected $DefaultLimitNOFILESoft;
58
59
    protected $DefaultLimitNPROC;
60
61
    protected $DefaultLimitNPROCSoft;
62
63
    protected $DefaultLimitRSS;
64
65
    protected $DefaultLimitRSSSoft;
66
67
    protected $DefaultLimitRTPRIO;
68
69
    protected $DefaultLimitRTPRIOSoft;
70
71
    protected $DefaultLimitRTTIME;
72
73
    protected $DefaultLimitRTTIMESoft;
74
75
    protected $DefaultLimitSIGPENDING;
76
77
    protected $DefaultLimitSIGPENDINGSoft;
78
79
    protected $DefaultLimitSTACK;
80
81
    protected $DefaultLimitSTACKSoft;
82
83
    /** @var boolean */
84
    protected $DefaultMemoryAccounting;
85
86
    /** @var string */
87
    protected $DefaultRestartUSec;
88
89
    /** @var string */
90
    protected $DefaultStandardError;
91
92
    /** @var string */
93
    protected $DefaultStandardOutput;
94
95
    /** @var integer */
96
    protected $DefaultStartLimitBurst;
97
98
    /** @var integer */
99
    protected $DefaultStartLimitInterval;
100
101
    /** @var integer */
102
    protected $DefaultStartLimitIntervalSec;
103
104
    /** @var boolean */
105
    protected $DefaultTasksAccounting;
106
107
    protected $DefaultTasksMax;
108
109
    /** @var string */
110
    protected $DefaultTimeoutStartUSec;
111
112
    /** @var string */
113
    protected $DefaultTimeoutStopUSec;
114
115
    /** @var string */
116
    protected $DefaultTimerAccuracyUSec;
117
118
    /** @var array */
119
    protected $Environment = [];
120
121
    /** @var array */
122
    protected $Features = [];
123
124
    /** @var \DateTimeImmutable */
125
    protected $FinishTimestamp;
126
127
    /** @var integer */
128
    protected $FinishTimestampMonotonic;
129
130
    /** @var integer */
131
    protected $FirmwareTimestampMonotonic;
132
133
    /** @var \DateTimeImmutable */
134
    protected $GeneratorsFinishTimestamp;
135
136
    /** @var integer */
137
    protected $GeneratorsFinishTimestampMonotonic;
138
139
    /** @var \DateTimeImmutable */
140
    protected $GeneratorsStartTimestamp;
141
142
    /** @var integer */
143
    protected $GeneratorsStartTimestampMonotonic;
144
145
    /** @var \DateTimeImmutable */
146
    protected $InitRDTimestamp;
147
148
    /** @var integer */
149
    protected $InitRDTimestampMonotonic;
150
151
    /** @var \DateTimeImmutable */
152
    protected $KernelTimestamp;
153
154
    /** @var integer */
155
    protected $KernelTimestampMonotonic;
156
157
    /** @var integer */
158
    protected $LoaderTimestampMonotonic;
159
160
    /** @var string */
161
    protected $LogLevel;
162
163
    /** @var string */
164
    protected $LogTarget;
165
166
    /** @var integer */
167
    protected $NFailedJobs;
168
169
    /** @var integer */
170
    protected $NFailedUnits;
171
172
    /** @var integer */
173
    protected $NInstalledJobs;
174
175
    /** @var integer */
176
    protected $NJobs;
177
178
    /** @var integer */
179
    protected $NNames;
180
    
181
    protected $Progress;
182
183
    /** @var integer */
184
    protected $RuntimeWatchdogUSec;
185
186
    /** @var \DateTimeImmutable */
187
    protected $SecurityFinishTimestamp;
188
189
    /** @var integer */
190
    protected $SecurityFinishTimestampMonotonic;
191
192
    /** @var \DateTimeImmutable */
193
    protected $SecurityStartTimestamp;
194
195
    /** @var integer */
196
    protected $SecurityStartTimestampMonotonic;
197
198
    /** @var boolean */
199
    protected $ShowStatus;
200
201
    /** @var string */
202
    protected $ShutdownWatchdogUSec;
203
204
    /** @var string */
205
    protected $SystemState;
206
207
    /** @var integer */
208
    protected $TimerSlackNSec;
209
210
    /** @var array */
211
    protected $UnitPath = [];
212
213
    /** @var \DateTimeImmutable */
214
    protected $UnitsLoadFinishTimestamp;
215
216
    /** @var integer */
217
    protected $UnitsLoadFinishTimestampMonotonic;
218
219
    /** @var \DateTimeImmutable */
220
    protected $UnitsLoadStartTimestamp;
221
222
    /** @var integer */
223
    protected $UnitsLoadStartTimestampMonotonic;
224
225
    /** @var \DateTimeImmutable */
226
    protected $UserspaceTimestamp;
227
228
    /** @var integer */
229
    protected $UserspaceTimestampMonotonic;
230
231
    /** @var integer */
232
    protected $Version;
233
234
    /** @var string */
235
    protected $Virtualization;
236
237
    public function __call($name, $value)
238
    {
239
        $action = substr($name, 0, 3);
240
        $property = substr($name, 3);
241
242
        if ($action === 'set') {
243
            $this->{$property} = $value[0];
244
        }
245
246
        if ($action === 'get') {
247
            return $this->{$property};
248
        }
249
250
        return $this;
251
    }
252
253
    public function getId()
254
    {
255
        return 'systemd';
256
    }
257
258
    public function jsonSerialize()
259
    {
260
        return get_object_vars($this);
261
    }
262
}
263