<?php

if (!defined('ABSPATH')) {
    exit;
}
abstract class WC_Legacy_Webhook extends WC_Data
{
    public function __isset($key)
    {
        $legacy_keys = array('id', 'status', 'post_data', 'delivery_url', 'secret', 'topic', 'hooks', 'resource', 'event', 'failure_count', 'api_version');
        if (in_array($key, $legacy_keys, true)) {
            return true;
        }
        return false;
    }
    public function __get($key)
    {
        wc_doing_it_wrong($key, 'Webhook properties should not be accessed directly.', '3.2');
        switch ($key) {
            case 'id':
                $value = $this->get_id();
                break;
            case 'status':
                $value = $this->get_status();
                break;
            case 'post_data':
                $value = null;
                break;
            case 'delivery_url':
                $value = $this->get_delivery_url();
                break;
            case 'secret':
                $value = $this->get_secret();
                break;
            case 'topic':
                $value = $this->get_topic();
                break;
            case 'hooks':
                $value = $this->get_hooks();
                break;
            case 'resource':
                $value = $this->get_resource();
                break;
            case 'event':
                $value = $this->get_event();
                break;
            case 'failure_count':
                $value = $this->get_failure_count();
                break;
            case 'api_version':
                $value = $this->get_api_version();
                break;
            default:
                $value = '';
                break;
        }
        return $value;
    }
    public function get_post_data()
    {
        wc_deprecated_function('WC_Webhook::get_post_data', '3.2');
        return null;
    }
    public function update_status($status)
    {
        wc_deprecated_function('WC_Webhook::update_status', '3.2', 'WC_Webhook::set_status');
        $this->set_status($status);
        $this->save();
    }
}