29 protected function create($actionName)
31 $action = parent::create($actionName);
64 $r = $this->checkPermission($action->getName(), $action->getArguments());
72 $r = $internalizer->process();
76 $action->setArguments($r->getData()[
'data']);
77 return parent::processBeforeAction($action);
95 if($this->errorCollection->count()==0)
113 $externalizer->getPage($result):$externalizer;
117 return $externalizer;
122 return parent::processAfterAction($action, $result);
131 private function checkPermission($name, $arguments=[])
137 elseif ($name ==
'update')
141 elseif ($name ==
'list')
145 elseif ($name ==
'getfields')
149 elseif ($name ==
'get')
153 elseif ($name ==
'delete')
178 throw new NotImplementedException(
'Check read permission. The method checkReadPermissionEntity is not implemented.');
187 throw new NotImplementedException(
'Check modify permission. The method checkModifyPermissionEntity is not implemented.');
252 $select = empty($select)? [
'*']:$select;
253 $order = empty($order)? [
'ID'=>
'ASC']:$order;
255 $items = $entityTable::getList(
260 'offset' => $pageNavigation->
getOffset(),
261 'limit' => $pageNavigation->
getLimit()
277 return function() use ($filter)
280 return $entityTable::getCount([$filter]);
292 protected function get($id)
296 return $entityTable::getById($id)->fetch();
304 public function add(array $fields)
307 return $entityTable::add($fields);
319 protected function update($id, array $fields)
327 return $entityTable::update($id, $fields);
344 protected function delete($id)
351 return $entityTable::delete($id);
370 $r = new \Bitrix\Main\Result();
371 if(isset($this->
get($id)[
'ID']) ==
false)
372 $r->addError(
new Error(
'Entity is not exists'));
391 $r->addError(
new Error(
'Entity is not exists'));
checkModifyPermissionEntity()
checkDeletePermissionEntity()
checkReadPermissionEntity()
checkCreatePermissionEntity()
checkGetFieldsPermissionEntity()
getList($select, $filter, $order, PageNavigation $pageNavigation)
processBeforeAction(Engine\Action $action)
processAfterAction(Engine\Action $action, $result)
checkPermissionEntity($name, $arguments=[])
createViewManager(Action $action)
checkUpdatePermissionEntity()