@@ -27,9 +27,12 @@ func (t *Time) MarshalJSON() ([]byte, error) {
2727// UnmarshalText implements the encoding.TextUnmarshaler interface.
2828// The time is expected to be in Deis' datetime format.
2929func (t * Time ) UnmarshalText (data []byte ) error {
30- tt , err := time .Parse (DeisDatetimeFormat , string (data ))
30+ tt , err := time .Parse (time . RFC3339 , string (data ))
3131 if _ , ok := err .(* time.ParseError ); ok {
32- tt , err = time .Parse (PyOpenSSLTimeDateTimeFormat , string (data ))
32+ tt , err = time .Parse (DeisDatetimeFormat , string (data ))
33+ if _ , ok := err .(* time.ParseError ); ok {
34+ tt , err = time .Parse (PyOpenSSLTimeDateTimeFormat , string (data ))
35+ }
3336 }
3437 * t = Time {& tt }
3538 return err
@@ -39,9 +42,12 @@ func (t *Time) UnmarshalText(data []byte) error {
3942// The time is expected to be a quoted string in Deis' datetime format.
4043func (t * Time ) UnmarshalJSON (data []byte ) error {
4144 // Fractional seconds are handled implicitly by Parse.
42- tt , err := time .Parse (`"` + DeisDatetimeFormat + `"` , string (data ))
45+ tt , err := time .Parse (`"` + time . RFC3339 + `"` , string (data ))
4346 if _ , ok := err .(* time.ParseError ); ok {
44- tt , err = time .Parse (`"` + PyOpenSSLTimeDateTimeFormat + `"` , string (data ))
47+ tt , err = time .Parse (`"` + DeisDatetimeFormat + `"` , string (data ))
48+ if _ , ok := err .(* time.ParseError ); ok {
49+ tt , err = time .Parse (`"` + PyOpenSSLTimeDateTimeFormat + `"` , string (data ))
50+ }
4551 }
4652 * t = Time {& tt }
4753 return err
0 commit comments