org.apache.commons.ssl.asn1
Class DERGeneralizedTime
java.lang.Object
org.apache.commons.ssl.asn1.ASN1Encodable
org.apache.commons.ssl.asn1.DERObject
org.apache.commons.ssl.asn1.ASN1Object
org.apache.commons.ssl.asn1.DERGeneralizedTime
- All Implemented Interfaces:
- DEREncodable, DERTags
public class DERGeneralizedTime
- extends ASN1Object
Generalized time object.
Field Summary |
(package private) java.lang.String |
time
|
Fields inherited from interface org.apache.commons.ssl.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 |
DERGeneralizedTime(byte[] bytes)
|
DERGeneralizedTime(java.util.Date time)
base constructer from a java.util.date object |
DERGeneralizedTime(java.lang.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. |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
time
java.lang.String time
DERGeneralizedTime
public DERGeneralizedTime(java.lang.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. The fractional second amount f must consist of at
least one number with trailing zeroes removed.
- Parameters:
time
- the time string.
- Throws:
java.lang.IllegalArgumentException
- if String is an illegal format.
DERGeneralizedTime
public DERGeneralizedTime(java.util.Date time)
- base constructer from a java.util.date object
DERGeneralizedTime
DERGeneralizedTime(byte[] bytes)
getInstance
public static DERGeneralizedTime getInstance(java.lang.Object obj)
- return a generalized time from the passed in object
- Throws:
java.lang.IllegalArgumentException
- if the object cannot be converted.
getInstance
public static DERGeneralizedTime getInstance(ASN1TaggedObject obj,
boolean explicit)
- 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:
java.lang.IllegalArgumentException
- if the tagged object cannot
be converted.
getTimeString
public java.lang.String getTimeString()
- Return the time.
- Returns:
- The time string as it appeared in the encoded object.
getTime
public java.lang.String 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
private java.lang.String calculateGMTOffset()
convert
private java.lang.String convert(int time)
getDate
public java.util.Date getDate()
throws java.text.ParseException
- Throws:
java.text.ParseException
hasFractionalSeconds
private boolean hasFractionalSeconds()
getOctets
private byte[] getOctets()
encode
void encode(DEROutputStream out)
throws java.io.IOException
- Specified by:
encode
in class ASN1Object
- Throws:
java.io.IOException
asn1Equals
boolean asn1Equals(DERObject o)
- Specified by:
asn1Equals
in class ASN1Object
hashCode
public int hashCode()
- Specified by:
hashCode
in class ASN1Object