/
v.bolshakov
/
AIEcosystem-Testing
Обзор
Документация
Войти
/
v.bolshakov
/
AIEcosystem-Testing
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
dev
console/controllers/WsdlController.php
131 строка
4 KB
Developer
Initial commit
03 авг 2026, 17:43
03 авг 2026, 17:43
7433917
Код
Авторство
О чём код?
<?php namespace console\controllers; use common\helpers\FileHelper; use Yii; use yii\console\{Controller, ExitCode}; use BeSimple\SoapCommon\Cache; /** * Work with WSDL * * @author Dmitry E. Semenov <sde.tomsk@gmail.com> * @copyright Self (c) 2023 */ class WsdlController extends BaseController { /** * Generate WSDL schema class */ public function actionGenerateTms() { $map = [ 'serverproject', 'security', 'resource', 'filemanager' ]; $wsdlCacheUrl = Yii::getAlias('@root/tmp'); Cache::setDirectory($wsdlCacheUrl); foreach ($map as $item) { $inputFile = Yii::getAlias('@root/common/memoQ/tms/wsdl/' . $item . '.wsdl'); $outputDir = Yii::getAlias('@root/common/memoQ/tms/meta/' . $item); $generator = new \Wsdl2PhpGenerator\Generator(); $generator->generate( new \Wsdl2PhpGenerator\Config(array( 'inputFile' => $inputFile, 'outputDir' => $outputDir, 'namespaceName' => 'common\memoQ\tms\meta\\' . $item, 'soapClientClass' => '\common\components\soap\SoapClient', 'soapClientOptions' => [ 'connection_timeout' => 15 ] )) ); } return ExitCode::OK; } /** * Generate WSDL schema class */ public function actionGenerateTms2() { error_reporting(0); $map = [ 'serverproject', 'security', 'resource', 'filemanager' ]; $wsdlCacheUrl = Yii::getAlias('@root/tmp'); Cache::setDirectory($wsdlCacheUrl); foreach ($map as $item) { $inputFile = Yii::getAlias('@root/common/memoQ/wsdl/' . $item . '.wsdl'); $outputDir = Yii::getAlias('@root/common/memoQ/meta/' . $item); $generator = new \Wsdl2PhpGenerator\Generator(); $generator->generate( new \Wsdl2PhpGenerator\Config(array( 'inputFile' => $inputFile, 'outputDir' => $outputDir, 'namespaceName' => 'common\memoQ\meta\\' . $item, 'soapClientClass' => '\common\components\soap\SoapClient', 'soapClientOptions' => [ 'connection_timeout' => 15 ] )) ); } return ExitCode::OK; } /** * Generate WSDL schema class */ public function actionServer() { $map = [ 'server', ]; foreach ($map as $item) { $inputFile = Yii::getAlias('@common/wsdl/schema/' . $item . '.wsdl'); $outputDir = Yii::getAlias('@common/wsdl/meta/' . $item); FileHelper::removeDirectory($outputDir); $wsdlCacheUrl = Yii::getAlias('@root/tmp'); Cache::setDirectory($wsdlCacheUrl); $generator = new \Wsdl2PhpGenerator\Generator(); $generator->generate( new \Wsdl2PhpGenerator\Config(array( 'inputFile' => $inputFile, 'outputDir' => $outputDir, 'namespaceName' => 'common\wsdl\meta\\' . $item, 'soapClientClass' => '\BeSimple\SoapClient\SoapClient', 'soapClientOptions' => [ // 'authentication' => SOAP_AUTHENTICATION_BASIC, // 'login' => null, // 'password' => null, 'connection_timeout' => 15, ] )) ); } return ExitCode::OK; } }