本文整理汇总了PHP中Sonata\BlockBundle\Model\BlockInterface::getType方法的典型用法代码示例。如果您正苦于以下问题:PHP BlockInterface::getType方法的具体用法?PHP BlockInterface::getType怎么用?PHP BlockInterface::getType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Sonata\BlockBundle\Model\BlockInterface
的用法示例。
在下文中一共展示了BlockInterface::getType方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getSetting
/**
* {@inheritdoc}
*/
public function getSetting($name)
{
if (!array_key_exists($name, $this->settings)) {
throw new \RuntimeException(sprintf('Unable to find the option `%s` (%s) - define the option in the related BlockServiceInterface', $name, $this->block->getType()));
}
return $this->settings[$name];
}
示例2: render
/**
* {@inheritdoc}
*/
public function render(BlockInterface $block, Response $response = null)
{
if ($this->logger) {
$this->logger->info(sprintf('[cms::renderBlock] block.id=%d, block.type=%s ', $block->getId(), $block->getType()));
}
try {
$service = $this->blockServiceManager->get($block);
$service->load($block);
// load the block
$response = $service->execute($block, $response);
if (!$response instanceof Response) {
throw new \RuntimeException('A block service must return a Response object');
}
} catch (\Exception $e) {
if ($this->logger) {
$this->logger->crit(sprintf('[cms::renderBlock] block.id=%d - error while rendering block - %s', $block->getId(), $e->getMessage()));
}
if ($this->debug) {
throw $e;
}
$response = new Response();
$response->setPrivate();
}
return $response;
}
示例3: renderBlock
/**
* @param BlockInterface $block
* @param OutputInterface $output
* @param int $spance
*/
public function renderBlock(BlockInterface $block, OutputInterface $output, $extended, $space = 0)
{
$output->writeln(sprintf("%s <comment>> Id: %d - type: %s - name: %s</comment>", str_repeat(" ", $space), $block->getId(), $block->getType(), $block->getName()));
if ($extended) {
foreach ($block->getSettings() as $name => $value) {
$output->writeln(sprintf("%s %s: %s", str_repeat(" ", $space + 1), $name, var_export($value, 1)));
}
}
foreach ($block->getChildren() as $block) {
$this->renderBlock($block, $output, $extended, $space + 1);
}
}
示例4: startTracing
/**
* @param BlockInterface $block
*
* @return array
*/
protected function startTracing(BlockInterface $block)
{
$this->traces[$block->getId()] = $this->stopwatch->start(sprintf('%s (id: %s, type: %s)', $block->getName(), $block->getId(), $block->getType()));
return array('name' => $block->getName(), 'type' => $block->getType(), 'duration' => false, 'memory_start' => memory_get_usage(true), 'memory_end' => false, 'memory_peak' => false, 'cache' => array('keys' => array(), 'contextual_keys' => array(), 'handler' => false, 'from_cache' => false, 'ttl' => 0, 'created_at' => false, 'lifetime' => 0, 'age' => 0), 'assets' => array('js' => array(), 'css' => array()));
}
示例5: getCacheService
/**
* @param \Sonata\BlockBundle\Model\BlockInterface $block
* @return \Sonata\CacheBundle\Cache\CacheInterface;
*/
protected function getCacheService(BlockInterface $block)
{
$type = isset($this->cacheBlocks[$block->getType()]) ? $this->cacheBlocks[$block->getType()] : false;
if (!$type) {
return false;
}
return $this->cacheManager->getCacheService($type);
}
示例6: validate
/**
* @todo: this function should be remove into a proper statefull object
*
* {@inheritdoc}
*/
public function validate(ErrorElement $errorElement, BlockInterface $block)
{
if (!$block->getId() && !$block->getType()) {
return;
}
if ($this->inValidate) {
return;
}
// As block can be nested, we only need to validate the main block, no the children
try {
$this->inValidate = true;
$this->get($block)->validateBlock($errorElement, $block);
$this->inValidate = false;
} catch (\Exception $e) {
$this->inValidate = false;
}
}
示例7: getBlockFilter
/**
* Returns the exception filter for given block.
*
* @param BlockInterface $block
*
* @return FilterInterface
*
* @throws \RuntimeException
*/
public function getBlockFilter(BlockInterface $block)
{
$type = $block->getType();
$name = isset($this->blockFilters[$type]) ? $this->blockFilters[$type] : $this->defaultFilter;
$service = $this->getFilterService($name);
if (!$service instanceof FilterInterface) {
throw new \RuntimeException(sprintf('The service "%s" is not an exception filter', $name));
}
return $service;
}
示例8: createBlocks
/**
* @param BlockInterface $block
*
* @return array
*/
protected function createBlocks(BlockInterface $block)
{
$content = array();
$content['id'] = $block->getId();
$content['name'] = $block->getName();
$content['enabled'] = $block->getEnabled();
$content['position'] = $block->getPosition();
$content['settings'] = $block->getSettings();
$content['type'] = $block->getType();
$content['created_at'] = $block->getCreatedAt()->format('U');
$content['updated_at'] = $block->getUpdatedAt()->format('U');
$content['blocks'] = array();
foreach ($block->getChildren() as $child) {
$content['blocks'][] = $this->createBlocks($child);
}
return $content;
}
示例9: validate
/**
* {@inheritdoc}
*/
public function validate(ErrorElement $errorElement, BlockInterface $block)
{
if (!$block->getId() && !$block->getType()) {
return;
}
$this->get($block)->validateBlock($errorElement, $block);
}