<commit_before><?php
/**
 * PaywayRest Abstract Request.
 */
namespace Omnipay\PaywayRest\Message;

use Omnipay\PaywayRest\Helper\Uuid;

/**
 * PayWay REST API Abstract Request.
 *
 * This is the parent class for all PayWay requests.
 *
 * @todo Add usage documention, including live and test details
 *
 * @see \Omnipay\PaywayRest\Gateway
 * @link https://www.payway.com.au/rest-docs/index.html
 */
abstract class AbstractRequest extends \Omnipay\Common\Message\AbstractRequest
{
    /** @var string Endpoint URL */
    protected $endpoint = 'https://api.payway.com.au/rest/v1';

    /**
     * Get API publishable key
     * @return string
     */
    public function getApiKeyPublic()
    {
        return $this->getParameter('apiKeyPublic');
    }

    /**
     * Set API publishable key
     * @param  string $value API publishable key
     */
    public function setApiKeyPublic($value)
    {
        return $this->setParameter('apiKeyPublic', $value);
    }

    /**
     * Get API secret key
     * @return string
     */
    public function getApiKeySecret()
    {
        return $this->getParameter('apiKeySecret');
    }

    /**
     * Set API secret key
     * @param  string $value API secret key
     */
    public function setApiKeySecret($value)
    {
        return $this->setParameter('apiKeySecret', $value);
    }

    /**
     * Get Merchant
     * @return string Merchant ID
     */
    public function getMerchantId()
    {
        return $this->getParameter('merchantId');
    }

    /**
     * Set Merchant
     * @param  string $value Merchant ID
     */
    public function setMerchantId($value)
    {
        return $this->setParameter('merchantId', $value);
    }

    /**
     * Get Use Secret Key setting
     * @return bool Use secret API key if true
     */
    public function getUseSecretKey()
    {
        return $this->getParameter('useSecretKey');
    }

    /**
     * Set Use Secret Key setting
     * @param  string $value Flag to use secret key
     */
    public function setUseSecretKey($value)
    {
        return $this->setParameter('useSecretKey', $value);
    }

    /**
     * Get single-use token
     * @return string Token key
     */
    public function getSingleUseTokenId()
    {
        return $this->getParameter('singleUseTokenId');
    }

    /**
     * Set single-use token
     * @param  string $value Token Key
     */
    public function setSingleUseTokenId($value)
    {
        return $this->setParameter('singleUseTokenId', $value);
    }

    /**
     * Get Idempotency Key
     * @return string Idempotency Key
     */
    public function getIdempotencyKey()
    {
        return $this->getParameter('idempotency_key') ?: Uuid::create();
    }

    /**
     * Set Idempotency Key
     * @param  string $value Idempotency Key
     */
    public function setIdempotencyKey($value)
    {
        return $this->setParameter('idempotency_key', $value);
    }

    public function getCustomerNumber()<commit_msg>FORMAT: standardise as-yet-unused idempotencyKey parameter<commit_after><?php
/**
 * PaywayRest Abstract Request.
 */
namespace Omnipay\PaywayRest\Message;

use Omnipay\PaywayRest\Helper\Uuid;

/**
 * PayWay REST API Abstract Request.
 *
 * This is the parent class for all PayWay requests.
 *
 * @todo Add usage documention, including live and test details
 *
 * @see \Omnipay\PaywayRest\Gateway
 * @link https://www.payway.com.au/rest-docs/index.html
 */
abstract class AbstractRequest extends \Omnipay\Common\Message\AbstractRequest
{
    /** @var string Endpoint URL */
    protected $endpoint = 'https://api.payway.com.au/rest/v1';

    /**
     * Get API publishable key
     * @return string
     */
    public function getApiKeyPublic()
    {
        return $this->getParameter('apiKeyPublic');
    }

    /**
     * Set API publishable key
     * @param  string $value API publishable key
     */
    public function setApiKeyPublic($value)
    {
        return $this->setParameter('apiKeyPublic', $value);
    }

    /**
     * Get API secret key
     * @return string
     */
    public function getApiKeySecret()
    {
        return $this->getParameter('apiKeySecret');
    }

    /**
     * Set API secret key
     * @param  string $value API secret key
     */
    public function setApiKeySecret($value)
    {
        return $this->setParameter('apiKeySecret', $value);
    }

    /**
     * Get Merchant
     * @return string Merchant ID
     */
    public function getMerchantId()
    {
        return $this->getParameter('merchantId');
    }

    /**
     * Set Merchant
     * @param  string $value Merchant ID
     */
    public function setMerchantId($value)
    {
        return $this->setParameter('merchantId', $value);
    }

    /**
     * Get Use Secret Key setting
     * @return bool Use secret API key if true
     */
    public function getUseSecretKey()
    {
        return $this->getParameter('useSecretKey');
    }

    /**
     * Set Use Secret Key setting
     * @param  string $value Flag to use secret key
     */
    public function setUseSecretKey($value)
    {
        return $this->setParameter('useSecretKey', $value);
    }

    /**
     * Get single-use token
     * @return string Token key
     */
    public function getSingleUseTokenId()
    {
        return $this->getParameter('singleUseTokenId');
    }

    /**
     * Set single-use token
     * @param  string $value Token Key
     */
    public function setSingleUseTokenId($value)
    {
        return $this->setParameter('singleUseTokenId', $value);
    }

    /**
     * Get Idempotency Key
     * @return string Idempotency Key
     */
    public function getIdempotencyKey()
    {
        return $this->getParameter('idempotencyKey') ?: Uuid::create();
    }

    /**
     * Set Idempotency Key
     * @param  string $value Idempotency Key
     */
    public function setIdempotencyKey($value)
    {
        return $this->setParameter('idempotencyKey', $value);
    }

    public function getCustomerNumber()
{'fraction_non_alphanumeric': 0.1168917792229448, 'fraction_numerical': 0.00033350008337502084, 'mean_word_length': 2.3415041782729804, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 27, 'https://': 4, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4603128', 'n_tokens_mistral': 1798, 'n_tokens_neox': 1767, 'n_words': 439}