<?php

namespace OfficeBrain\Bundle\ProductTagBundle\ApiClient;

use OfficeBrain\Bundle\ApiClientBundle\ApiClient\AbstractApiClient;

/**
 * @author OfficeBrain 4505 <info@officebrain.com>
 *
 * Description : Public Tag Api Client
 */
class ProductTagApiClient extends AbstractApiClient
{
    /**
     * @author Employee Id: 4505
     * Description : Product Tag API for get Public tag and list public tag.
     *
     * @throws Exception
     * */
    public function doProcess()
    {
        switch ($this->apiCallType) {
            case 'get_product':
                $this->apiCallUrl = 'product';
                break;
            case 'view_public_tag':
                $this->apiCallUrl = 'product-tag/view';
                break;
            case 'list_public_tag':
                $this->apiCallUrl = 'product-tag/list';
                break;
            case 'list_product_public_tag':
                $this->apiCallUrl = 'product-tag/listByProductId';
                break;
            case 'assign_product':
                $this->apiCallUrl = 'product-tag/assign-product';
                break;
            case 'list_mapped_product':
                $this->apiCallUrl = 'product-tag/list-mapped-product';
                break;
            case 'delete_product':
                $this->apiCallUrl = 'product-tag/delete-product';
                break;
            case 'get_product_id_by_tag':
                $this->apiCallUrl = 'product-tag/get-product-id-by-tag';
                break;
                
            default:
                break;
        }
        $this->callApi();
    }
}
