Package org.gudy.bouncycastle.asn1
Class DERGeneralizedTime
java.lang.Object
org.gudy.bouncycastle.asn1.ASN1Encodable
org.gudy.bouncycastle.asn1.DERObject
org.gudy.bouncycastle.asn1.ASN1Object
org.gudy.bouncycastle.asn1.DERGeneralizedTime
- All Implemented Interfaces:
DEREncodable
,DERTags
Generalized time object.
-
Field Summary
FieldsFields inherited from class org.gudy.bouncycastle.asn1.ASN1Encodable
BER, DER
Fields inherited from interface org.gudy.bouncycastle.asn1.DERTags
APPLICATION, BIT_STRING, BMP_STRING, BOOLEAN, CONSTRUCTED, ENUMERATED, EXTERNAL, GENERAL_STRING, GENERALIZED_TIME, GRAPHIC_STRING, IA5_STRING, INTEGER, NULL, NUMERIC_STRING, OBJECT_IDENTIFIER, OCTET_STRING, PRINTABLE_STRING, SEQUENCE, SEQUENCE_OF, SET, SET_OF, T61_STRING, TAGGED, UNIVERSAL_STRING, UTC_TIME, UTF8_STRING, VIDEOTEX_STRING, VISIBLE_STRING
-
Constructor Summary
ConstructorsConstructorDescriptionDERGeneralizedTime
(byte[] bytes) DERGeneralizedTime
(String time) The correct format for this is YYYYMMDDHHMMSS[.f]Z, or without the Z for local time, or Z+-HHMM on the end, for difference between local time and UTC time.DERGeneralizedTime
(Date time) base constructer from a java.util.date object -
Method Summary
Modifier and TypeMethodDescription(package private) boolean
private String
private String
convert
(int time) (package private) void
encode
(DEROutputStream out) getDate()
static DERGeneralizedTime
getInstance
(Object obj) return a generalized time from the passed in objectstatic DERGeneralizedTime
getInstance
(ASN1TaggedObject obj, boolean explicit) return a Generalized Time object from a tagged object.private byte[]
getTime()
return the time - always in the form of YYYYMMDDhhmmssGMT(+hh:mm|-hh:mm).Return the time.private boolean
int
hashCode()
Methods inherited from class org.gudy.bouncycastle.asn1.ASN1Object
equals, fromByteArray
Methods inherited from class org.gudy.bouncycastle.asn1.DERObject
toASN1Object
Methods inherited from class org.gudy.bouncycastle.asn1.ASN1Encodable
getDEREncoded, getDERObject, getEncoded, getEncoded
-
Field Details
-
time
String time
-
-
Constructor Details
-
DERGeneralizedTime
The correct format for this is YYYYMMDDHHMMSS[.f]Z, or without the Z for local time, or Z+-HHMM on the end, for difference between local time and UTC time. The fractional second amount f must consist of at least one number with trailing zeroes removed.- Parameters:
time
- the time string.- Throws:
IllegalArgumentException
- if String is an illegal format.
-
DERGeneralizedTime
base constructer from a java.util.date object -
DERGeneralizedTime
DERGeneralizedTime(byte[] bytes)
-
-
Method Details
-
getInstance
return a generalized time from the passed in object- Throws:
IllegalArgumentException
- if the object cannot be converted.
-
getInstance
return a Generalized Time object from a tagged object.- Parameters:
obj
- the tagged object holding the object we wantexplicit
- true if the object is meant to be explicitly tagged false otherwise.- Throws:
IllegalArgumentException
- if the tagged object cannot be converted.
-
getTimeString
Return the time.- Returns:
- The time string as it appeared in the encoded object.
-
getTime
return the time - always in the form of YYYYMMDDhhmmssGMT(+hh:mm|-hh:mm).Normally in a certificate we would expect "Z" rather than "GMT", however adding the "GMT" means we can just use:
dateF = new SimpleDateFormat("yyyyMMddHHmmssz");
To read in the time and get a date which is compatible with our local time zone. -
calculateGMTOffset
-
convert
-
getDate
- Throws:
ParseException
-
hasFractionalSeconds
private boolean hasFractionalSeconds() -
getOctets
private byte[] getOctets() -
encode
- Specified by:
encode
in classASN1Object
- Throws:
IOException
-
asn1Equals
- Specified by:
asn1Equals
in classASN1Object
-
hashCode
public int hashCode()- Specified by:
hashCode
in classASN1Object
-