public String toIcal ( ) { StringBuilder buf = new StringBuilder ( ) ; buf . append ( this . getName ( ) . toUpperCase ( ) ) ; buf . append ( ";TZID=\"" ) . append ( tzid . getID ( ) ) . append ( ' ' ) ; buf . append ( ";VALUE=" ) . append ( valueType . toIcal ( ) ) ; if ( hasExtParams ( ) ) { for ( Map . Entry < String , String > param : getExtParams ( ) . entrySet ( ) ) { String k = param . getKey ( ) , v = param . getValue ( ) ; if ( ICAL_SPECIALS . matcher ( v ) . find ( ) ) { v = "\"" + v + "\"" ; } buf . append ( ' ' ) . append ( k ) . append ( ' ' ) . append ( v ) ; } } buf . append ( ' ' ) ; for ( int i = 0 ; i < datesUtc . length ; ++ i ) { if ( 0 != i ) { buf . append ( ' ' ) ; } DateValue v = datesUtc [ i ] ; buf . append ( v ) ; if ( v instanceof TimeValue ) { buf . append ( ' ' ) ; } } return buf . toString ( ) ; }
returns a String containing ical content lines .