本文整理汇总了Java中com.digitalpetri.opcua.stack.core.types.builtin.XmlElement类的典型用法代码示例。如果您正苦于以下问题:Java XmlElement类的具体用法?Java XmlElement怎么用?Java XmlElement使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
XmlElement类属于com.digitalpetri.opcua.stack.core.types.builtin包,在下文中一共展示了XmlElement类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: encodeToXmlElement
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
@Override
public XmlElement encodeToXmlElement(Object object, NodeId encodingTypeId) {
try {
EncoderDelegate<Object> delegate = DelegateRegistry.getEncoder(encodingTypeId);
StringWriter stringWriter = new StringWriter();
XmlEncoder encoder = new XmlEncoder();
encoder.setOutput(stringWriter);
delegate.encode(object, encoder);
return new XmlElement(stringWriter.toString());
} catch (XMLStreamException e) {
throw new UaSerializationException(StatusCodes.Bad_EncodingError, e);
}
}
示例2: encodeExtensionObject
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
@Override
public void encodeExtensionObject(String field, ExtensionObject value) {
if (value != null) {
write(field, Unchecked.consumer(w -> {
encodeNodeId("TypeId", value.getEncodingTypeId());
Object object = value.getEncoded();
if (object instanceof UaSerializable) {
UaSerializable serializable = (UaSerializable) object;
encodeSerializable("Body", serializable);
} else if (object instanceof ByteString) {
ByteString byteString = (ByteString) object;
streamWriter.writeStartElement("Body");
encodeByteString("ByteString", byteString);
streamWriter.writeEndElement();
} else if (object instanceof XmlElement) {
XmlElement xmlElement = (XmlElement) object;
encodeXmlElement("Body", xmlElement);
}
}));
}
}
示例3: decodeXmlElement
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
@Override
public XmlElement decodeXmlElement(String field) throws UaSerializationException {
ByteString byteString = decodeByteString(null);
byte[] bs = byteString.bytes();
if (bs == null) {
return new XmlElement(null);
} else {
try {
String fragment = new String(bs, "UTF-8");
return new XmlElement(fragment);
} catch (UnsupportedEncodingException e) {
throw new UaSerializationException(StatusCodes.Bad_DecodingError, e);
}
}
}
示例4: decodeExtensionObject
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
@Override
public ExtensionObject decodeExtensionObject(String field) throws UaSerializationException {
NodeId encodingTypeId = decodeNodeId(null);
int encoding = buffer.readByte();
if (encoding == 0) {
return new ExtensionObject((ByteString) null, encodingTypeId);
} else if (encoding == 1) {
ByteString byteString = decodeByteString(null);
return new ExtensionObject(byteString, encodingTypeId);
} else if (encoding == 2) {
XmlElement xmlElement = decodeXmlElement(null);
return new ExtensionObject(xmlElement, encodingTypeId);
} else {
throw new UaSerializationException(StatusCodes.Bad_DecodingError, "unknown ExtensionObject encoding: " + encoding);
}
}
示例5: decodeFromXmlElement
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
@Override
public Object decodeFromXmlElement(XmlElement encoded, NodeId encodingTypeId) {
try {
DecoderDelegate<Object> delegate = DelegateRegistry.getDecoder(encodingTypeId);
XmlDecoder decoder = new XmlDecoder();
decoder.setInput(new StringReader(encoded.getFragment()));
return delegate.decode(decoder);
} catch (XMLStreamException e) {
throw new UaSerializationException(StatusCodes.Bad_DecodingError, e);
}
}
示例6: decodeExtensionObject
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
@Override
public ExtensionObject decodeExtensionObject(String field) {
if (nextStartElement(field)) {
NodeId encodingTypeId = NodeId.NULL_VALUE;
Object body = null;
if (nextStartElement("TypeId")) {
encodingTypeId = decodeNodeId(null);
requireNextEndElement("TypeId");
}
if (nextStartElement("Body")) {
try {
body = decodeExtensionObjectBody();
} catch (XMLStreamException e) {
throw new UaSerializationException(StatusCodes.Bad_DecodingError, e);
}
requireNextEndElement("Body");
}
requireNextEndElement(field);
if (body instanceof XmlElement) {
return new ExtensionObject((XmlElement) body, encodingTypeId);
} else if (body instanceof ByteString) {
return new ExtensionObject((ByteString) body, encodingTypeId);
} else {
throw new UaSerializationException(StatusCodes.Bad_DecodingError,
"unrecognized ExtensionObject body: " + body);
}
} else {
return new ExtensionObject(ByteString.NULL_VALUE, NodeId.NULL_VALUE);
}
}
示例7: encodeXmlElement
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
@Override
public void encodeXmlElement(String field, XmlElement value) throws UaSerializationException {
if (value == null || value.isNull()) {
buffer.writeInt(-1);
} else {
try {
encodeByteString(null, new ByteString(value.getFragment().getBytes("UTF-8")));
} catch (UnsupportedEncodingException e) {
throw new UaSerializationException(StatusCodes.Bad_DecodingError, e);
}
}
}
示例8: encodeExtensionObject
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
@Override
public void encodeExtensionObject(String field, ExtensionObject value) throws UaSerializationException {
if (value == null || value.getEncoded() == null) {
encodeNodeId(null, NodeId.NULL_VALUE);
buffer.writeByte(0); // No body is encoded
} else {
Object object = value.getEncoded();
switch (value.getBodyType()) {
case ByteString: {
ByteString byteString = (ByteString) object;
encodeNodeId(null, value.getEncodingTypeId());
buffer.writeByte(1); // Body is binary encoded
encodeByteString(null, byteString);
break;
}
case XmlElement: {
XmlElement xmlElement = (XmlElement) object;
encodeNodeId(null, value.getEncodingTypeId());
buffer.writeByte(2);
encodeXmlElement(null, xmlElement);
break;
}
}
}
}
示例9: ScalarTestType
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
public ScalarTestType(Boolean _boolean, Byte _sByte, UByte _byte, Short _int16, UShort _uInt16, Integer _int32, UInteger _uInt32, Long _int64, ULong _uInt64, Float _float, Double _double, String _string, DateTime _dateTime, UUID _guid, ByteString _byteString, XmlElement _xmlElement, NodeId _nodeId, ExpandedNodeId _expandedNodeId, StatusCode _statusCode, DiagnosticInfo _diagnosticInfo, QualifiedName _qualifiedName, LocalizedText _localizedText, ExtensionObject _extensionObject, DataValue _dataValue, EnumeratedTestType _enumeratedValue) {
this._boolean = _boolean;
this._sByte = _sByte;
this._byte = _byte;
this._int16 = _int16;
this._uInt16 = _uInt16;
this._int32 = _int32;
this._uInt32 = _uInt32;
this._int64 = _int64;
this._uInt64 = _uInt64;
this._float = _float;
this._double = _double;
this._string = _string;
this._dateTime = _dateTime;
this._guid = _guid;
this._byteString = _byteString;
this._xmlElement = _xmlElement;
this._nodeId = _nodeId;
this._expandedNodeId = _expandedNodeId;
this._statusCode = _statusCode;
this._diagnosticInfo = _diagnosticInfo;
this._qualifiedName = _qualifiedName;
this._localizedText = _localizedText;
this._extensionObject = _extensionObject;
this._dataValue = _dataValue;
this._enumeratedValue = _enumeratedValue;
}
示例10: decode
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
public static ScalarTestType decode(UaDecoder decoder) {
Boolean _boolean = decoder.decodeBoolean("Boolean");
Byte _sByte = decoder.decodeSByte("SByte");
UByte _byte = decoder.decodeByte("Byte");
Short _int16 = decoder.decodeInt16("Int16");
UShort _uInt16 = decoder.decodeUInt16("UInt16");
Integer _int32 = decoder.decodeInt32("Int32");
UInteger _uInt32 = decoder.decodeUInt32("UInt32");
Long _int64 = decoder.decodeInt64("Int64");
ULong _uInt64 = decoder.decodeUInt64("UInt64");
Float _float = decoder.decodeFloat("Float");
Double _double = decoder.decodeDouble("Double");
String _string = decoder.decodeString("String");
DateTime _dateTime = decoder.decodeDateTime("DateTime");
UUID _guid = decoder.decodeGuid("Guid");
ByteString _byteString = decoder.decodeByteString("ByteString");
XmlElement _xmlElement = decoder.decodeXmlElement("XmlElement");
NodeId _nodeId = decoder.decodeNodeId("NodeId");
ExpandedNodeId _expandedNodeId = decoder.decodeExpandedNodeId("ExpandedNodeId");
StatusCode _statusCode = decoder.decodeStatusCode("StatusCode");
DiagnosticInfo _diagnosticInfo = decoder.decodeDiagnosticInfo("DiagnosticInfo");
QualifiedName _qualifiedName = decoder.decodeQualifiedName("QualifiedName");
LocalizedText _localizedText = decoder.decodeLocalizedText("LocalizedText");
ExtensionObject _extensionObject = decoder.decodeExtensionObject("ExtensionObject");
DataValue _dataValue = decoder.decodeDataValue("DataValue");
EnumeratedTestType _enumeratedValue = decoder.decodeEnumeration("EnumeratedValue", EnumeratedTestType.class);
return new ScalarTestType(_boolean, _sByte, _byte, _int16, _uInt16, _int32, _uInt32, _int64, _uInt64, _float, _double, _string, _dateTime, _guid, _byteString, _xmlElement, _nodeId, _expandedNodeId, _statusCode, _diagnosticInfo, _qualifiedName, _localizedText, _extensionObject, _dataValue, _enumeratedValue);
}
示例11: ArrayTestType
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
public ArrayTestType(Boolean[] _booleans, Byte[] _sBytes, Short[] _int16s, UShort[] _uInt16s, Integer[] _int32s, UInteger[] _uInt32s, Long[] _int64s, ULong[] _uInt64s, Float[] _floats, Double[] _doubles, String[] _strings, DateTime[] _dateTimes, UUID[] _guids, ByteString[] _byteStrings, XmlElement[] _xmlElements, NodeId[] _nodeIds, ExpandedNodeId[] _expandedNodeIds, StatusCode[] _statusCodes, DiagnosticInfo[] _diagnosticInfos, QualifiedName[] _qualifiedNames, LocalizedText[] _localizedTexts, ExtensionObject[] _extensionObjects, DataValue[] _dataValues, Variant[] _variants, EnumeratedTestType[] _enumeratedValues) {
this._booleans = _booleans;
this._sBytes = _sBytes;
this._int16s = _int16s;
this._uInt16s = _uInt16s;
this._int32s = _int32s;
this._uInt32s = _uInt32s;
this._int64s = _int64s;
this._uInt64s = _uInt64s;
this._floats = _floats;
this._doubles = _doubles;
this._strings = _strings;
this._dateTimes = _dateTimes;
this._guids = _guids;
this._byteStrings = _byteStrings;
this._xmlElements = _xmlElements;
this._nodeIds = _nodeIds;
this._expandedNodeIds = _expandedNodeIds;
this._statusCodes = _statusCodes;
this._diagnosticInfos = _diagnosticInfos;
this._qualifiedNames = _qualifiedNames;
this._localizedTexts = _localizedTexts;
this._extensionObjects = _extensionObjects;
this._dataValues = _dataValues;
this._variants = _variants;
this._enumeratedValues = _enumeratedValues;
}
示例12: decode
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
public static ArrayTestType decode(UaDecoder decoder) {
Boolean[] _booleans = decoder.decodeArray("Booleans", decoder::decodeBoolean, Boolean.class);
Byte[] _sBytes = decoder.decodeArray("SBytes", decoder::decodeSByte, Byte.class);
Short[] _int16s = decoder.decodeArray("Int16s", decoder::decodeInt16, Short.class);
UShort[] _uInt16s = decoder.decodeArray("UInt16s", decoder::decodeUInt16, UShort.class);
Integer[] _int32s = decoder.decodeArray("Int32s", decoder::decodeInt32, Integer.class);
UInteger[] _uInt32s = decoder.decodeArray("UInt32s", decoder::decodeUInt32, UInteger.class);
Long[] _int64s = decoder.decodeArray("Int64s", decoder::decodeInt64, Long.class);
ULong[] _uInt64s = decoder.decodeArray("UInt64s", decoder::decodeUInt64, ULong.class);
Float[] _floats = decoder.decodeArray("Floats", decoder::decodeFloat, Float.class);
Double[] _doubles = decoder.decodeArray("Doubles", decoder::decodeDouble, Double.class);
String[] _strings = decoder.decodeArray("Strings", decoder::decodeString, String.class);
DateTime[] _dateTimes = decoder.decodeArray("DateTimes", decoder::decodeDateTime, DateTime.class);
UUID[] _guids = decoder.decodeArray("Guids", decoder::decodeGuid, UUID.class);
ByteString[] _byteStrings = decoder.decodeArray("ByteStrings", decoder::decodeByteString, ByteString.class);
XmlElement[] _xmlElements = decoder.decodeArray("XmlElements", decoder::decodeXmlElement, XmlElement.class);
NodeId[] _nodeIds = decoder.decodeArray("NodeIds", decoder::decodeNodeId, NodeId.class);
ExpandedNodeId[] _expandedNodeIds = decoder.decodeArray("ExpandedNodeIds", decoder::decodeExpandedNodeId, ExpandedNodeId.class);
StatusCode[] _statusCodes = decoder.decodeArray("StatusCodes", decoder::decodeStatusCode, StatusCode.class);
DiagnosticInfo[] _diagnosticInfos = decoder.decodeArray("DiagnosticInfos", decoder::decodeDiagnosticInfo, DiagnosticInfo.class);
QualifiedName[] _qualifiedNames = decoder.decodeArray("QualifiedNames", decoder::decodeQualifiedName, QualifiedName.class);
LocalizedText[] _localizedTexts = decoder.decodeArray("LocalizedTexts", decoder::decodeLocalizedText, LocalizedText.class);
ExtensionObject[] _extensionObjects = decoder.decodeArray("ExtensionObjects", decoder::decodeExtensionObject, ExtensionObject.class);
DataValue[] _dataValues = decoder.decodeArray("DataValues", decoder::decodeDataValue, DataValue.class);
Variant[] _variants = decoder.decodeArray("Variants", decoder::decodeVariant, Variant.class);
EnumeratedTestType[] _enumeratedValues = decoder.decodeArray("EnumeratedValues", decoder::decodeEnumeration, EnumeratedTestType.class);
return new ArrayTestType(_booleans, _sBytes, _int16s, _uInt16s, _int32s, _uInt32s, _int64s, _uInt64s, _floats, _doubles, _strings, _dateTimes, _guids, _byteStrings, _xmlElements, _nodeIds, _expandedNodeIds, _statusCodes, _diagnosticInfos, _qualifiedNames, _localizedTexts, _extensionObjects, _dataValues, _variants, _enumeratedValues);
}
示例13: getXmlElements
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
@DataProvider(name = "XmlElementProvider")
public Object[][] getXmlElements() {
return new Object[][]{
{new XmlElement(null)},
{new XmlElement("<tag>hello, world</tag>")},
};
}
示例14: testXmlElementRoundTrip
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
@Test(dataProvider = "XmlElementProvider", description = "XmlElement is round-trip serializable.")
public void testXmlElementRoundTrip(XmlElement element) throws Exception {
encoder.encodeXmlElement(null, element);
XmlElement decoded = decoder.decodeXmlElement(null);
assertEquals(decoded, element);
}
示例15: getExtensionObjects
import com.digitalpetri.opcua.stack.core.types.builtin.XmlElement; //导入依赖的package包/类
@DataProvider
public Object[][] getExtensionObjects() {
return new Object[][]{
{new ExtensionObject(ByteString.of(new byte[]{1, 2, 3, 4}), new NodeId(1, 2))},
{new ExtensionObject(XmlElement.of("<a>hello</a>"), new NodeId(1, 2))},
};
}