function __construct(Gpf_Rpc_Params $params)
{
$this->methodName = $params->getMethod();
$this->className = $params->getClass();
$reflectionClass = new ReflectionClass($this->className);
$reflectionMethod = $reflectionClass->getMethod($this->methodName);
if (!$reflectionMethod->isPublic()) {
throw new Gpf_Exception($this->className . '->' . $this->methodName . '() is not a service method (not public)');
}
$this->annotations = new Gpf_Rpc_Annotation($reflectionMethod);
if (!$this->annotations->hasServiceAnnotation()) {
throw new Gpf_Exception($this->className . '->' . $this->methodName . '() is not a service method (annotation)');
}
$this->initSession($params->getSessionId());
$this->createInstance();
}