From 22094368c2865dcfb6daf8366425212b721a4657 Mon Sep 17 00:00:00 2001
From: matthew_swift <matthew_swift@localhost>
Date: Thu, 05 Feb 2009 17:42:14 +0000
Subject: [PATCH] Merge ASN1 branch to trunk
---
opends/src/server/org/opends/server/extensions/GetConnectionIDExtendedOperation.java | 41 ++++++++++++++++++++++++++++++++---------
1 files changed, 32 insertions(+), 9 deletions(-)
diff --git a/opends/src/server/org/opends/server/extensions/GetConnectionIDExtendedOperation.java b/opends/src/server/org/opends/server/extensions/GetConnectionIDExtendedOperation.java
index 5631910..f17cc74 100644
--- a/opends/src/server/org/opends/server/extensions/GetConnectionIDExtendedOperation.java
+++ b/opends/src/server/org/opends/server/extensions/GetConnectionIDExtendedOperation.java
@@ -34,14 +34,16 @@
import org.opends.server.config.ConfigException;
import org.opends.server.core.DirectoryServer;
import org.opends.server.core.ExtendedOperation;
-import org.opends.server.protocols.asn1.ASN1Exception;
-import org.opends.server.protocols.asn1.ASN1Long;
-import org.opends.server.protocols.asn1.ASN1OctetString;
import org.opends.server.types.InitializationException;
import org.opends.server.types.ResultCode;
+import org.opends.server.types.ByteString;
+import org.opends.server.types.ByteStringBuilder;
-import static org.opends.messages.ExtensionMessages.*;
import static org.opends.server.util.ServerConstants.*;
+import org.opends.server.protocols.asn1.ASN1Writer;
+import org.opends.server.protocols.asn1.ASN1;
+import org.opends.server.protocols.asn1.ASN1Exception;
+import org.opends.server.protocols.asn1.ASN1Reader;
/**
@@ -114,9 +116,21 @@
*
* @return The ASN.1 octet string containing the encoded connection ID.
*/
- public static ASN1OctetString encodeResponseValue(long connectionID)
+ public static ByteString encodeResponseValue(long connectionID)
{
- return new ASN1OctetString(new ASN1Long(connectionID).encode());
+ ByteStringBuilder builder = new ByteStringBuilder(8);
+ ASN1Writer writer = ASN1.getWriter(builder);
+
+ try
+ {
+ writer.writeInteger(connectionID);
+ }
+ catch(Exception e)
+ {
+ // TODO: DO something.
+ }
+
+ return builder.toByteString();
}
@@ -128,13 +142,22 @@
*
* @return The connection ID decoded from the provided response value.
*
- * @throws ASN1Exception If an error occurs while trying to decode the
+ * @throws ASN1Exception If an error occurs while trying to decode the
* response value.
*/
- public static long decodeResponseValue(ASN1OctetString responseValue)
+ public static long decodeResponseValue(ByteString responseValue)
throws ASN1Exception
{
- return ASN1Long.decodeAsLong(responseValue.value()).longValue();
+ ASN1Reader reader = ASN1.getReader(responseValue);
+ try
+ {
+ return reader.readInteger();
+ }
+ catch(Exception e)
+ {
+ // TODO: DO something
+ return 0;
+ }
}
}
--
Gitblit v1.10.0