This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
<?php
|
||||
/**
|
||||
* Abstract class that implements the basic api for any client.
|
||||
* @author jpt
|
||||
* @abstract
|
||||
* @package Client
|
||||
*/
|
||||
abstract class Client_AbstractClient {
|
||||
|
||||
/**
|
||||
* @var int
|
||||
*/
|
||||
protected $ID;
|
||||
|
||||
/**
|
||||
* @var string
|
||||
*/
|
||||
protected $group;
|
||||
|
||||
/**
|
||||
* Contains a reference to the ClientManager in order to change stuff on the fly.
|
||||
* @var Client_ClientManager
|
||||
*/
|
||||
protected $clientManager;
|
||||
|
||||
/**
|
||||
* This function will be the main entry point of any client.
|
||||
* @param string $data
|
||||
* @return string
|
||||
*/
|
||||
abstract public function processData($data);
|
||||
|
||||
/**
|
||||
* This function will load the given config.
|
||||
* @param array $config
|
||||
*/
|
||||
abstract public function loadConfig($config);
|
||||
|
||||
/**
|
||||
* @param int $id
|
||||
*/
|
||||
public function setID($id) {
|
||||
$this->ID = $id;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param string $group
|
||||
*/
|
||||
public function setGroup($group) {
|
||||
$this->group = $group;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Injects ClientManager
|
||||
* @param Client_ClientManager $clientManager
|
||||
*/
|
||||
public function injectClientManager($clientManager) {
|
||||
$this->clientManager = $clientManager;
|
||||
}
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user