. * */ /** * provides an interface to all search providers */ class OC_Migrate{ static private $providers=array(); /** * register a new migration provider * @param OC_Migrate_Provider $provider */ public static function registerProvider($provider){ self::$providers[]=$provider; } /** * export app data for a user * @param string userid * @return string xml of app data */ public static function export($uid){ OC_Log::write('user_migrate','App data export started for user: '.$uid,OC_Log::INFO); $xml = ''; foreach(self::$providers as $provider){ OC_Log::write('user_migrate','Getting app data for app:'.$provider->appid,OC_Log::INFO); $xml .= ''; $xml .= self::appInfoXML($provider->appid); $xml .= $provider->export($uid); $xml .= ''; } return $xml; } /** * generates the app info xml * @param string appid * @return string xml app info */ public static function appInfoXML($appid){ $info = OC_App::getAppInfo($appid); $xml = ''; $xml .= 'INFO HERE'; $xml .= ''; return $xml; } }