consid save individu xmi individu diagram make easier modular output argo param file file write param project project save save except goe wrong interrupt except thread interrupt argouml persist project file persist save argouml kernel project java io file overrid save project project file file save except interrupt except defin log lp log granular type statement lp log local start method log info save endif progress mgr progress mgr progress mgr progress mgr set number phase progress mgr phase file archiv file file file absolut path file temp file temp file creat temp file file file except save except fail archiv previou file version io except save except fail archiv previou file version zip output stream stream project set file file project set version applic version version project set persist version persist version stream zip output stream file output stream file project member project member project member project member type equal ignor xmi defin log lp log granular type statement lp log local nest statement log info enabl log info save member type project member type endif stream entri zip entri project member zip member file persist persist member file persist project member persist save project member stream save did rais except exist correct backup file archiv file exist archiv file delet temp file exist archiv file exist temp file renam archiv file temp file exist temp file delet progress mgr phase except defin log lp log granular type statement log error except occur save attempt endif stream stream close except ex frank except delet mv exist rollback old file file delet temp file renam file messag user set unsav save except stream close io except ex defin log lp log granular type statement log error fail close save output writer ex endif 