protected String long2roman(long val,boolean prefixesAreOK){
  if (val <= 0) {
    return getZeroString();
  }
  String roman="";
  int place=0;
  if (val <= 3999L) {
    do {
      while (val >= m_romanConvertTable[place].m_postValue) {
        roman+=m_romanConvertTable[place].m_postLetter;
        val-=m_romanConvertTable[place].m_postValue;
      }
      if (prefixesAreOK) {
        if (val >= m_romanConvertTable[place].m_preValue) {
          roman+=m_romanConvertTable[place].m_preLetter;
          val-=m_romanConvertTable[place].m_preValue;
        }
      }
      place++;
    }
 while (val > 0);
  }
 else {
    roman=XSLTErrorResources.ERROR_STRING;
  }
  return roman;
}

protected String long2roman ( long val , boolean prefixesAreOK ) { if ( val <= 0 ) { return getZeroString ( ) ; } String roman = "" ; int place = 0 ; if ( val <= 3999L ) { do { while ( val >= m_romanConvertTable [ place ] . m_postValue ) { roman += m_romanConvertTable [ place ] . m_postLetter ; val -= m_romanConvertTable [ place ] . m_postValue ; } if ( prefixesAreOK ) { if ( val >= m_romanConvertTable [ place ] . m_preValue ) { roman += m_romanConvertTable [ place ] . m_preLetter ; val -= m_romanConvertTable [ place ] . m_preValue ; } } place ++ ; } while ( val > 0 ) ; } else { roman = XSLTErrorResources . ERROR_STRING ; } return roman ; }
convert a long integer into roman numerals .
