#NEWLINE# def default( self , o ) : #NEWLINE# #INDENT# if isinstance ( o , datetime . datetime ) : #NEWLINE# #INDENT# if ( o . microsecond == 0 ) : #NEWLINE# #INDENT# return ( 'Date(%d,%d,%d,%d,%d,%d)' % ( o . year , ( o . month - 1 ) , o . day , o . hour , o . minute , o . second ) ) #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# return ( 'Date(%d,%d,%d,%d,%d,%d,%d)' % ( o . year , ( o . month - 1 ) , o . day , o . hour , o . minute , o . second , ( o . microsecond / 1000 ) ) ) #NEWLINE# #UNINDENT# #UNINDENT# else : #NEWLINE# #INDENT# if isinstance ( o , datetime . date ) : #NEWLINE# #INDENT# return ( 'Date(%d,%d,%d)' % ( o . year , ( o . month - 1 ) , o . day ) ) #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if isinstance ( o , datetime . time ) : #NEWLINE# #INDENT# return [ o . hour , o . minute , o . second ] #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# return super ( DataTableJSONEncoder , self ) . default ( o )