Abstracts

This commit is contained in:
Mike Jolley 2019-05-30 15:45:46 +01:00
parent 69769bf152
commit 3fb09e9b0d
28 changed files with 45 additions and 81 deletions

View File

@ -13,7 +13,7 @@
* @package WooCommerce/RestApi
*/
namespace WooCommerce\RestApi\Version4;
namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;

View File

@ -13,8 +13,6 @@ use AbstractPostsController;
/**
* CRUD Object Controller.
*
* @extends WC_REST_Posts_Controller
*/
abstract class AbstractObjectsController extends AbstractPostsController {

View File

@ -20,7 +20,7 @@ use AbstractController;
* @package WooCommerce/RestApi
* @extends AbstractController
*/
abstract class WC_REST_Shipping_Zones_Controller_Base extends AbstractController {
abstract class AbstractShippingZonesController extends AbstractController {
/**
* Route base.

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_Posts_Controller;
/**
* REST API Coupons controller class.
*/
class Coupons extends WC_REST_Posts_Controller {
class Coupons extends AbstractPostsController {
/**
* Route base.

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_Controller;
/**
* REST API Customer Downloads controller class.
*/
class CustomerDownloads extends WC_REST_Controller {
class CustomerDownloads extends AbstractController {
/**
* Route base.

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_Controller;
/**
* REST API Customers controller class.
*/
class Customers extends WC_REST_Controller {
class Customers extends AbstractController {
/**
* Route base.

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_Controller;
/**
* REST API Coupons controller class.
*/
class Data extends WC_REST_Controller {
class Data extends AbstractController {
/**
* Route base.

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_Controller;
/**
* REST API Order Notes controller class.
*/
class OrderNotes extends WC_REST_Controller {
class OrderNotes extends AbstractController {
/**
* Route base.

View File

@ -11,8 +11,6 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WooCommerce\RestApi\Version4\Controllers\Orders as Orders;
/**
* REST API Order Refunds controller class.
*/

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_CRUD_Controller;
/**
* REST API Orders controller class.
*/
class Orders extends WC_REST_CRUD_Controller {
class Orders extends AbstractObjectsController {
/**
* Route base.

View File

@ -11,8 +11,6 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use AbstractTermsContoller;
/**
* REST API Product Attribute Terms controller class.
*/

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_Controller;
/**
* REST API Product Attributes controller class.
*/
class ProductAttributes extends WC_REST_Controller {
class ProductAttributes extends AbstractController {
/**
* Route base.

View File

@ -11,8 +11,6 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use AbstractTermsContoller;
/**
* REST API Product Categories controller class.
*/

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_Controller;
/**
* REST API Product Reviews controller class.
*/
class ProductReviews extends WC_REST_Controller {
class ProductReviews extends AbstractController {
/**
* Route base.

View File

@ -11,8 +11,6 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use AbstractTermsContoller;
/**
* REST API Product Shipping Classes controller class.
*/

View File

@ -11,8 +11,6 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use AbstractTermsContoller;
/**
* REST API Product Tags controller class.
*/

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_CRUD_Controller;
/**
* REST API Products controller class.
*/
class Products extends WC_REST_CRUD_Controller {
class Products extends AbstractObjectsController {
/**
* Route base.

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_Controller;
/**
* REST API reports controller class.
*/
class Reports extends WC_REST_Controller {
class Reports extends AbstractController {
/**
* Route base.

View File

@ -5,25 +5,25 @@
* Handles requests to the /shipping/zones/<id>/locations endpoint.
*
* @package WooCommerce/RestApi
* @since 3.0.0
*/
namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
/**
* REST API Shipping Zone Locations class.
*
* @package WooCommerce/RestApi
* @extends WC_REST_Shipping_Zones_Controller_Base
*/
class WC_REST_Shipping_Zone_Locations_V2_Controller extends WC_REST_Shipping_Zones_Controller_Base {
class ShippingZoneLocations extends AbstractShippingZonesController {
/**
* Register the routes for Shipping Zone Locations.
*/
public function register_routes() {
register_rest_route(
$this->namespace, '/' . $this->rest_base . '/(?P<id>[\d]+)/locations', array(
$this->namespace,
'/' . $this->rest_base . '/(?P<id>[\d]+)/locations',
array(
'args' => array(
'id' => array(
'description' => __( 'Unique ID for the resource.', 'woocommerce' ),

View File

@ -5,25 +5,25 @@
* Handles requests to the /shipping/zones/<id>/methods endpoint.
*
* @package WooCommerce/RestApi
* @since 3.0.0
*/
namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
/**
* REST API Shipping Zone Methods class.
*
* @package WooCommerce/RestApi
* @extends WC_REST_Shipping_Zones_Controller_Base
*/
class WC_REST_Shipping_Zone_Methods_V2_Controller extends WC_REST_Shipping_Zones_Controller_Base {
class ShippingZoneMethods extends AbstractShippingZonesController {
/**
* Register the routes for Shipping Zone Methods.
*/
public function register_routes() {
register_rest_route(
$this->namespace, '/' . $this->rest_base . '/(?P<zone_id>[\d]+)/methods', array(
$this->namespace,
'/' . $this->rest_base . '/(?P<zone_id>[\d]+)/methods',
array(
'args' => array(
'zone_id' => array(
'description' => __( 'Unique ID for the zone.', 'woocommerce' ),
@ -40,7 +40,8 @@ class WC_REST_Shipping_Zone_Methods_V2_Controller extends WC_REST_Shipping_Zones
'callback' => array( $this, 'create_item' ),
'permission_callback' => array( $this, 'create_item_permissions_check' ),
'args' => array_merge(
$this->get_endpoint_args_for_item_schema( WP_REST_Server::CREATABLE ), array(
$this->get_endpoint_args_for_item_schema( WP_REST_Server::CREATABLE ),
array(
'method_id' => array(
'required' => true,
'readonly' => false,
@ -54,7 +55,9 @@ class WC_REST_Shipping_Zone_Methods_V2_Controller extends WC_REST_Shipping_Zones
);
register_rest_route(
$this->namespace, '/' . $this->rest_base . '/(?P<zone_id>[\d]+)/methods/(?P<instance_id>[\d]+)', array(
$this->namespace,
'/' . $this->rest_base . '/(?P<zone_id>[\d]+)/methods/(?P<instance_id>[\d]+)',
array(
'args' => array(
'zone_id' => array(
'description' => __( 'Unique ID for the zone.', 'woocommerce' ),

View File

@ -5,25 +5,25 @@
* Handles requests to the /shipping/zones endpoint.
*
* @package WooCommerce/RestApi
* @since 3.0.0
*/
namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
/**
* REST API Shipping Zones class.
*
* @package WooCommerce/RestApi
* @extends WC_REST_Shipping_Zones_Controller_Base
*/
class WC_REST_Shipping_Zones_V2_Controller extends WC_REST_Shipping_Zones_Controller_Base {
class ShippingZones extends AbstractShippingZonesController {
/**
* Register the routes for Shipping Zones.
*/
public function register_routes() {
register_rest_route(
$this->namespace, '/' . $this->rest_base, array(
$this->namespace,
'/' . $this->rest_base,
array(
array(
'methods' => WP_REST_Server::READABLE,
'callback' => array( $this, 'get_items' ),
@ -34,7 +34,8 @@ class WC_REST_Shipping_Zones_V2_Controller extends WC_REST_Shipping_Zones_Contro
'callback' => array( $this, 'create_item' ),
'permission_callback' => array( $this, 'create_item_permissions_check' ),
'args' => array_merge(
$this->get_endpoint_args_for_item_schema( WP_REST_Server::CREATABLE ), array(
$this->get_endpoint_args_for_item_schema( WP_REST_Server::CREATABLE ),
array(
'name' => array(
'required' => true,
'type' => 'string',
@ -48,7 +49,9 @@ class WC_REST_Shipping_Zones_V2_Controller extends WC_REST_Shipping_Zones_Contro
);
register_rest_route(
$this->namespace, '/' . $this->rest_base . '/(?P<id>[\d-]+)', array(
$this->namespace,
'/' . $this->rest_base . '/(?P<id>[\d-]+)',
array(
'args' => array(
'id' => array(
'description' => __( 'Unique ID for the resource.', 'woocommerce' ),

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_Controller;
/**
* REST API System Status controller class.
*/
class SystemStatus extends WC_REST_Controller {
class SystemStatus extends AbstractController {
/**
* Route base.

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_Controller;
/**
* REST API System Status Tools controller class.
*/
class SystemStatusTools extends WC_REST_Controller {
class SystemStatusTools extends AbstractController {
/**
* Route base.

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_Controller;
/**
* REST API Tax Class controller class.
*/
class TaxClasses extends WC_REST_Controller {
class TaxClasses extends AbstractController {
/**
* Route base.

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_Controller;
/**
* REST API Taxes controller class.
*/
class Taxes extends WC_REST_Controller {
class Taxes extends AbstractController {
/**
* Route base.

View File

@ -11,12 +11,10 @@ namespace WooCommerce\RestApi\Version4\Controllers;
defined( 'ABSPATH' ) || exit;
use \WC_REST_Controller;
/**
* REST API Webhooks controller class.
*/
class Webhooks extends WC_REST_Controller {
class Webhooks extends AbstractController {
/**
* Route base.