Module: Binenc::Ruby::ASN1Object
- Includes:
- BinaryObject, TR::CondUtils
- Included in:
- ASN1Binary, ASN1DateTime, ASN1Integer, ASN1OID, ASN1Sequence, ASN1String
- Defined in:
- lib/binenc/asn1_engine/asn1_object.rb
Instance Attribute Summary collapse
-
#value ⇒ Object
Returns the value of attribute value.
Class Method Summary collapse
Instance Method Summary collapse
Instance Attribute Details
#value ⇒ Object
Returns the value of attribute value.
10 11 12 |
# File 'lib/binenc/asn1_engine/asn1_object.rb', line 10 def value @value end |
Class Method Details
.decode(bin) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/binenc/asn1_engine/asn1_object.rb', line 20 def self.decode(bin) if not_empty?(bin) obj = OpenSSL::ASN1.decode(bin) case obj when OpenSSL::ASN1::BitString #logger.debug "Found bitstring value : #{obj.value}" ASN1Binary.new(obj.value) when OpenSSL::ASN1::UTF8String #logger.debug "Found UTF8String value : #{obj.value}" ASN1String.new(obj.value) when OpenSSL::ASN1::Integer #logger.debug "Found Integer value : #{obj.value}" ASN1Integer.new(obj.value) when OpenSSL::ASN1::Sequence #logger.debug "Found sequence value : #{obj.value}" ASN1Sequence.new(obj.value) when OpenSSL::ASN1::GeneralizedTime #logger.debug "Found GeneralizedTime value : #{obj.value}" ASN1DateTime.new(obj.value) when OpenSSL::ASN1::ObjectId #logger.debug "Found ObjectId value : #{obj.value}" ASN1OID.new(obj.value) else raise BinencEngineException, "Unhandled ASN1 object '#{obj.class}'" end else raise BinencEngineException, "Cannot decode empty binary #{bin}" end end |
Instance Method Details
#initialize(*args, &block) ⇒ Object
12 13 14 |
# File 'lib/binenc/asn1_engine/asn1_object.rb', line 12 def initialize(*args, &block) @value = args.first end |
#is_equal?(val) ⇒ Boolean
16 17 18 |
# File 'lib/binenc/asn1_engine/asn1_object.rb', line 16 def is_equal?(val) @value == val end |