当前位置: 首页>>代码示例>>PHP>>正文


PHP ActionRequest::getControllerPackageKey方法代码示例

本文整理汇总了PHP中TYPO3\Flow\Mvc\ActionRequest::getControllerPackageKey方法的典型用法代码示例。如果您正苦于以下问题:PHP ActionRequest::getControllerPackageKey方法的具体用法?PHP ActionRequest::getControllerPackageKey怎么用?PHP ActionRequest::getControllerPackageKey使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在TYPO3\Flow\Mvc\ActionRequest的用法示例。


在下文中一共展示了ActionRequest::getControllerPackageKey方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: uriFor

 /**
  * Creates an URI used for linking to an Controller action.
  *
  * @param string $actionName Name of the action to be called
  * @param array $controllerArguments Additional query parameters. Will be merged with $this->arguments.
  * @param string $controllerName Name of the target controller. If not set, current ControllerName is used.
  * @param string $packageKey Name of the target package. If not set, current Package is used.
  * @param string $subPackageKey Name of the target SubPackage. If not set, current SubPackage is used.
  * @return string the rendered URI
  * @api
  * @see build()
  * @throws \TYPO3\Flow\Mvc\Routing\Exception\MissingActionNameException if $actionName parameter is empty
  */
 public function uriFor($actionName, $controllerArguments = array(), $controllerName = null, $packageKey = null, $subPackageKey = null)
 {
     if ($actionName === null || $actionName === '') {
         throw new \TYPO3\Flow\Mvc\Routing\Exception\MissingActionNameException('The URI Builder could not build a URI linking to an action controller because no action name was specified. Please check the stack trace to see which code or template was requesting the link and check the arguments passed to the URI Builder.', 1354629891);
     }
     $controllerArguments['@action'] = strtolower($actionName);
     if ($controllerName !== null) {
         $controllerArguments['@controller'] = strtolower($controllerName);
     } else {
         $controllerArguments['@controller'] = strtolower($this->request->getControllerName());
     }
     if ($packageKey === null && $subPackageKey === null) {
         $subPackageKey = $this->request->getControllerSubpackageKey();
     }
     if ($packageKey === null) {
         $packageKey = $this->request->getControllerPackageKey();
     }
     $controllerArguments['@package'] = strtolower($packageKey);
     if ($subPackageKey !== null) {
         $controllerArguments['@subpackage'] = strtolower($subPackageKey);
     }
     if ($this->format !== null && $this->format !== '') {
         $controllerArguments['@format'] = $this->format;
     }
     $controllerArguments = $this->addNamespaceToArguments($controllerArguments, $this->request);
     return $this->build($controllerArguments);
 }
开发者ID:kszyma,项目名称:flow-development-collection,代码行数:40,代码来源:UriBuilder.php

示例2: setControllerPackageKeyWithLowercasePackageKeyResolvesCorrectly

 /**
  * @test
  */
 public function setControllerPackageKeyWithLowercasePackageKeyResolvesCorrectly()
 {
     $mockPackageManager = $this->getMock(\TYPO3\Flow\Package\PackageManager::class);
     $mockPackageManager->expects($this->any())->method('getCaseSensitivePackageKey')->with('acme.testpackage')->will($this->returnValue('Acme.Testpackage'));
     $this->inject($this->actionRequest, 'packageManager', $mockPackageManager);
     $this->actionRequest->setControllerPackageKey('acme.testpackage');
     $this->assertEquals('Acme.Testpackage', $this->actionRequest->getControllerPackageKey());
 }
开发者ID:kszyma,项目名称:flow-development-collection,代码行数:11,代码来源:ActionRequestTest.php

示例3: redirectToRequest

 /**
  * Redirects the request to another action and / or controller.
  *
  * Redirect will be sent to the client which then performs another request to the new URI.
  *
  * NOTE: This method only supports web requests and will throw an exception
  * if used with other request types.
  *
  * @param ActionRequest $request The request to redirect to
  * @param integer $delay (optional) The delay in seconds. Default is no delay.
  * @param integer $statusCode (optional) The HTTP status code for the redirect. Default is "303 See Other"
  * @return void
  * @throws \TYPO3\Flow\Mvc\Exception\StopActionException
  * @see forwardToRequest()
  * @api
  */
 protected function redirectToRequest(ActionRequest $request, $delay = 0, $statusCode = 303)
 {
     $packageKey = $request->getControllerPackageKey();
     $subpackageKey = $request->getControllerSubpackageKey();
     if ($subpackageKey !== null) {
         $packageKey .= '\\' . $subpackageKey;
     }
     $this->redirect($request->getControllerActionName(), $request->getControllerName(), $packageKey, $request->getArguments(), $delay, $statusCode, $request->getFormat());
 }
开发者ID:robertlemke,项目名称:flow-development-collection,代码行数:25,代码来源:AbstractController.php

示例4: onAuthenticationSuccess

 /**
  * Is called if authentication was successful.
  *
  * @param \TYPO3\Flow\Mvc\ActionRequest $originalRequest The request that was intercepted by the security framework, NULL if there was none
  * @return string
  */
 public function onAuthenticationSuccess(\TYPO3\Flow\Mvc\ActionRequest $originalRequest = NULL)
 {
     $uriBuilder = $this->controllerContext->getUriBuilder();
     if ($originalRequest !== NULL) {
         $uri = $uriBuilder->uriFor($originalRequest->getControllerActionName(), $originalRequest->getArguments(), $originalRequest->getControllerName(), $originalRequest->getControllerPackageKey());
     } else {
         if (isset($this->settings['Redirect']['signedIn'])) {
             $packageKey = $this->settings['Redirect']['signedIn']['packageKey'];
             $controllerName = $this->settings['Redirect']['signedIn']['controllerName'];
             $actionName = $this->settings['Redirect']['signedIn']['actionName'];
             $uri = $uriBuilder->uriFor($actionName, NULL, $controllerName, $packageKey);
         } else {
             $uri = $uriBuilder->uriFor('signIn', NULL, 'Login', 'Flow.Login');
         }
     }
     $response = array();
     $response['status'] = 'OK';
     $response['redirect'] = $uri;
     $this->view->assign('value', $response);
 }
开发者ID:Chhunlong,项目名称:Flow.Login,代码行数:26,代码来源:LoginController.php


注:本文中的TYPO3\Flow\Mvc\ActionRequest::getControllerPackageKey方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。