![JAR search and dependency download from the Maven repository](/logo.png)
com.braintree.org.bouncycastle.asn1.LazyDERSequence Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of encryption Show documentation
Show all versions of encryption Show documentation
Client side encryption for Braintree integrations on Android.
The newest version!
package com.braintree.org.bouncycastle.asn1;
import java.io.IOException;
import java.util.Enumeration;
public class LazyDERSequence
extends DERSequence
{
private byte[] encoded;
private boolean parsed = false;
private int size = -1;
LazyDERSequence(
byte[] encoded)
throws IOException
{
this.encoded = encoded;
}
private void parse()
{
Enumeration en = new LazyDERConstructionEnumeration(encoded);
while (en.hasMoreElements())
{
addObject((DEREncodable)en.nextElement());
}
parsed = true;
}
public synchronized DEREncodable getObjectAt(int index)
{
if (!parsed)
{
parse();
}
return super.getObjectAt(index);
}
public synchronized Enumeration getObjects()
{
if (parsed)
{
return super.getObjects();
}
return new LazyDERConstructionEnumeration(encoded);
}
public int size()
{
if (size < 0)
{
Enumeration en = new LazyDERConstructionEnumeration(encoded);
size = 0;
while (en.hasMoreElements())
{
en.nextElement();
size++;
}
}
return size;
}
void encode(
DEROutputStream out)
throws IOException
{
out.writeEncoded(SEQUENCE | CONSTRUCTED, encoded);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy