<?php
namespace PHPFUI\ConstantContact\V3;
class ContactList extends \PHPFUI\ConstantContact\Base
{
public function __construct(\PHPFUI\ConstantContact\Client $client)
{
parent::__construct($client, '/v3/contact_lists/{list_id}');
}
public function delete(string $list_id) : ?array
{
return $this->doDelete(['list_id' => $list_id, ]);
}
public function deleteTyped(string $list_id) : ?\PHPFUI\ConstantContact\Definition\ActivityDeleteListResponse
{
$data = $this->delete($list_id);
return $data ? new \PHPFUI\ConstantContact\Definition\ActivityDeleteListResponse($data) : null;
}
public function get(string $list_id, ?string $include_membership_count = null) : ?array
{
if (null !== $include_membership_count)
{
$validValues = ['all', 'active'];
if (! \in_array($include_membership_count, $validValues))
{
throw new \PHPFUI\ConstantContact\Exception\InvalidValue("Parameter include_membership_count with value '{$include_membership_count}' is not one of (" . \implode(', ', $validValues) . ') in ' . __METHOD__);
}
}
return $this->doGet(['list_id' => $list_id, 'include_membership_count' => $include_membership_count, ]);
}
public function getTyped(string $list_id, ?string $include_membership_count = null) : ?\PHPFUI\ConstantContact\Definition\ContactList
{
$data = $this->get($list_id, $include_membership_count);
return $data ? new \PHPFUI\ConstantContact\Definition\ContactList($data) : null;
}
public function put(string $list_id, \PHPFUI\ConstantContact\Definition\ListInput $JSON_PUT_body) : ?array
{
return $this->doPut(['list_id' => $list_id, 'JSON_PUT_body' => $JSON_PUT_body->getData(), ]);
}
public function putTyped(string $list_id, \PHPFUI\ConstantContact\Definition\ListInput $JSON_PUT_body) : ?\PHPFUI\ConstantContact\Definition\ContactListPutPost
{
$data = $this->put($list_id, $JSON_PUT_body);
return $data ? new \PHPFUI\ConstantContact\Definition\ContactListPutPost($data) : null;
}
}