You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by el...@apache.org on 2005/08/03 00:22:26 UTC
svn commit: r227090 -
/directory/sandbox/trunk/asn1-new-codec/src/java/org/apache/asn1/ber/tlv/Value.java
Author: elecharny
Date: Tue Aug 2 15:22:21 2005
New Revision: 227090
URL: http://svn.apache.org/viewcvs?rev=227090&view=rev
Log:
Added a method to encode an OID
Modified:
directory/sandbox/trunk/asn1-new-codec/src/java/org/apache/asn1/ber/tlv/Value.java
Modified: directory/sandbox/trunk/asn1-new-codec/src/java/org/apache/asn1/ber/tlv/Value.java
URL: http://svn.apache.org/viewcvs/directory/sandbox/trunk/asn1-new-codec/src/java/org/apache/asn1/ber/tlv/Value.java?rev=227090&r1=227089&r2=227090&view=diff
==============================================================================
--- directory/sandbox/trunk/asn1-new-codec/src/java/org/apache/asn1/ber/tlv/Value.java (original)
+++ directory/sandbox/trunk/asn1-new-codec/src/java/org/apache/asn1/ber/tlv/Value.java Tue Aug 2 15:22:21 2005
@@ -17,6 +17,7 @@
package org.apache.asn1.ber.tlv;
import org.apache.asn1.EncoderException;
+import org.apache.asn1.primitives.OID;
import org.apache.asn1.primitives.OctetString;
import org.apache.asn1.util.MutableString;
import org.apache.asn1.util.StringUtils;
@@ -286,6 +287,37 @@
if ( string.getLength() != 0 )
{
buffer.put( string.getValue() );
+ }
+ }
+ catch ( BufferOverflowException boe )
+ {
+ throw new EncoderException("The PDU buffer size is too small !");
+ }
+
+ return;
+ }
+
+ /**
+ * Encode an OID value
+ *
+ * @param buffer The PDU in which the value will be put
+ * @param string The OID to be encoded
+ */
+ public static void encode( ByteBuffer buffer, OID oid ) throws EncoderException
+ {
+ if ( buffer == null )
+ {
+ throw new EncoderException( "Cannot put a PDU in a null buffer !" );
+ }
+
+ try
+ {
+ buffer.put( UniversalTag.OCTET_STRING_TAG );
+ buffer.put( Length.getBytes( oid.getOIDLength() ) );
+
+ if ( oid.getOIDLength() != 0 )
+ {
+ buffer.put( oid.getOID() );
}
}
catch ( BufferOverflowException boe )