public override int encode(IASN1TypesEncoder encoder, object obj, Stream stream, ElementInfo elementInfo) { Object result = null; ASN1ElementMetadata saveInfo = elementInfo.PreparedASN1ElementInfo; elementInfo.PreparedInfo = (valueFieldMeta); if (!CoderUtils.isNullField(valueField, elementInfo)) { result = encoder.invokeGetterMethodForField(valueField, obj, elementInfo); } if (saveInfo != null) { if (!saveInfo.HasTag && elementInfo.hasPreparedASN1ElementInfo() && elementInfo.PreparedASN1ElementInfo.HasTag) { ASN1ElementMetadata elData = new ASN1ElementMetadata( saveInfo.Name, saveInfo.IsOptional, elementInfo.PreparedASN1ElementInfo.HasTag, elementInfo.PreparedASN1ElementInfo.IsImplicitTag, elementInfo.PreparedASN1ElementInfo.TagClass, elementInfo.PreparedASN1ElementInfo.Tag, saveInfo.HasDefaultValue ); elementInfo.PreparedASN1ElementInfo = elData; } else { elementInfo.PreparedASN1ElementInfo = (saveInfo); } } return(valueFieldMeta.TypeMetadata.encode(encoder, result, stream, elementInfo)); }
public override int encode(IASN1TypesEncoder encoder, object obj, Stream stream, ElementInfo elementInfo) { Object result = null; ASN1ElementMetadata saveInfo = elementInfo.PreparedASN1ElementInfo; elementInfo.PreparedInfo = (valueFieldMeta); if (!CoderUtils.isNullField(valueField, elementInfo)) { result = encoder.invokeGetterMethodForField(valueField, obj, elementInfo); } if (saveInfo != null) { if (!saveInfo.HasTag && elementInfo.hasPreparedASN1ElementInfo() && elementInfo.PreparedASN1ElementInfo.HasTag) { ASN1ElementMetadata elData = new ASN1ElementMetadata( saveInfo.Name, saveInfo.IsOptional, elementInfo.PreparedASN1ElementInfo.HasTag, elementInfo.PreparedASN1ElementInfo.IsImplicitTag, elementInfo.PreparedASN1ElementInfo.TagClass, elementInfo.PreparedASN1ElementInfo.Tag, saveInfo.HasDefaultValue ); elementInfo.PreparedASN1ElementInfo = elData; } else elementInfo.PreparedASN1ElementInfo = (saveInfo); } return valueFieldMeta.TypeMetadata.encode(encoder, result, stream, elementInfo); }
public override int encode(IASN1TypesEncoder encoder, object obj, Stream stream, ElementInfo elementInfo) { return encoder.encodeSequence(obj, stream, elementInfo); }
public abstract int encode(IASN1TypesEncoder encoder, object obj, Stream stream, ElementInfo elementInfo);
public override int encode(IASN1TypesEncoder encoder, object obj, Stream stream, ElementInfo elementInfo) { return(encoder.encodeAny(obj, stream, elementInfo)); }
public override int encode(IASN1TypesEncoder encoder, object obj, Stream stream, ElementInfo elementInfo) { return(encoder.encodeEnumItem(obj, enumClass, stream, elementInfo)); }
public override int encode(IASN1TypesEncoder encoder, object obj, Stream stream, ElementInfo elementInfo) { return encoder.encodeEnumItem(obj, enumClass, stream, elementInfo); }