| Current Path : /home/rtorresani/www/vendor/magento/module-shipping/Model/Carrier/ |
| Current File : //home/rtorresani/www/vendor/magento/module-shipping/Model/Carrier/AbstractCarrierInterface.php |
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Shipping\Model\Carrier;
use Magento\Quote\Model\Quote\Address\RateRequest;
/**
* Interface AbstractCarrierInterface
*
* @api
*/
interface AbstractCarrierInterface
{
/**
* Retrieve information from carrier configuration
*
* @param string $field
* @return mixed
*/
public function getConfigData($field);
/**
* Collect and get rates
*
* @param RateRequest $request
* @return \Magento\Framework\DataObject|bool|null
*/
public function collectRates(RateRequest $request);
/**
* Do request to shipment - Implementation must be in overridden method
*
* @param \Magento\Framework\DataObject $request
* @return \Magento\Framework\DataObject
*/
public function requestToShipment($request);
/**
* Do return of shipment - Implementation must be in overridden method
*
* @param \Magento\Framework\DataObject $request
* @return \Magento\Framework\DataObject
*/
public function returnOfShipment($request);
/**
* Return container types of carrier
*
* @param \Magento\Framework\DataObject|null $params
* @return array
*/
public function getContainerTypes(\Magento\Framework\DataObject $params = null);
/**
* Get Container Types, that could be customized
*
* @return array
*/
public function getCustomizableContainerTypes();
/**
* Return delivery confirmation types of carrier
*
* @param \Magento\Framework\DataObject|null $params
* @return array
*/
public function getDeliveryConfirmationTypes(\Magento\Framework\DataObject $params = null);
/**
* Validate request for available ship countries
*
* @param \Magento\Framework\DataObject $request
* @return $this|bool|false|\Magento\Framework\Model\AbstractModel
*/
public function checkAvailableShipCountries(\Magento\Framework\DataObject $request);
/**
* Processing additional validation to check is carrier applicable.
*
* @param \Magento\Framework\DataObject $request
* @return $this|\Magento\Framework\DataObject|boolean
*/
public function proccessAdditionalValidation(\Magento\Framework\DataObject $request);
/**
* Determine whether current carrier enabled for activity
*
* @return bool
*/
public function isActive();
/**
* Whether this carrier has fixed rates calculation
*
* @return bool
*/
public function isFixed();
/**
* Check if carrier has shipping tracking option available
*
* @return bool
*/
public function isTrackingAvailable();
/**
* Check if carrier has shipping label option available
*
* @return bool
*/
public function isShippingLabelsAvailable();
/**
* Retrieve sort order of current carrier
*
* @return string|null
*/
public function getSortOrder();
/**
* Get the handling fee for the shipping + cost
*
* @param float $cost
* @return float final price for shipping method
*/
public function getFinalPriceWithHandlingFee($cost);
/**
* Set the number of boxes for shipping
*
* @param int|float $weight
* @return int|float weight
*/
public function getTotalNumOfBoxes($weight);
/**
* Is state province required
*
* @return bool
*/
public function isStateProvinceRequired();
/**
* Check if city option required
*
* @return bool
*/
public function isCityRequired();
/**
* Determine whether zip-code is required for the country of destination
*
* @param string|null $countryId
* @return bool
*/
public function isZipCodeRequired($countryId = null);
/**
* Used to call debug method from not Payment Method context
*
* @param mixed $debugData
* @return void
*/
public function debugData($debugData);
/**
* Getter for carrier code
*
* @return string
*/
public function getCarrierCode();
/**
* Return content types of package
*
* @param \Magento\Framework\DataObject $params
* @return array
*/
public function getContentTypes(\Magento\Framework\DataObject $params);
}