Task #26662

Fix and cleanup UriBuilder

Added by Bastian Waidelich over 10 years ago. Updated over 10 years ago.

Status:
Resolved
Priority:
Must have
Category:
MVC - Routing
Target version:
-
Start date:
2011-05-06
Due date:
% Done:

100%

Estimated time:
Sprint:
PHP Version:
Has patch:
Complexity:

Description

Currently the UriBuilder does not reliably support SubRequests and it has some flaws, that should be fixed.
Some facts:

  • setRequest() resets the UriBuilder ($this->reset()) - correct
  • setRequest() expects an \F3\FLOW3\MVC\RequestInterface - should be \F3\FLOW3\MVC\Web\Request !?
  • setArguments() prefixes specified arguments, if argumentPrefix is not empty - incorrect, setArguments should be a simple setter for $this->arguments
  • getArgments() returns all arguments, including non-prefixed - correct, if setter is fixed
  • setFormat() stores the specified format string lower cased - probably ok
  • setArgumentPrefix() (non-api) "Specifies the prefix to be used for all arguments." - should be renamed to setControllerArgumentPrefix() removed. Prefix comes from Request::getArgumentNamespace()
  • reset() sets argument prefix and all arguments of the parent request if $this->request is a SubRequest - incorrect. reset(9 should completely reset the UriBuilder (except for the request). parent request arguments should be added in build()
  • uriFor() modifies $this->arguments - incorrect, modified arguments should be passed to build() as method arguments

Related issues

Blocks Conference Management - Story #26663: Solve FLOW3/Phoenix bugs for sprint "Call for Papers"Resolved2011-05-06

Actions

Also available in: Atom PDF