/**
  * 协议校验
  * @param $cname
  * @param $obj
  */
 private function validate($cname, $obj)
 {
     $properties = $this->reader->getProperties("{$cname}");
     exit(var_dump($properties));
     foreach ($properties as $key => $value) {
         foreach ($value as $annotation) {
             if ($annotation->getName() == "validate") {
                 $params = $annotation->getArguments();
                 //如果是必填的选项。
                 $validator = ValidatorFactory::getInstance()->getValidator($params['type']);
                 $validator->validator($key, $obj->{$key}, $params);
             } else {
                 if ($annotation->getName() == "where") {
                     $params = $annotation->getArguments();
                     $sql = null;
                     if (isset($params['type']) && $params['type'] == 'string') {
                         $sql = ' and ' . $params['field'] . ' ' . $params['op'] . ' ' . $obj->{$key};
                     } else {
                         if ($obj->{$key}) {
                             $sql = ' and ' . $params['field'] . ' ' . $params['op'] . $obj->{$key};
                         }
                     }
                     if ($sql) {
                         $obj->where = $obj->where . $sql;
                     }
                 }
             }
         }
     }
 }