修复国标校时的时区的错误导致时间差八个小时
parent
ded8262985
commit
dfb3454f6e
|
@ -1,14 +1,95 @@
|
||||||
package com.genersoft.iot.vmp.gb28181.bean;
|
package com.genersoft.iot.vmp.gb28181.bean;
|
||||||
|
|
||||||
|
import gov.nist.core.InternalErrorHandler;
|
||||||
import gov.nist.javax.sip.header.SIPDate;
|
import gov.nist.javax.sip.header.SIPDate;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 重写jain sip的SIPDate解决与国标时间格式不一致的问题
|
* 重写jain sip的SIPDate解决与国标时间格式不一致的问题
|
||||||
*/
|
*/
|
||||||
public class WvpSipDate extends SIPDate {
|
public class WvpSipDate extends SIPDate {
|
||||||
|
|
||||||
|
private Calendar javaCal;
|
||||||
|
|
||||||
public WvpSipDate(long timeMillis) {
|
public WvpSipDate(long timeMillis) {
|
||||||
super(timeMillis);
|
this.javaCal = new GregorianCalendar(TimeZone.getDefault(), Locale.getDefault());
|
||||||
|
Date date = new Date(timeMillis);
|
||||||
|
this.javaCal.setTime(date);
|
||||||
|
this.wkday = this.javaCal.get(7);
|
||||||
|
switch(this.wkday) {
|
||||||
|
case 1:
|
||||||
|
this.sipWkDay = "Sun";
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
this.sipWkDay = "Mon";
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
this.sipWkDay = "Tue";
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
this.sipWkDay = "Wed";
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
this.sipWkDay = "Thu";
|
||||||
|
break;
|
||||||
|
case 6:
|
||||||
|
this.sipWkDay = "Fri";
|
||||||
|
break;
|
||||||
|
case 7:
|
||||||
|
this.sipWkDay = "Sat";
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
InternalErrorHandler.handleException("No date map for wkday " + this.wkday);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.day = this.javaCal.get(5);
|
||||||
|
this.month = this.javaCal.get(2);
|
||||||
|
switch(this.month) {
|
||||||
|
case 0:
|
||||||
|
this.sipMonth = "Jan";
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
this.sipMonth = "Feb";
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
this.sipMonth = "Mar";
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
this.sipMonth = "Apr";
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
this.sipMonth = "May";
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
this.sipMonth = "Jun";
|
||||||
|
break;
|
||||||
|
case 6:
|
||||||
|
this.sipMonth = "Jul";
|
||||||
|
break;
|
||||||
|
case 7:
|
||||||
|
this.sipMonth = "Aug";
|
||||||
|
break;
|
||||||
|
case 8:
|
||||||
|
this.sipMonth = "Sep";
|
||||||
|
break;
|
||||||
|
case 9:
|
||||||
|
this.sipMonth = "Oct";
|
||||||
|
break;
|
||||||
|
case 10:
|
||||||
|
this.sipMonth = "Nov";
|
||||||
|
break;
|
||||||
|
case 11:
|
||||||
|
this.sipMonth = "Dec";
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
InternalErrorHandler.handleException("No date map for month " + this.month);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.year = this.javaCal.get(1);
|
||||||
|
this.hour = this.javaCal.get(11);
|
||||||
|
this.minute = this.javaCal.get(12);
|
||||||
|
this.second = this.javaCal.get(13);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
Loading…
Reference in New Issue