<?php
/**
* * * * * * * *<4297088@qq.com>
* */
namespace cn\gz53\framework\dao\websocket;
use cn\gz53\framework\dao\Dao;
use cn\gz53\framework\sdk\http\WebSocketServerSdk;
use cn\gz53\framework\model\po\websocket\WebSocketServerOnCallbackSetPo;
use cn\gz53\framework\model\po\websocket\WebSocketServerPushCallbackGetPo;
use cn\gz53\framework\model\po\websocket\WebSocketServerConfigPo;
use cn\gz53\framework\model\po\websocket\WebSocketServerInitPo;
use cn\gz53\framework\model\po\websocket\WebSocketServerLoopPo;
use cn\gz53\framework\model\po\websocket\WebSocketServerWorkerCallbackPo;
class WebSocketServerDao extends Dao
{
public function setConfig(WebSocketServerConfigSetDaoI $bo){
$po = WebSocketServerConfigPo::getInstance($this->_context);
$webSocketServerSdk = WebSocketServerSdk::getInstance($this->_context);
$po->setConfig($bo->getConfig());
if(!$webSocketServerSdk->setConfig($po)){
return false;
}
return true;
}
public function setClientCallback(WebSocketServerOnCallbackSetDaoI $bo){
$po = WebSocketServerOnCallbackSetPo::getInstance($this->_context);
$webSocketServerSdk = WebSocketServerSdk::getInstance($this->_context);
$po->setOnMessageCallback($bo->getOnMessageCallback());
$po->setOnOpenCallback($bo->getOnOpenCallback());
$po->setOnCloseCallback($bo->getOnCloseCallback());
if(!$webSocketServerSdk->setClientCallback($po)){
return false;
}
return true;
}
public function getPushCallback(WebSocketServerPushCallbackGetDaoI $bo){
$po = WebSocketServerPushCallbackGetPo::getInstance($this->_context);
$webSocketServerSdk = WebSocketServerSdk::getInstance($this->_context);
if(!$webSocketServerSdk->getPushCallback($po)){
return false;
}
$bo->setPushMessageCallback($po->getPushMessageCallback());
return true;
}
public function setWorkerCallback(WebSocketServerWorkerCallbackSetDaoI $bo){
$po = WebSocketServerWorkerCallbackPo::getInstance($this->_context);
$webSocketServerSdk = WebSocketServerSdk::getInstance($this->_context);
$po->setWorkerStartCallback($bo->getWorkerStartCallback());
$po->setWorkerStopCallback($bo->getWorkerStopCallback());
if(!$webSocketServerSdk->setWorkerCallback($po)){
return false;
}
return true;
}
public function init(WebSocketServerInitDaoI $bo){
$po = WebSocketServerInitPo::getInstance($this->_context);
$webSocketServerSdk = WebSocketServerSdk::getInstance($this->_context);
if(!$webSocketServerSdk->init($po)){
return false;
}
return true;
}
public function loop(WebSocketServerLoopDaoI $bo){
$po = WebSocketServerLoopPo::getInstance($this->_context);
$webSocketServerSdk = WebSocketServerSdk::getInstance($this->_context);
if(!$webSocketServerSdk->loop($po)){
return false;
}
return true;
}
}