Author: kmachalkova Date: Fri Oct 31 14:22:47 2008 New Revision: 52794
URL: http://svn.opensuse.org/viewcvs/yast?rev=52794&view=rev Log: - rollback if adding of NFS share fails (test mount does not succeed) - handle events (modify target map) only if y2-nfs-client returns some reasonable data
Modified: trunk/storage/storage/src/include/ep-nfs.ycp
Modified: trunk/storage/storage/src/include/ep-nfs.ycp URL: http://svn.opensuse.org/viewcvs/yast/trunk/storage/storage/src/include/ep-nf... ============================================================================== --- trunk/storage/storage/src/include/ep-nfs.ycp (original) +++ trunk/storage/storage/src/include/ep-nfs.ycp Fri Oct 31 14:22:47 2008 @@ -109,12 +109,15 @@ { y2milestone("Adding NFS share: %1 mountpoint: %2 options: %3", entry["device"]:"", entry["mount"]:"", entry["fstopt"]:""); + target_map = Storage::GetTargetMap(); + list<map> nfs_list = target_map["/dev/nfs", "partitions"]:[]; + integer sizeK = Storage::CheckNfsVolume (entry["device"]:"", entry["fstopt"]:"");
if ( sizeK <= 0) { Popup::Error( sformat( _("Test mount of NFS share '%1' failed.\nCheck that remote server is accesible and try again."), entry["device"]:"") ); - //FIXME: rollback if the operation didn't succeed + WFM::CallFunction("nfs-client4part", [ "FromStorage", $[ "shares" : nfs_list] ] ); } else { @@ -157,25 +160,29 @@
map <string, any> line = ( map <string, any> ) WFM::CallFunction("nfs-client4part", [ "HandleEvent", $[ "widget_id" : widget ] ]);
- switch (widget ) + //do something only if y2-nfs-client returns some reasonable data + if ( line != $[] && line != nil) { - case `newbut: - { - AddShare( line ); - break; - } - case `editbut: - { - EditShare( line ); - break; - } - case `delbut: + switch (widget ) { - DeleteShare( line ); - break; + case `newbut: + { + AddShare( line ); + break; + } + case `editbut: + { + EditShare( line ); + break; + } + case `delbut: + { + DeleteShare( line ); + break; + } + default: + break; } - default: - break; }
//FIXME: Take care that non-fstab settings of nfs-client
yast-commit@lists.opensuse.org