/**
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.apache.cxf.binding.soap.jms.interceptor;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.xml.bind.annotation.XmlAnyAttribute;
import javax.xml.bind.annotation.XmlAnyElement;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.namespace.QName;
public class JMSFaultType {
@XmlElement(name = "FaultCode", required = true)
protected QName faultCode;
@XmlAnyElement(lax = true)
protected List<Object> any;
@XmlAnyAttribute
private Map<QName, String> otherAttributes = new HashMap<>();
/**
* Gets the value of the faultCode property.
*
* @return possible object is {@link QName }
*/
public QName getFaultCode() {
return faultCode;
}
/**
* Sets the value of the faultCode property.
*
* @param value allowed object is {@link QName }
*/
public void setFaultCode(QName value) {
this.faultCode = value;
}
public boolean isSetFaultCode() {
return this.faultCode != null;
}
/**
* Gets the value of the any property.
* <p>
* This accessor method returns a reference to the live list, not a snapshot. Therefore any modification
* you make to the returned list will be present inside the JAXB object. This is why there is not a
* <CODE>set</CODE> method for the any property.
* <p>
* For example, to add a new item, do as follows:
*
* <pre>
* getAny().add(newItem);
* </pre>
* <p>
* Objects of the following type(s) are allowed in the list {@link Object } {@link Element }
*/
public List<Object> getAny() {
if (any == null) {
any = new ArrayList<>();
}
return this.any;
}
public boolean isSetAny() {
return (this.any != null) && (!this.any.isEmpty());
}
public void unsetAny() {
this.any = null;
}
/**
* Gets a map that contains attributes that aren't bound to any typed property on this class.
* <p>
* the map is keyed by the name of the attribute and the value is the string value of the attribute. the
* map returned by this method is live, and you can add new attribute by updating the map directly.
* Because of this design, there's no setter.
*
* @return always non-null
*/
public Map<QName, String> getOtherAttributes() {
return otherAttributes;
}
}