当前位置: 首页>>代码示例>>PHP>>正文


PHP OC_Installer::installApp方法代码示例

本文整理汇总了PHP中OC_Installer::installApp方法的典型用法代码示例。如果您正苦于以下问题:PHP OC_Installer::installApp方法的具体用法?PHP OC_Installer::installApp怎么用?PHP OC_Installer::installApp使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在OC_Installer的用法示例。


在下文中一共展示了OC_Installer::installApp方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: testUpdateApp

 public function testUpdateApp()
 {
     $pathOfOldTestApp = __DIR__;
     $pathOfOldTestApp .= '/../data/';
     $pathOfOldTestApp .= 'testapp.zip';
     $oldTmp = \OC::$server->getTempManager()->getTemporaryFile('.zip');
     OC_Helper::copyr($pathOfOldTestApp, $oldTmp);
     $oldData = array('path' => $oldTmp, 'source' => 'path', 'appdata' => ['id' => 'Bar', 'level' => 100]);
     $pathOfNewTestApp = __DIR__;
     $pathOfNewTestApp .= '/../data/';
     $pathOfNewTestApp .= 'testapp2.zip';
     $newTmp = \OC::$server->getTempManager()->getTemporaryFile('.zip');
     OC_Helper::copyr($pathOfNewTestApp, $newTmp);
     $newData = array('path' => $newTmp, 'source' => 'path', 'appdata' => ['id' => 'Bar', 'level' => 100]);
     OC_Installer::installApp($oldData);
     $oldVersionNumber = OC_App::getAppVersion(self::$appid);
     OC_Installer::updateApp($newData);
     $newVersionNumber = OC_App::getAppVersion(self::$appid);
     $this->assertNotEquals($oldVersionNumber, $newVersionNumber);
 }
开发者ID:kenwi,项目名称:core,代码行数:20,代码来源:installer.php

示例2: testUpdateApp

 public function testUpdateApp()
 {
     $pathOfOldTestApp = __DIR__;
     $pathOfOldTestApp .= '/../data/';
     $pathOfOldTestApp .= 'testapp.zip';
     $oldTmp = OC_Helper::tmpFile('.zip');
     OC_Helper::copyr($pathOfOldTestApp, $oldTmp);
     $oldData = array('path' => $oldTmp, 'source' => 'path');
     $pathOfNewTestApp = __DIR__;
     $pathOfNewTestApp .= '/../data/';
     $pathOfNewTestApp .= 'testapp2.zip';
     $newTmp = OC_Helper::tmpFile('.zip');
     OC_Helper::copyr($pathOfNewTestApp, $newTmp);
     $newData = array('path' => $newTmp, 'source' => 'path');
     OC_Installer::installApp($oldData);
     $oldVersionNumber = OC_App::getAppVersion(self::$appid);
     OC_Installer::updateApp($newData);
     $newVersionNumber = OC_App::getAppVersion(self::$appid);
     $this->assertNotEquals($oldVersionNumber, $newVersionNumber);
 }
开发者ID:evanjt,项目名称:core,代码行数:20,代码来源:installer.php

示例3: downloadApp

 /**
  * @param string $app
  * @return int
  */
 public static function downloadApp($app)
 {
     $appData = OC_OCSClient::getApplication($app);
     $download = OC_OCSClient::getApplicationDownload($app, 1);
     if (isset($download['downloadlink']) and $download['downloadlink'] != '') {
         // Replace spaces in download link without encoding entire URL
         $download['downloadlink'] = str_replace(' ', '%20', $download['downloadlink']);
         $info = array('source' => 'http', 'href' => $download['downloadlink'], 'appdata' => $appData);
         $app = OC_Installer::installApp($info);
     }
     return $app;
 }
开发者ID:kebenxiaoming,项目名称:owncloudRedis,代码行数:16,代码来源:app.php

示例4: downloadApp

 /**
  * @param string $app
  * @return int
  */
 private static function downloadApp($app)
 {
     $ocsClient = new OCSClient(\OC::$server->getHTTPClientService(), \OC::$server->getConfig(), \OC::$server->getLogger());
     $appData = $ocsClient->getApplication($app, \OCP\Util::getVersion());
     $download = $ocsClient->getApplicationDownload($app, \OCP\Util::getVersion());
     if (isset($download['downloadlink']) and $download['downloadlink'] != '') {
         // Replace spaces in download link without encoding entire URL
         $download['downloadlink'] = str_replace(' ', '%20', $download['downloadlink']);
         $info = array('source' => 'http', 'href' => $download['downloadlink'], 'appdata' => $appData);
         $app = OC_Installer::installApp($info);
     }
     return $app;
 }
开发者ID:pierreozoux,项目名称:core,代码行数:17,代码来源:app.php

示例5: enable

 /**
  * @brief enables an app
  * @param mixed $app app
  * @throws \Exception
  * @return void
  *
  * This function set an app as enabled in appconfig.
  */
 public static function enable($app)
 {
     self::$enabledAppsCache = array();
     // flush
     if (!OC_Installer::isInstalled($app)) {
         // check if app is a shipped app or not. OCS apps have an integer as id, shipped apps use a string
         if (!is_numeric($app)) {
             $app = OC_Installer::installShippedApp($app);
         } else {
             $appdata = OC_OCSClient::getApplication($app, \OC_Util::getVersion());
             $download = OC_OCSClient::getApplicationDownload($app, 1, \OC_Util::getVersion());
             if (isset($download['downloadlink']) and $download['downloadlink'] != '') {
                 $info = array('source' => 'http', 'href' => $download['downloadlink'], 'appdata' => $appdata);
                 $app = OC_Installer::installApp($info);
             }
         }
     }
     $l = OC_L10N::get('core');
     if ($app !== false) {
         // check if the app is compatible with this version of ownCloud
         $info = OC_App::getAppInfo($app);
         $version = OC_Util::getVersion();
         if (!isset($info['require']) or !self::isAppVersionCompatible($version, $info['require'])) {
             throw new \Exception($l->t("App \"%s\" can't be installed because it is not compatible with this version of ownCloud.", array($info['name'])));
         } else {
             OC_Appconfig::setValue($app, 'enabled', 'yes');
             if (isset($appdata['id'])) {
                 OC_Appconfig::setValue($app, 'ocsid', $appdata['id']);
             }
             \OC_Hook::emit('OC_App', 'post_enable', array('app' => $app));
         }
     } else {
         throw new \Exception($l->t("No app name specified"));
     }
 }
开发者ID:hjimmy,项目名称:owncloud,代码行数:43,代码来源:app.php

示例6: enable

 /**
  * @brief enables an app
  * @param mixed $app app
  * @return bool
  *
  * This function set an app as enabled in appconfig.
  */
 public static function enable($app)
 {
     if (!OC_Installer::isInstalled($app)) {
         // check if app is a shipped app or not. OCS apps have an integer as id, shipped apps use a string
         if (!is_numeric($app)) {
             $app = OC_Installer::installShippedApp($app);
         } else {
             $download = OC_OCSClient::getApplicationDownload($app, 1);
             if (isset($download['downloadlink']) and $download['downloadlink'] != '') {
                 $app = OC_Installer::installApp(array('source' => 'http', 'href' => $download['downloadlink']));
             }
         }
     }
     if ($app !== false) {
         // check if the app is compatible with this version of ownCloud
         $info = OC_App::getAppInfo($app);
         $version = OC_Util::getVersion();
         if (!isset($info['require']) or $version[0] > $info['require']) {
             OC_Log::write('core', 'App "' . $info['name'] . '" can\'t be installed because it is not compatible with this version of ownCloud', OC_Log::ERROR);
             return false;
         } else {
             OC_Appconfig::setValue($app, 'enabled', 'yes');
             return true;
         }
     } else {
         return false;
     }
 }
开发者ID:ryanshoover,项目名称:core,代码行数:35,代码来源:app.php


注:本文中的OC_Installer::installApp方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。