Skip to content
This repository was archived by the owner on May 20, 2019. It is now read-only.

Change Webapi extension to use Inject Pool logic #1

Merged
merged 19 commits into from
Mar 21, 2018
Merged
Show file tree
Hide file tree
Changes from 8 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions app/code/Magento/Swagger/Block/Async.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Swagger\Block;

use Magento\Framework\View\Element\Template;

/**
* Class Index

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add meaningful descriptions to all new classes and methods in the CR.

*
* @api
*/
class Async extends Template
{
/**
* @return mixed|string
*/
private function getParamStore()
{
return ($this->getRequest()->getParam('store')) ? $this->getRequest()->getParam('store') : 'all';
}

/**
* @return string
*/
public function getSchemaUrl()
{
return rtrim($this->getBaseUrl(), '/') . '/rest/' . $this->getParamStore() . '/async/schema?services=all';
}
}
47 changes: 47 additions & 0 deletions app/code/Magento/Swagger/Controller/Async/Index.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
<?php
/***

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Extra asterisk should be removed.

* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Swagger\Controller\Async;

/**
* Class Index
* @package Magento\Swagger\Controller\Index
*/
class Index extends \Magento\Framework\App\Action\Action
{
/**
* @var \Magento\Framework\View\Page\Config
*/
private $pageConfig;

/**
* @var \Magento\Framework\View\Result\PageFactory
*/
private $pageFactory;

/**
* @param \Magento\Framework\App\Action\Context $context
* @param \Magento\Framework\View\Page\Config $pageConfig
* @param \Magento\Framework\View\Result\PageFactory $pageFactory
*/
public function __construct(
\Magento\Framework\App\Action\Context $context,
\Magento\Framework\View\Page\Config $pageConfig,
\Magento\Framework\View\Result\PageFactory $pageFactory
) {
parent::__construct($context);
$this->pageConfig = $pageConfig;
$this->pageFactory = $pageFactory;
}

/**
* @return \Magento\Framework\View\Result\Page
*/
public function execute()
{
$this->pageConfig->addBodyClass('swagger-section');
return $this->pageFactory->create();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
<?xml version="1.0"?>
<!--
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
-->
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="1column" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd" label="qwerty">
<head>
<title>Swagger UI Async</title>

<!--<title>Swagger UI assets</title>-->
<css src='Magento_Swagger::swagger-ui/css/typography.css' media='screen' rel='stylesheet' type='text/css'/>
<css src='Magento_Swagger::swagger-ui/css/reset.css' media='screen' rel='stylesheet' type='text/css'/>
<css src='Magento_Swagger::swagger-ui/css/screen.css' media='screen' rel='stylesheet' type='text/css'/>
<css src='Magento_Swagger::swagger-ui/css/reset.css' media='print' rel='stylesheet' type='text/css'/>
<css src='Magento_Swagger::swagger-ui/css/print.css' media='print' rel='stylesheet' type='text/css'/>
<link src='Magento_Swagger::swagger-ui/js/lib/jquery-1.8.0.min.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lib/jquery.slideto.min.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lib/jquery.wiggle.min.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lib/jquery.ba-bbq.min.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lib/handlebars.min-v4.0.10.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lib/underscore-min.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lib/backbone-min.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lib/jsoneditor.min.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/swagger-ui.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lib/highlight.9.1.0.pack.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lib/highlight.9.1.0.pack_extended.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lib/lodash.min.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lib/object-assign-pollyfill.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lib/marked.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lib/swagger-oauth.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lang/translator.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lang/ru.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/lang/en.js' type='text/javascript'/>
<link src='Magento_Swagger::swagger-ui/js/magento-swagger.js' type='text/javascript'/>

<!--Remove require-js assets-->
<remove src="requirejs/require.js"/>
<remove src="mage/requirejs/mixins.js"/>
<remove src="requirejs-config.js"/>
</head>
<body>
<!--Remove Magento page content-->
<referenceContainer name="page.wrapper" remove="true"/>
<referenceBlock name="requirejs-config" remove="true"/>
<referenceContainer name="root">
<block name="swaggerUiContent" class="Magento\Swagger\Block\Async" template="Magento_Swagger::swagger-ui/index.phtml"/>
</referenceContainer>
</body>
</page>

Loading