ACC SHELL

Path : /usr/share/YaST2/clients/
File Upload :
Current File : //usr/share/YaST2/clients/wrapper_storage.ycp

/**
 * Module:		wrapper_storage.ycp
 *
 * Authors:		Ladislav Slezak <lslezak@novell.com>
 *
 * Purpose:		A wrapper for Storage:: module, required for removing yast2-storage dependency
 *
 * $Id: wrapper_storage.ycp 57028 2009-04-29 10:58:09Z lslezak $
 */

{
    string func  = (string)WFM::Args(0);
    list   param = [];

    // get parameters if available
    if (size(WFM::Args()) >= 2)
    {
	param = (list) WFM::Args(1);
    }

    any ret = nil;

    y2milestone("Storage:: wrapper: func: %1, args: %2", func, param);

    import "Storage";

    // call the required function
    if (func == "GetTargetMap")
    {
	ret = Storage::GetTargetMap();
    }
    else if (func == "GetTargetChangeTime")
    {
	ret = Storage::GetTargetChangeTime();
    }
    else if (func == "RemoveDmMapsTo")
    {
	if (size(param) == 0)
	{
	    y2error("Missing argument for Storage::RemoveDmMapsTo()");
	}
	else
	{
	    string param1 = (string)param[0]:nil;

	    ret = Storage::RemoveDmMapsTo(param1);
	}
    }
    else
    {
	// the required function is not known
	y2error("unknown function: %1", func);
    }

    y2milestone("Storage wrapper: result: %1", ret);

    return ret;
}

ACC SHELL 2018