View Javadoc
1   
2   package org.metricshub.winrm.service.shell;
3   
4   import java.util.ArrayList;
5   import java.util.List;
6   import javax.xml.datatype.Duration;
7   import jakarta.xml.bind.annotation.XmlAccessType;
8   import jakarta.xml.bind.annotation.XmlAccessorType;
9   import jakarta.xml.bind.annotation.XmlAnyElement;
10  import jakarta.xml.bind.annotation.XmlElement;
11  import jakarta.xml.bind.annotation.XmlList;
12  import jakarta.xml.bind.annotation.XmlSchemaType;
13  import jakarta.xml.bind.annotation.XmlType;
14  import org.w3c.dom.Element;
15  
16  
17  /**
18   * <p>Java class for Shell complex type</p>.
19   * 
20   * <p>The following schema fragment specifies the expected content contained within this class.</p>
21   * 
22   * <pre>{@code
23   * <complexType name="Shell">
24   *   <complexContent>
25   *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
26   *       <sequence>
27   *         <element name="ShellId" type="{http://www.w3.org/2001/XMLSchema}anyURI" minOccurs="0"/>
28   *         <element name="Environment" type="{http://schemas.microsoft.com/wbem/wsman/1/windows/shell}EnvironmentVariableList" minOccurs="0"/>
29   *         <element name="WorkingDirectory" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
30   *         <element name="Lifetime" type="{http://www.w3.org/2001/XMLSchema}duration" minOccurs="0"/>
31   *         <element name="IdleTimeout" type="{http://www.w3.org/2001/XMLSchema}duration" minOccurs="0"/>
32   *         <element name="InputStreams" minOccurs="0">
33   *           <simpleType>
34   *             <list itemType="{http://www.w3.org/2001/XMLSchema}string" />
35   *           </simpleType>
36   *         </element>
37   *         <element name="OutputStreams" minOccurs="0">
38   *           <simpleType>
39   *             <list itemType="{http://www.w3.org/2001/XMLSchema}string" />
40   *           </simpleType>
41   *         </element>
42   *         <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/>
43   *       </sequence>
44   *     </restriction>
45   *   </complexContent>
46   * </complexType>
47   * }</pre>
48   * 
49   * 
50   */
51  @XmlAccessorType(XmlAccessType.FIELD)
52  @XmlType(name = "Shell", propOrder = {
53      "shellId",
54      "environment",
55      "workingDirectory",
56      "lifetime",
57      "idleTimeout",
58      "inputStreams",
59      "outputStreams",
60      "any"
61  })
62  public class Shell {
63  
64      @XmlElement(name = "ShellId")
65      @XmlSchemaType(name = "anyURI")
66      protected String shellId;
67      @XmlElement(name = "Environment")
68      protected EnvironmentVariableList environment;
69      @XmlElement(name = "WorkingDirectory")
70      protected String workingDirectory;
71      @XmlElement(name = "Lifetime")
72      protected Duration lifetime;
73      @XmlElement(name = "IdleTimeout")
74      protected Duration idleTimeout;
75      @XmlList
76      @XmlElement(name = "InputStreams")
77      protected List<String> inputStreams;
78      @XmlList
79      @XmlElement(name = "OutputStreams")
80      protected List<String> outputStreams;
81      @XmlAnyElement(lax = true)
82      protected List<Object> any;
83  
84      /**
85       * Gets the value of the shellId property.
86       * 
87       * @return
88       *     possible object is
89       *     {@link String }
90       *     
91       */
92      public String getShellId() {
93          return shellId;
94      }
95  
96      /**
97       * Sets the value of the shellId property.
98       * 
99       * @param value
100      *     allowed object is
101      *     {@link String }
102      *     
103      */
104     public void setShellId(String value) {
105         this.shellId = value;
106     }
107 
108     /**
109      * Gets the value of the environment property.
110      * 
111      * @return
112      *     possible object is
113      *     {@link EnvironmentVariableList }
114      *     
115      */
116     public EnvironmentVariableList getEnvironment() {
117         return environment;
118     }
119 
120     /**
121      * Sets the value of the environment property.
122      * 
123      * @param value
124      *     allowed object is
125      *     {@link EnvironmentVariableList }
126      *     
127      */
128     public void setEnvironment(EnvironmentVariableList value) {
129         this.environment = value;
130     }
131 
132     /**
133      * Gets the value of the workingDirectory property.
134      * 
135      * @return
136      *     possible object is
137      *     {@link String }
138      *     
139      */
140     public String getWorkingDirectory() {
141         return workingDirectory;
142     }
143 
144     /**
145      * Sets the value of the workingDirectory property.
146      * 
147      * @param value
148      *     allowed object is
149      *     {@link String }
150      *     
151      */
152     public void setWorkingDirectory(String value) {
153         this.workingDirectory = value;
154     }
155 
156     /**
157      * Gets the value of the lifetime property.
158      * 
159      * @return
160      *     possible object is
161      *     {@link Duration }
162      *     
163      */
164     public Duration getLifetime() {
165         return lifetime;
166     }
167 
168     /**
169      * Sets the value of the lifetime property.
170      * 
171      * @param value
172      *     allowed object is
173      *     {@link Duration }
174      *     
175      */
176     public void setLifetime(Duration value) {
177         this.lifetime = value;
178     }
179 
180     /**
181      * Gets the value of the idleTimeout property.
182      * 
183      * @return
184      *     possible object is
185      *     {@link Duration }
186      *     
187      */
188     public Duration getIdleTimeout() {
189         return idleTimeout;
190     }
191 
192     /**
193      * Sets the value of the idleTimeout property.
194      * 
195      * @param value
196      *     allowed object is
197      *     {@link Duration }
198      *     
199      */
200     public void setIdleTimeout(Duration value) {
201         this.idleTimeout = value;
202     }
203 
204     /**
205      * Gets the value of the inputStreams property.
206      * 
207      * <p>This accessor method returns a reference to the live list,
208      * not a snapshot. Therefore any modification you make to the
209      * returned list will be present inside the JAXB object.
210      * This is why there is not a <CODE>set</CODE> method for the inputStreams property.</p>
211      * 
212      * <p>
213      * For example, to add a new item, do as follows:
214      * </p>
215      * <pre>
216      * getInputStreams().add(newItem);
217      * </pre>
218      * 
219      * 
220      * <p>
221      * Objects of the following type(s) are allowed in the list
222      * {@link String }
223      * </p>
224      * 
225      * 
226      * @return
227      *     The value of the inputStreams property.
228      */
229     public List<String> getInputStreams() {
230         if (inputStreams == null) {
231             inputStreams = new ArrayList<>();
232         }
233         return this.inputStreams;
234     }
235 
236     /**
237      * Gets the value of the outputStreams property.
238      * 
239      * <p>This accessor method returns a reference to the live list,
240      * not a snapshot. Therefore any modification you make to the
241      * returned list will be present inside the JAXB object.
242      * This is why there is not a <CODE>set</CODE> method for the outputStreams property.</p>
243      * 
244      * <p>
245      * For example, to add a new item, do as follows:
246      * </p>
247      * <pre>
248      * getOutputStreams().add(newItem);
249      * </pre>
250      * 
251      * 
252      * <p>
253      * Objects of the following type(s) are allowed in the list
254      * {@link String }
255      * </p>
256      * 
257      * 
258      * @return
259      *     The value of the outputStreams property.
260      */
261     public List<String> getOutputStreams() {
262         if (outputStreams == null) {
263             outputStreams = new ArrayList<>();
264         }
265         return this.outputStreams;
266     }
267 
268     /**
269      * Gets the value of the any property.
270      * 
271      * <p>This accessor method returns a reference to the live list,
272      * not a snapshot. Therefore any modification you make to the
273      * returned list will be present inside the JAXB object.
274      * This is why there is not a <CODE>set</CODE> method for the any property.</p>
275      * 
276      * <p>
277      * For example, to add a new item, do as follows:
278      * </p>
279      * <pre>
280      * getAny().add(newItem);
281      * </pre>
282      * 
283      * 
284      * <p>
285      * Objects of the following type(s) are allowed in the list
286      * {@link Object }
287      * {@link Element }
288      * </p>
289      * 
290      * 
291      * @return
292      *     The value of the any property.
293      */
294     public List<Object> getAny() {
295         if (any == null) {
296             any = new ArrayList<>();
297         }
298         return this.any;
299     }
300 
301 }