Extbase:
authorSebastian Kurfürst <sebastian@typo3.org>
Sun, 17 May 2009 19:23:23 +0000 (19:23 +0000)
committerSebastian Kurfürst <sebastian@typo3.org>
Sun, 17 May 2009 19:23:23 +0000 (19:23 +0000)
* Corrected all @package and @subpackage annotations
* added preliminary @internal annotations
* Fixed URIHelper based on a patch by Bastian Waidelich
* Set version number in ext_emconf.php to 0.9.0
This version can now go into TYPO3 4.3 alpha3.

151 files changed:
typo3/sysext/extbase/Classes/Configuration/Exception.php
typo3/sysext/extbase/Classes/Configuration/Exception/ContainerIsLocked.php
typo3/sysext/extbase/Classes/Configuration/Exception/InvalidConfigurationType.php
typo3/sysext/extbase/Classes/Configuration/Exception/NoSuchFile.php
typo3/sysext/extbase/Classes/Configuration/Exception/NoSuchOption.php
typo3/sysext/extbase/Classes/Configuration/Exception/ParseError.php
typo3/sysext/extbase/Classes/Configuration/Manager.php
typo3/sysext/extbase/Classes/Configuration/Source/FlexFormSource.php
typo3/sysext/extbase/Classes/Configuration/SourceInterface.php
typo3/sysext/extbase/Classes/Controller/StandardController.php
typo3/sysext/extbase/Classes/Dispatcher.php
typo3/sysext/extbase/Classes/DomainObject/AbstractDomainObject.php
typo3/sysext/extbase/Classes/DomainObject/AbstractEntity.php
typo3/sysext/extbase/Classes/DomainObject/AbstractValueObject.php
typo3/sysext/extbase/Classes/DomainObject/DomainObjectInterface.php
typo3/sysext/extbase/Classes/Exception.php
typo3/sysext/extbase/Classes/Exception/InfiniteLoop.php
typo3/sysext/extbase/Classes/Exception/InvalidActionName.php
typo3/sysext/extbase/Classes/Exception/InvalidArgumentName.php
typo3/sysext/extbase/Classes/Exception/InvalidArgumentType.php
typo3/sysext/extbase/Classes/Exception/InvalidArgumentValue.php
typo3/sysext/extbase/Classes/Exception/InvalidController.php
typo3/sysext/extbase/Classes/Exception/InvalidControllerName.php
typo3/sysext/extbase/Classes/Exception/InvalidExtensionName.php
typo3/sysext/extbase/Classes/Exception/InvalidFormat.php
typo3/sysext/extbase/Classes/Exception/InvalidMarker.php
typo3/sysext/extbase/Classes/Exception/InvalidPart.php
typo3/sysext/extbase/Classes/Exception/InvalidRequestMethod.php
typo3/sysext/extbase/Classes/Exception/InvalidRequestType.php
typo3/sysext/extbase/Classes/Exception/InvalidRoutePartHandler.php
typo3/sysext/extbase/Classes/Exception/InvalidTemplateSource.php
typo3/sysext/extbase/Classes/Exception/InvalidViewHelper.php
typo3/sysext/extbase/Classes/Exception/NoSuchAction.php
typo3/sysext/extbase/Classes/Exception/NoSuchArgument.php
typo3/sysext/extbase/Classes/Exception/NoSuchController.php
typo3/sysext/extbase/Classes/Exception/StopAction.php
typo3/sysext/extbase/Classes/Exception/StopUncachedAction.php
typo3/sysext/extbase/Classes/Exception/SuccessiveDynamicRouteParts.php
typo3/sysext/extbase/Classes/Exception/UnsupportedRequestType.php
typo3/sysext/extbase/Classes/MVC/Controller/AbstractController.php
typo3/sysext/extbase/Classes/MVC/Controller/ActionController.php
typo3/sysext/extbase/Classes/MVC/Controller/Argument.php
typo3/sysext/extbase/Classes/MVC/Controller/Arguments.php
typo3/sysext/extbase/Classes/MVC/Controller/ArgumentsValidator.php
typo3/sysext/extbase/Classes/MVC/Controller/ControllerInterface.php
typo3/sysext/extbase/Classes/MVC/Exception.php
typo3/sysext/extbase/Classes/MVC/Exception/InfiniteLoop.php
typo3/sysext/extbase/Classes/MVC/Exception/InvalidActionName.php
typo3/sysext/extbase/Classes/MVC/Exception/InvalidArgumentName.php
typo3/sysext/extbase/Classes/MVC/Exception/InvalidArgumentType.php
typo3/sysext/extbase/Classes/MVC/Exception/InvalidArgumentValue.php
typo3/sysext/extbase/Classes/MVC/Exception/InvalidController.php
typo3/sysext/extbase/Classes/MVC/Exception/InvalidControllerName.php
typo3/sysext/extbase/Classes/MVC/Exception/InvalidExtensionName.php
typo3/sysext/extbase/Classes/MVC/Exception/InvalidMarker.php
typo3/sysext/extbase/Classes/MVC/Exception/InvalidRequestMethod.php
typo3/sysext/extbase/Classes/MVC/Exception/InvalidRequestType.php
typo3/sysext/extbase/Classes/MVC/Exception/InvalidTemplateResource.php
typo3/sysext/extbase/Classes/MVC/Exception/InvalidUriPattern.php
typo3/sysext/extbase/Classes/MVC/Exception/InvalidViewHelper.php
typo3/sysext/extbase/Classes/MVC/Exception/NoSuchAction.php
typo3/sysext/extbase/Classes/MVC/Exception/NoSuchArgument.php
typo3/sysext/extbase/Classes/MVC/Exception/NoSuchController.php
typo3/sysext/extbase/Classes/MVC/Exception/StopAction.php
typo3/sysext/extbase/Classes/MVC/Exception/UnsupportedRequestType.php
typo3/sysext/extbase/Classes/MVC/Request.php
typo3/sysext/extbase/Classes/MVC/Response.php
typo3/sysext/extbase/Classes/MVC/View/AbstractView.php
typo3/sysext/extbase/Classes/MVC/View/Helper/AbstractHelper.php
typo3/sysext/extbase/Classes/MVC/View/Helper/HelperInterface.php
typo3/sysext/extbase/Classes/MVC/View/Helper/URIHelper.php
typo3/sysext/extbase/Classes/MVC/View/ViewInterface.php
typo3/sysext/extbase/Classes/MVC/Web/Request.php
typo3/sysext/extbase/Classes/MVC/Web/RequestBuilder.php
typo3/sysext/extbase/Classes/MVC/Web/Response.php
typo3/sysext/extbase/Classes/Persistence/DataMapperInterface.php
typo3/sysext/extbase/Classes/Persistence/Exception.php
typo3/sysext/extbase/Classes/Persistence/Exception/CleanStateNotMemorized.php
typo3/sysext/extbase/Classes/Persistence/Exception/InvalidClass.php
typo3/sysext/extbase/Classes/Persistence/Exception/InvalidPropertyType.php
typo3/sysext/extbase/Classes/Persistence/Exception/MissingBackend.php
typo3/sysext/extbase/Classes/Persistence/Exception/TooDirty.php
typo3/sysext/extbase/Classes/Persistence/Exception/UnsupportedMethod.php
typo3/sysext/extbase/Classes/Persistence/IdentityMap.php
typo3/sysext/extbase/Classes/Persistence/Mapper/ColumnMap.php
typo3/sysext/extbase/Classes/Persistence/Mapper/DataMap.php
typo3/sysext/extbase/Classes/Persistence/Mapper/ObjectRelationalMapper.php
typo3/sysext/extbase/Classes/Persistence/ObjectStorage.php
typo3/sysext/extbase/Classes/Persistence/Repository.php
typo3/sysext/extbase/Classes/Persistence/RepositoryInterface.php
typo3/sysext/extbase/Classes/Persistence/Session.php
typo3/sysext/extbase/Classes/Property/Exception.php
typo3/sysext/extbase/Classes/Property/Exception/FormatNotSupported.php
typo3/sysext/extbase/Classes/Property/Exception/InvalidDataType.php
typo3/sysext/extbase/Classes/Property/Exception/InvalidFormat.php
typo3/sysext/extbase/Classes/Property/Exception/InvalidProperty.php
typo3/sysext/extbase/Classes/Property/Exception/InvalidSource.php
typo3/sysext/extbase/Classes/Property/Exception/InvalidTarget.php
typo3/sysext/extbase/Classes/Property/Mapper.php
typo3/sysext/extbase/Classes/Property/MappingResults.php
typo3/sysext/extbase/Classes/Reflection/ClassReflection.php
typo3/sysext/extbase/Classes/Reflection/DocCommentParser.php
typo3/sysext/extbase/Classes/Reflection/Exception.php
typo3/sysext/extbase/Classes/Reflection/MethodReflection.php
typo3/sysext/extbase/Classes/Reflection/ObjectAccess.php
typo3/sysext/extbase/Classes/Reflection/ParameterReflection.php
typo3/sysext/extbase/Classes/Reflection/PropertyReflection.php
typo3/sysext/extbase/Classes/Reflection/Service.php
typo3/sysext/extbase/Classes/Validation/Errors.php
typo3/sysext/extbase/Classes/Validation/Exception.php
typo3/sysext/extbase/Classes/Validation/Exception/InvalidSubject.php
typo3/sysext/extbase/Classes/Validation/Exception/InvalidValidationOptions.php
typo3/sysext/extbase/Classes/Validation/Exception/NoSuchValidator.php
typo3/sysext/extbase/Classes/Validation/Exception/NoValidatorFound.php
typo3/sysext/extbase/Classes/Validation/Validator/AbstractObjectValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/AbstractValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/AlphanumericValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/ChainValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/DateTimeValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/EmailAddressValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/FloatValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/GenericObjectValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/IntegerValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/NotEmptyValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/NumberRangeValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/NumberValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/ObjectValidatorInterface.php
typo3/sysext/extbase/Classes/Validation/Validator/RawValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/RegularExpressionValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/StringLengthValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/TextValidator.php
typo3/sysext/extbase/Classes/Validation/Validator/ValidatorInterface.php
typo3/sysext/extbase/Classes/Validation/ValidatorResolver.php
typo3/sysext/extbase/Classes/View/EmptyView.php
typo3/sysext/extbase/Tests/Fixtures/Entity.php
typo3/sysext/extbase/Tests/Validation/Validator/AlphanumericValidator_testcase.php
typo3/sysext/extbase/Tests/Validation/Validator/ChainValidator_testcase.php
typo3/sysext/extbase/Tests/Validation/Validator/DateTimeValidator_testcase.php
typo3/sysext/extbase/Tests/Validation/Validator/EmailAddressValidator_testcase.php
typo3/sysext/extbase/Tests/Validation/Validator/FloatValidator_testcase.php
typo3/sysext/extbase/Tests/Validation/Validator/GenericObjectValidator_testcase.php
typo3/sysext/extbase/Tests/Validation/Validator/IntegerValidator_testcase.php
typo3/sysext/extbase/Tests/Validation/Validator/NotEmptyValidator_testcase.php
typo3/sysext/extbase/Tests/Validation/Validator/NumberRangeValidator_testcase.php
typo3/sysext/extbase/Tests/Validation/Validator/NumberValidator_testcase.php
typo3/sysext/extbase/Tests/Validation/Validator/RawValidator_testcase.php
typo3/sysext/extbase/Tests/Validation/Validator/RegularExpressionValidator_testcase.php
typo3/sysext/extbase/Tests/Validation/Validator/StringLengthValidator_testcase.php
typo3/sysext/extbase/Tests/Validation/Validator/TextValidator_testcase.php
typo3/sysext/extbase/Tests/Validation/ValidatorResolver_testcase.php
typo3/sysext/extbase/ext_emconf.php

index 8dd8155..8913ca1 100644 (file)
 /**
  * A generic Configuration Exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage Configuration
  * @version $ID:$
+ * @internal
  */
 class Tx_Extbase_Configuration_Exception extends Tx_Extbase_Exception {
 
index e5d7d02..e7037c2 100644 (file)
@@ -29,7 +29,7 @@
 /**
  * A Container Is Locked exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index a7ef99b..859bc00 100644 (file)
@@ -29,7 +29,7 @@
 /**
  * A No Such File exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 0691f71..bc87445 100644 (file)
@@ -29,7 +29,7 @@
 /**
  * A No Such Option exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index eac4931..48d4e57 100644 (file)
@@ -29,7 +29,7 @@
 /**
  * A Parse Error exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index fb106a4..184be32 100644 (file)
 /**
  * A general purpose configuration manager
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage Configuration
  * @version $ID:$
+ * @internal
  */
 class Tx_Extbase_Configuration_Manager implements t3lib_Singleton {
 
@@ -49,6 +50,7 @@ class Tx_Extbase_Configuration_Manager implements t3lib_Singleton {
         * Constructs the configuration manager
         *
         * @param array $configurationSourcesObjectNames An array of object names of the configuration sources
+        * @internal
         */
        public function __construct(array $configurationSources = array()) {
                $this->configurationSources = $configurationSources;
@@ -59,6 +61,7 @@ class Tx_Extbase_Configuration_Manager implements t3lib_Singleton {
         *
         * @param string $extensionName Name of the extension to return the settings for
         * @return array The settings of the specified extension
+        * @internal
         */
        public function getSettings($extensionName, $controllerName = '', $actionName = '') {
                if (empty($this->settings[$extensionName])) {
@@ -85,6 +88,7 @@ class Tx_Extbase_Configuration_Manager implements t3lib_Singleton {
         * @param string $extensionName
         * @return void
         * @see getSettings()
+        * @internal
         */
        protected function loadGlobalSettings($extensionName) {
                $settings = array();
@@ -93,6 +97,5 @@ class Tx_Extbase_Configuration_Manager implements t3lib_Singleton {
                }
                $this->settings[$extensionName] = $settings;
        }
-
 }
 ?>
\ No newline at end of file
index 82a2989..c30b0b8 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Configuration source based on FlexForm settings
  * 
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 254262d..b26d17a 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Contract for a configuration source
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index d1d3e60..10bc12c 100755 (executable)
  * A Special Case of a Controller: If no controller could be resolved or no
  * controller has been specified in the request, this controller is chosen.
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage Controller
  * @version $ID:$
+ * @todo - is this ever called?
  */
 class Tx_Extbase_Controller_StandardController extends Tx_Extbase_MVC_Controller_ActionController {
 
index 5adf401..95e6d84 100644 (file)
@@ -26,7 +26,7 @@
  * Creates a request an dispatches it to the controller which was specified
  * by TS Setup, Flexform and returns the content to the v4 framework.
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 42235d1..77dbcab 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A generic Domain Object
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
@@ -52,6 +52,7 @@ abstract class Tx_Extbase_DomainObject_AbstractDomainObject implements Tx_Extbas
         * parent::__wakeup() first!
         *
         * @return void
+        * @internal
         */
        public function __wakeup() {
                foreach ($GLOBALS['Extbase']['reconstituteObject']['properties'] as $propertyName => $propertyValue) {
@@ -79,7 +80,7 @@ abstract class Tx_Extbase_DomainObject_AbstractDomainObject implements Tx_Extbas
        }
 
        /**
-        * Reconstitutes a property. This method should only be called at reconstitution time!
+        * Reconstitutes a property. This method should only be called at reconstitution time by the framework!
         *
         * @param string $propertyName
         * @param string $value
@@ -93,9 +94,9 @@ abstract class Tx_Extbase_DomainObject_AbstractDomainObject implements Tx_Extbas
                }
                return FALSE;
        }
-       
+
        /**
-        * Returns a hash map of property names and property values
+        * Returns a hash map of property names and property values. Only for internal use.
         *
         * @return array The properties
         * @internal
@@ -105,9 +106,9 @@ abstract class Tx_Extbase_DomainObject_AbstractDomainObject implements Tx_Extbas
                // unset($properties['_cleanProperties']); // TODO Check this again
                return $properties;
        }
-       
+
        /**
-        * Returns the property value of the given property name
+        * Returns the property value of the given property name. Only for internal use.
         *
         * @return array The propertyName
         * @internal
@@ -115,18 +116,17 @@ abstract class Tx_Extbase_DomainObject_AbstractDomainObject implements Tx_Extbas
        public function _getPropertyValue($propertyName) {
                return $this->$propertyName;
        }
-       
+
        /**
-        * Returns TRUE if the object is new (the uid was not set, yet)
+        * Returns TRUE if the object is new (the uid was not set, yet). Only for internal use
         *
         * @return boolean
         * @internal
         */
-       // TODO Discuss, if this is the right way to say _isNew()
        public function _isNew() {
                return $this->uid === NULL;
        }
-       
+
        /**
         * Register an object's clean state, e.g. after it has been reconstituted
         * from the database
@@ -156,7 +156,5 @@ abstract class Tx_Extbase_DomainObject_AbstractDomainObject implements Tx_Extbas
        public function _isDirty() {
                return FALSE;
        }
-       
-
 }
 ?>
\ No newline at end of file
index fdc22a8..e358191 100644 (file)
@@ -26,8 +26,8 @@
  * An abstract Entity. An Entity is an object fundamentally defined not by its attributes,
  * but by a thread of continuity and identity (e.g. a person).
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage DomainObject
  * @version $ID:$
  */
 abstract class Tx_Extbase_DomainObject_AbstractEntity extends Tx_Extbase_DomainObject_AbstractDomainObject {
@@ -96,6 +96,6 @@ abstract class Tx_Extbase_DomainObject_AbstractEntity extends Tx_Extbase_DomainO
                }
                return $result;
        }
-                       
+
 }
 ?>
\ No newline at end of file
index 5c78173..983dcc7 100644 (file)
@@ -26,8 +26,8 @@
  * A abstract Value Object. A Value Object is an object that describes some characteristic
  * or attribute (e.g. a color) but carries no concept of identity.
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage DomainObject
  * @version $ID:$
  */
 abstract class Tx_Extbase_DomainObject_AbstractValueObject extends Tx_Extbase_DomainObject_AbstractDomainObject {
@@ -40,6 +40,6 @@ abstract class Tx_Extbase_DomainObject_AbstractValueObject extends Tx_Extbase_Do
        public function getValue() {
                return $this->__toString();
        }
-       
+
 }
 ?>
\ No newline at end of file
index d6f3776..8ec07d7 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * A Domain Object Interface
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage DomainObject
  * @version $ID:$
  */
 interface Tx_Extbase_DomainObject_DomainObjectInterface {
index 2c43acf..80d8119 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A generic MVC exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID: $
  */
index 25f1046..a2e3fa5 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Infinite Loop" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 8289b56..7c5e592 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "invalid action name" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index b153e7c..ff52a38 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Argument Name" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 92d1798..d0272d9 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Argument Type" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 45f0a91..1651921 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Argument Value" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 8cf2f90..90b3cb9 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Controller" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 330d12d..38eeabd 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Controller Name" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 0b283fd..24e7932 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Extension Key" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index cc7f4da..3c7d12f 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Format" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index e0449a2..43f75b4 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Marker" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index c574caa..e53f6fd 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Part" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index dce2351..4d55d09 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Request Method" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index d4cbe1e..ae28e19 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Request Type" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 5f6140f..be02811 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "invalid RoutePartHandler" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 533ad66..3c68df2 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Template Resource" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 077fe7a..fb0a48e 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "invalid ViewHelper" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 4dbbe6f..44e35bd 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A "No Such Action" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index a4aaf81..733b7a7 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A "No Such Argument" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 6d48e26..2822c55 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A "No Such Controller" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index d970615..fae042e 100644 (file)
@@ -30,7 +30,7 @@
  *
  * See the Action Controller's forward() and redirect() methods for more information.
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 3e12db3..0e541ab 100644 (file)
@@ -27,7 +27,7 @@
  * action and return the control to the dispatcher. The dispatcher catches this
  * exception and sets the extension to USER_INT (not cached)
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 58f4046..cc200b9 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Successive Dynamic RoutePart" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index b36da16..1e26ab3 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Unsupported Request Type" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 372622e..8a53226 100755 (executable)
@@ -25,8 +25,8 @@
 /**
  * An abstract base class for Controllers
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  */
 abstract class Tx_Extbase_MVC_Controller_AbstractController implements Tx_Extbase_MVC_Controller_ControllerInterface {
@@ -57,7 +57,7 @@ abstract class Tx_Extbase_MVC_Controller_AbstractController implements Tx_Extbas
         * @var Tx_Extbase_MVC_Response The response which will be returned by this action controller
         */
        protected $response;
-       
+
        /**
         * @var Tx_Extbase_Property_Mapper
         */
@@ -72,13 +72,13 @@ abstract class Tx_Extbase_MVC_Controller_AbstractController implements Tx_Extbas
         * @var Tx_Extbase_MVC_Controller_Arguments Arguments passed to the controller
         */
        protected $arguments;
-       
+
        /**
         * The results of the mapping of request arguments to controller arguments
         * @var Tx_Extbase_Property_MappingResults
         */
        protected $argumentsMappingResults;
-       
+
        /**
         * An array of supported request types. By default only web requests are supported.
         * Modify or replace this array if your specific controller supports certain
@@ -100,6 +100,7 @@ abstract class Tx_Extbase_MVC_Controller_AbstractController implements Tx_Extbas
         *
         * @param Tx_Extbase_Property_Mapper $propertyMapper The property mapper
         * @return void
+        * @internal
         */
        public function injectPropertyMapper(Tx_Extbase_Property_Mapper $propertyMapper) {
                $this->propertyMapper = $propertyMapper;
@@ -110,31 +111,34 @@ abstract class Tx_Extbase_MVC_Controller_AbstractController implements Tx_Extbas
         *
         * @param array $settings Settings container of the current extension
         * @return void
+        * @internal
         */
        public function injectSettings(array $settings) {
                $this->settings = $settings;
        }
-       
+
        /**
         * Injects the URI helper
         *
         * @param Tx_Extbase_MVC_View_Helper_URIHelper $URIHelper The URI helper
         * @return void
+        * @internal
         */
        public function injectURIHelper(Tx_Extbase_MVC_View_Helper_URIHelper $URIHelper) {
                $this->URIHelper = $URIHelper;
        }
-       
+
        /**
         * Injects the validator resolver
         *
         * @param Tx_Extbase_Validation_ValidatorResolver $validatorResolver
         * @return void
+        * @internal
         */
        public function injectValidatorResolver(Tx_Extbase_Validation_ValidatorResolver $validatorResolver) {
                $this->validatorResolver = $validatorResolver;
        }
-       
+
        /**
         * Checks if the current request type is supported by the controller.
         *
@@ -273,12 +277,13 @@ abstract class Tx_Extbase_MVC_Controller_AbstractController implements Tx_Extbas
                $this->response->setContent($content);
                throw new Tx_Extbase_Exception_StopAction();
        }
-       
+
        /**
         * Collects the base validators which were defined for the data type of each
         * controller argument and adds them to the argument's validator chain.
         *
         * @return void
+        * @internal
         */
        public function initializeControllerArgumentsBaseValidators() {
                foreach ($this->arguments as $argument) {
@@ -291,6 +296,7 @@ abstract class Tx_Extbase_MVC_Controller_AbstractController implements Tx_Extbas
         * Maps arguments delivered by the request object to the local controller arguments.
         *
         * @return void
+        * @internal
         */
        protected function mapRequestArgumentsToControllerArguments() {
                $optionalPropertyNames = array();
index f9b33b7..f871993 100644 (file)
 ***************************************************************/
 
 /**
- * A multi action controller
+ * A multi action controller. This is by far the most common base class for Controllers.
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  */
 class Tx_Extbase_MVC_Controller_ActionController extends Tx_Extbase_MVC_Controller_AbstractController {
 
        /**
         * @var Tx_Extbase_Reflection_Service
+        * @internal
         */
        protected $reflectionService;
 
@@ -59,7 +60,6 @@ class Tx_Extbase_MVC_Controller_ActionController extends Tx_Extbase_MVC_Controll
         *
         * @var string
         */
-       // SK: Decision: Do we support "format"?
        protected $viewObjectNamePattern = 'Tx_@extension_View_@controller_@action';
 
        /**
@@ -67,7 +67,7 @@ class Tx_Extbase_MVC_Controller_ActionController extends Tx_Extbase_MVC_Controll
         * @var string
         */
        protected $actionMethodName = 'indexAction';
-       
+
        /**
         * Name of the special error action method which is called in case of errors
         * @var string
@@ -84,7 +84,7 @@ class Tx_Extbase_MVC_Controller_ActionController extends Tx_Extbase_MVC_Controll
        public function injectReflectionService(Tx_Extbase_Reflection_Service $reflectionService) {
                $this->reflectionService = $reflectionService;
        }
-       
+
        /**
         * Checks if the current request type is supported by the controller.
         *
@@ -97,7 +97,7 @@ class Tx_Extbase_MVC_Controller_ActionController extends Tx_Extbase_MVC_Controll
         */
        public function canProcessRequest(Tx_Extbase_MVC_Request $request) {
                return parent::canProcessRequest($request);
-               
+
        }
 
        /**
@@ -109,14 +109,14 @@ class Tx_Extbase_MVC_Controller_ActionController extends Tx_Extbase_MVC_Controll
         */
        public function processRequest(Tx_Extbase_MVC_Request $request, Tx_Extbase_MVC_Response $response) {
                if (!$this->canProcessRequest($request)) throw new Tx_Extbase_MVC_Exception_UnsupportedRequestType(get_class($this) . ' does not support requests of type "' . get_class($request) . '". Supported types are: ' . implode(' ', $this->supportedRequestTypes) , 1187701131);
-               
+
                $this->request = $request;
                $this->request->setDispatched(TRUE);
                $this->response = $response;
 
                $this->actionMethodName = $this->resolveActionMethodName();
                if ($this->initializeView) $this->initializeView();
-               
+
                $this->initializeActionMethodArguments();
                $this->initializeControllerArgumentsBaseValidators();
                $this->initializeActionMethodValidators();
@@ -130,7 +130,7 @@ class Tx_Extbase_MVC_Controller_ActionController extends Tx_Extbase_MVC_Controll
                $this->mapRequestArgumentsToControllerArguments();
                $this->callActionMethod();
        }
-       
+
        /**
         * Implementation of the arguments initilization in the action controller:
         * Automatically registers arguments of the current action
@@ -176,6 +176,7 @@ class Tx_Extbase_MVC_Controller_ActionController extends Tx_Extbase_MVC_Controll
         *
         * @return string The action method name
         * @throws Tx_Extbase_Exception_NoSuchAction if the action specified in the request object does not exist (and if there's no default action either).
+        * @internal
         */
        protected function resolveActionMethodName() {
                $actionMethodName = $this->request->getControllerActionName() . 'Action';
@@ -198,7 +199,6 @@ class Tx_Extbase_MVC_Controller_ActionController extends Tx_Extbase_MVC_Controll
                $argumentsAreValid = TRUE;
                $preparedArguments = array();
                foreach ($this->arguments as $argument) {
-                       $this->preProcessArgument($argument);
                        $preparedArguments[] = $argument->getValue();
                }
 
@@ -213,15 +213,6 @@ class Tx_Extbase_MVC_Controller_ActionController extends Tx_Extbase_MVC_Controll
                        $this->response->appendContent($actionResult);
                }
        }
-       
-       /**
-        * This is a template method to process unvalid arguments. Overwrite this method in your concrete controller.
-        *
-        * @param Tx_Extbase_MVC_Controller_Argument $argument The argument
-        * @return void
-        */
-       protected function preProcessArgument(Tx_Extbase_MVC_Controller_Argument $argument) {
-       }
 
        /**
         * Prepares a view for the current action and stores it in $this->view.
@@ -229,6 +220,7 @@ class Tx_Extbase_MVC_Controller_ActionController extends Tx_Extbase_MVC_Controll
         * the current action.
         *
         * @return void
+        * @internal
         */
        protected function initializeView() {
                $this->view = t3lib_div::makeInstance($this->resolveViewObjectName());
index 253612e..ba2f29e 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * A controller argument
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  * @scope prototype
  */
index 56e7679..e820de1 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * A composite of controller arguments
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  * @scope prototype
  */
index 64ad592..5abffab 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * A validator for controller arguments
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  * @scope prototype
  */
index 3829dd5..6991f68 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * Interface for controllers
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  */
 interface Tx_Extbase_MVC_Controller_ControllerInterface {
index fd81f8c..3f04b91 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * A generic MVC exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  */
 class Tx_extbase_MVC_Exception extends Tx_Extbase_Exception {
index 7d8076d..a7804c1 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "Infinite Loop" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_InfiniteLoop extends Tx_Extbase_MVC_Exception {
index 20d814a..062f2d5 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "invalid action name" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_InvalidActionName extends Tx_Extbase_MVC_Exception {
index 4f989cb..743e84c 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "Invalid Argument Name" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_InvalidArgumentName extends Tx_Extbase_MVC_Exception {
index 88b93f1..0ecac09 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "Invalid Argument Type" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_InvalidArgumentType extends Tx_Extbase_MVC_Exception {
index 0e762eb..1558c26 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "Invalid Argument Value" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_InvalidArgumentValue extends Tx_Extbase_MVC_Exception {
index 50e4ba8..203d8d3 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "Invalid Controller" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_InvalidController extends Tx_Extbase_MVC_Exception {
index f1a3d63..c485e00 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "Invalid Controller Name" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_InvalidControllerName extends Tx_Extbase_MVC_Exception {
index 8e308e3..4a9d8d9 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "Invalid Extension Name" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_InvalidExtensionName extends Tx_Extbase_MVC_Exception {
index 6ae7c53..6ac61e4 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "Invalid Marker" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_InvalidMarker extends Tx_Extbase_MVC_Exception {
index 96fbf7b..2a6a7d7 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "Invalid Request Method" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_InvalidRequestMethod extends Tx_Extbase_MVC_Exception {
index 94325ff..a72a4d0 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "Invalid Request Type" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_InvalidRequestType extends Tx_Extbase_MVC_Exception {
index c5737c7..3a868b5 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "Invalid Template Resource" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_InvalidTemplateResource extends Tx_Extbase_MVC_Exception {
index dff1a85..b2a7f76 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "Invalid URI Pattern" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_InvalidUriPattern extends Tx_Extbase_MVC_Exception {
index ce5e7ab..0a83916 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "invalid ViewHelper" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_InvalidViewHelper extends Tx_Extbase_MVC_Exception {
index 7d42a7d..4105d8c 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * A "No Such Action" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_NoSuchAction extends Tx_Extbase_MVC_Exception {
index d75aad0..5177cee 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * A "No Such Argument" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_NoSuchArgument extends Tx_Extbase_MVC_Exception {
index 0d380a4..2316bc8 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * A "No Such Controller" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_NoSuchController extends Tx_Extbase_MVC_Exception {
index 5443da9..6c7519d 100644 (file)
@@ -30,8 +30,8 @@
  *
  * See the Action Controller's forward() and redirectToURI() methods for more information.
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_StopAction extends Tx_Extbase_MVC_Exception {
index fa3a124..d290c2f 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An "Unsupported Request Type" exception
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $Id$
  */
 class Tx_Extbase_MVC_Exception_UnsupportedRequestType extends Tx_Extbase_MVC_Exception {
index 526a32c..c2dd408 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * Represents a generic request.
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  * @scope prototype
  */
index 88b825b..4880d8e 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * A generic and very basic response implementation
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  * @scope prototype
  */
index 6d5b238..b5f9d4a 100755 (executable)
@@ -25,8 +25,8 @@
 /**
  * An abstract View
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  */
 abstract class Tx_Extbase_MVC_View_AbstractView implements Tx_Extbase_MVC_View_ViewInterface {
index 11ec92f..c1bc98f 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * An abstract View Helper
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  */
 abstract class Tx_Extbase_MVC_View_Helper_AbstractHelper implements Tx_Extbase_MVC_View_Helper_HelperInterface {
index b0cf84b..ee3e86c 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * View Helper Interface
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  */
 interface Tx_Extbase_MVC_View_Helper_HelperInterface {
index f95ee7a..0eaec37 100644 (file)
@@ -17,8 +17,9 @@ require_once(PATH_tslib . 'class.tslib_content.php');
 
 /**
  * @package
- * @subpackage
+ * @subpackage MVC
  * @version $Id$
+ * @internal
  */
 class Tx_Extbase_MVC_View_Helper_URIHelper extends Tx_Extbase_MVC_View_Helper_AbstractHelper implements t3lib_Singleton {
 
@@ -45,11 +46,16 @@ class Tx_Extbase_MVC_View_Helper_URIHelper extends Tx_Extbase_MVC_View_Helper_Ab
         * @param string $controllerName Name of the target controller
         * @param string $extensionName Name of the target extension, without underscores. If NULL current ExtensionName is used.
         * @param string $pluginName Name of the target plugin.  If NULL current PluginName is used.
-        * @param array $options Further options (usually options of the typolink configuration)
         * @param integer $pageType type of the target page. See typolink.parameter
+        * @param boolean $noCache if TRUE, then no_cache=1 is appended to URI
+        * @param boolean $useCacheHash by default TRUE; if FALSE, disable the cHash
+        * @param string $section If specified, adds a given HTML anchor to the URI (#...)
+        * @param boolean $linkAccessRestrictedPages If TRUE, generates links for pages where the user does not have permission to see it
+        * @param string $additionalParams An additional params query string which will be appended to the URI
         * @return string the typolink URI
+        * @internal
         */
-       public function URIFor($pageUid, $actionName = NULL, $arguments = array(), $controllerName = NULL, $extensionName = NULL, $pluginName = NULL, array $options = array(), $pageType = 0) {
+       public function URIFor($pageUid = NULL, $actionName = NULL, $arguments = array(), $controllerName = NULL, $extensionName = NULL, $pluginName = NULL, $pageType = 0, $noCache = FALSE, $useCacheHash = TRUE, $section = NULL, $linkAccessRestrictedPages = FALSE, $additionalParams = '') {
                if (is_array($arguments)) {
                        foreach ($arguments as $argumentKey => $argumentValue) {
                                if ($argumentValue instanceof Tx_Extbase_DomainObject_AbstractEntity) {
@@ -62,6 +68,8 @@ class Tx_Extbase_MVC_View_Helper_URIHelper extends Tx_Extbase_MVC_View_Helper_Ab
                }
                if ($controllerName !== NULL) {
                        $arguments['controller'] = $controllerName;
+               } else {
+                       $arguments['controller'] = $this->request->getControllerName();
                }
                if ($extensionName === NULL) {
                        $extensionName = $this->request->getControllerExtensionName();
@@ -72,19 +80,28 @@ class Tx_Extbase_MVC_View_Helper_URIHelper extends Tx_Extbase_MVC_View_Helper_Ab
                $argumentPrefix = strtolower('tx_' . $extensionName . '_' . $pluginName);
                $prefixedArguments = (count($arguments) > 0) ? array($argumentPrefix => $arguments) : array();
 
-               return $this->typolinkURI($pageUid, $prefixedArguments, $options, $pageType);
+               return $this->typolinkURI($pageUid, $prefixedArguments, $pageType, $noCache, $useCacheHash, $section, $linkAccessRestrictedPages, $additionalParams);
        }
 
        /**
         * Get an URI from typolink_URL
-        * 
-        * @param integer $pageUid uid of the target page. If not set, the current page uid is used
-        * @param array $arguments query parameters
-        * @param array $options Further options (usually options of the typolink configuration)
+        *
+        * @param integer $pageUid uid of the target page
+        * @param array $arguments Additional query parameters, will be "namespaced"
         * @param integer $pageType type of the target page. See typolink.parameter
+        * @param boolean $noCache if TRUE, then no_cache=1 is appended to URI
+        * @param boolean $useCacheHash by default TRUE; if FALSE, disable the cHash
+        * @param string $section If specified, adds a given HTML anchor to the URI (#...)
+        * @param boolean $linkAccessRestrictedPages If TRUE, generates links for pages where the user does not have permission to see it
+        * @param string $additionalParams An additional params query string which will be appended to the URI
         * @return The URI
+        * @internal
         */
-       public function typolinkURI($pageUid, array $arguments = array(), array $options = array(), $pageType = 0) {
+       public function typolinkURI($pageUid = NULL, array $arguments = array(), $pageType = 0, $noCache = FALSE, $useCacheHash = TRUE, $section = NULL, $linkAccessRestrictedPages = FALSE, $additionalParams = '') {
+               if ($pageUid === NULL) {
+                       $pageUid = $GLOBALS['TSFE']->id;
+               }
+
                $typolinkConfiguration = array();
                $typolinkConfiguration['parameter'] = $pageUid;
                if ($pageType !== 0) {
@@ -93,16 +110,31 @@ class Tx_Extbase_MVC_View_Helper_URIHelper extends Tx_Extbase_MVC_View_Helper_Ab
                $typolinkConfiguration['additionalParams'] = '';
                if (count($arguments) > 0) {
                        $typolinkConfiguration['additionalParams'] .= '&' . http_build_query($arguments, NULL, '&');
-                       if (!isset($options['no_cache'])) {
-                               $typolinkConfiguration['useCacheHash'] = 1;
-                       }
                }
+
+               if ($noCache) {
+                       $typolinkConfiguration['no_cache'] = 1;
+                       // TODO: stdwrap
+               }
+
+               if ($useCacheHash) {
+                       $typolinkConfiguration['useCacheHash'] = 1;
+               }
+
+               if ($section) {
+                       $typolinkConfiguration['section'] = $section;
+                       // TODO: stdwrap
+               }
+
+               if ($linkAccessRestrictedPages === TRUE) {
+                       $typolinkConfiguration['linkAccessRestrictedPages'] = $linkAccessRestrictedPages;
+               }
+
                if (isset($options['additionalParams'])) {
-                       $typolinkConfiguration['additionalParams'] .= $this->contentObject->stdWrap($options['additionalParams'], isset($options['additionalParams.']) ? $options['additionalParams.'] : array());
-                       unset($options['additionalParams']);
-                       unset($options['additionalParams.']);
+                       // TODO: Stdwrap
+                       // TODO FIX THIS: $typolinkConfiguration['additionalParams'] .= $this->contentObject->stdWrap($options['additionalParams'], isset($options['additionalParams.']) ? $options['additionalParams.'] : array());
+                       $typolinkConfiguration['additionalParams'] .= $additionalParams;
                }
-               $typolinkConfiguration = t3lib_div::array_merge_recursive_overrule($typolinkConfiguration, $options);
 
                return $this->contentObject->typoLink_URL($typolinkConfiguration);
        }
index 328b110..e0f46dd 100644 (file)
@@ -25,8 +25,8 @@
 /**
  * Interface of a view
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  */
 interface Tx_Extbase_MVC_View_ViewInterface {
index 70d4d56..dfdc49d 100755 (executable)
@@ -25,8 +25,8 @@
 /**
  * Represents a web request.
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  *
  * @scope prototype
index 091d19d..3669725 100755 (executable)
 /**
  * Builds a web request.
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  *
  * @scope prototype
  */
 class Tx_Extbase_MVC_Web_RequestBuilder {
-       
+
        /**
         * This is a unique key for a plugin (not the extension key!)
         *
         * @var string
         **/
        protected $pluginName = 'plugin';
-       
+
        /**
         * The name of the extension (in UpperCamelCase)
         *
         * @var string
         **/
        protected $extensionName = 'Extbase';
-       
+
        /**
         * The default controller name
         *
         * @var string
         **/
-       protected $defaultControllerName = 'Default';
-       
+       protected $defaultControllerName = 'Standard';
+
        /**
         * The default action of the default controller
         *
@@ -67,7 +67,7 @@ class Tx_Extbase_MVC_Web_RequestBuilder {
         * @var array
         **/
        protected $allowedControllerActions;
-       
+
        public function initialize($configuration) {
                if (!empty($configuration['pluginName'])) {
                        $this->pluginName = $configuration['pluginName'];
@@ -106,6 +106,7 @@ class Tx_Extbase_MVC_Web_RequestBuilder {
         */
        public function build() {
                $parameters = t3lib_div::_GET('tx_' . strtolower($this->extensionName) . '_' . strtolower($this->pluginName));
+
                if (is_string($parameters['controller']) && array_key_exists($parameters['controller'], $this->allowedControllerActions)) {
                        $controllerName = filter_var($parameters['controller'], FILTER_SANITIZE_STRING);
                        $allowedActions = $this->allowedControllerActions[$controllerName];
@@ -133,6 +134,7 @@ class Tx_Extbase_MVC_Web_RequestBuilder {
                                $request->setArgument($argumentName, $argumentValue);
                        }
                }
+               // POST
                if ($request->getMethod() === 'POST') {
                        if (is_array($_POST)) {
                                foreach ($_POST as $argumentName => $argumentValue) {
index eaa351d..3d781bb 100755 (executable)
@@ -25,8 +25,8 @@
 /**
  * A web specific response implementation
  *
- * @package TYPO3
- * @subpackage extbase
+ * @package Extbase
+ * @subpackage MVC
  * @version $ID:$
  * @scope prototype
  */
index a2488f4..083c03c 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A data mapper interface.
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 85a3536..234d267 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A generic Persistence exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index dd68b16..7a43640 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Class" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 08557c0..4002f5a 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Property Type" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 2cdab2e..143b7b0 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A "Missing Backend" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 1b92d66..b1fc77a 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A "Too Dirty" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 31619f4..9e76fdf 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Unsupported Method" exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 124e2b1..c6389ec 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An Idetity Map for Domain Objects
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index c5ed090..2bb7791 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A column map to map a column configured in $TCA on a property of a domain object.
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 9c4fe63..4a2a342 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A data map to map a single table configured in $TCA on a domain object.
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index f6e59f9..4567084 100644 (file)
@@ -28,7 +28,7 @@ require_once(PATH_tslib . 'class.tslib_content.php');
 /**
  * A mapper to map database tables configured in $TCA on domain objects.
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index be0ce42..1fe8187 100644 (file)
@@ -26,7 +26,7 @@
  * The storage for objects. It ensures the uniqueness of an object in the storage. It's a remake of the
  * SplObjectStorage introduced in PHP 5.3.
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 616fb83..4f2620a 100644 (file)
@@ -28,7 +28,7 @@ require_once(PATH_tslib . 'class.tslib_content.php');
 /**
  * The base repository - will usually be extended by a more concrete repository.
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 773256e..4f92674 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Contract for a repository
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 6f081b1..38b3b96 100644 (file)
@@ -27,7 +27,7 @@ require_once(PATH_t3lib . 'interfaces/interface.t3lib_singleton.php');
 /**
  * The persistence session - acts as a Unit of Work for EXCMVC's persistence framework.
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 0fb94de..4b9036a 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An generic Property related exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 9379cf8..eca90f2 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Format not supported" Exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index dd34375..22b4b4e 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Data Type" Exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 2bbef95..5d6f1c7 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Format" Exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index e183f5e..f2f5ae2 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Property" Exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 6418803..396460d 100755 (executable)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Source" Exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 033e9d4..22f3938 100755 (executable)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Target" Exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 95731f8..b12a8c7 100644 (file)
@@ -42,7 +42,7 @@
  *
  * Now the target object equals the source object.
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 9a48dad..f28573e 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * The Mapping Results
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  * @scope prototype
index 5d29fa2..f32fb50 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Extended version of the ReflectionClass
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 25fdc7f..4046ca0 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A little parser which creates tag objects from doc comments
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index dadd5ed..6a5459d 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A generic Reflection Exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 3f314ad..ab7df1b 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Extended version of the ReflectionMethod
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index ba126f7..699beda 100644 (file)
@@ -30,7 +30,7 @@
  * - if public property exists, return/set the value of it.
  * - else, throw exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index b9b683e..21d04ed 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Extended version of the ReflectionParameter
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index bce2ac5..095664d 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Extended version of the ReflectionProperty
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 92faecd..be01947 100644 (file)
@@ -26,7 +26,7 @@
  * A backport of the FLOW3 reflection service for aquiring reflection based information.
  * Most of the code is based on the FLOW3 reflection service.
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 631008f..25c0860 100644 (file)
@@ -26,7 +26,7 @@
  * Objects of this kind contain a list of validation errors which occurred during
  * validation.
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  * @scope prototype
index f8e26ed..67f3b10 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A generic validation exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 624e2c6..78a1b79 100755 (executable)
@@ -25,7 +25,7 @@
 /**
  * An "Invalid Subject" Exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 13852de..bbabd33 100755 (executable)
@@ -25,7 +25,7 @@
 /**
  * A "InvalidValidationOptions" Exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 6b39e58..bf0e55a 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A "NoSuchValidator" Exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 23667c6..2d14fba 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A "NoValidatorFound" Exception
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 1056b62..51ef86d 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Validator for alphanumeric strings
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  * @scope prototype
index 1a2707d..f23bf31 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Validator to chain many validators
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  * @scope prototype
index de76a34..9c102f0 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Validator for DateTime objects
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 60b3cf7..ccd270c 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Validator for floats
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 00446f0..68ecbae 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A generic object validator which allows for specifying property validators
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  * @scope prototype
index 8e3299a..db5b532 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Validator for integers
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index e9874c4..a8d9b8e 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Validator for not empty values
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 005a6d5..987c12a 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Validator for general numbers
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  * @scope prototype
index 3fce702..1f607f7 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Validator for general numbers
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index c74a2e7..670dc5e 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * A validator which accepts any input
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 131e318..e5cba3b 100644 (file)
@@ -27,7 +27,7 @@
  *
  * The regular expression is specified in the options by using the array key "regularExpression"
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  * @scope prototype
index 1b9a4ec..0b8a8e5 100755 (executable)
@@ -25,7 +25,7 @@
 /**
  * Validator for string length
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  * @scope prototype
index 672af4d..2b2406f 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Validator for text
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index fc87306..58fa62e 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Validator resolver to automatically find a appropriate validator for a given subject
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 4f01050..f65c6a4 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An empty view - a special case.
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  */
index 867ad2c..7834d5e 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * An entity
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $ID:$
  * @entity
index d62ce4a..346632d 100755 (executable)
@@ -25,7 +25,7 @@
 /**
  * Testcase for the float validator
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 96f86fa..54f54c8 100755 (executable)
@@ -25,7 +25,7 @@
 /**
  * Testcase for the integer validator
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 6a7af57..aa45e7f 100755 (executable)
@@ -25,7 +25,7 @@
 /**
  * Testcase for the not empty validator
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 3c8cbd6..8d0d291 100755 (executable)
@@ -25,7 +25,7 @@
 /**
  * Testcase for the number validator
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 1c54a94..79c8199 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Testcase for the raw validator
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 40f6613..06b0db8 100755 (executable)
@@ -25,7 +25,7 @@
 /**
  * Testcase for the text validator
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 8c2d358..dcd5ad3 100644 (file)
@@ -25,7 +25,7 @@
 /**
  * Testcase for the validator resolver
  *
- * @package TYPO3
+ * @package Extbase
  * @subpackage extbase
  * @version $Id$
  */
index 073ba46..ef3bc33 100644 (file)
@@ -3,7 +3,7 @@
 ########################################################################
 # Extension Manager/Repository config file for ext: "extbase"
 #
-# Auto generated 
+# Auto generated
 #
 # Manual updates:
 # Only the data in the array - anything else is removed by next write.
@@ -29,7 +29,7 @@ $EM_CONF[$_EXTKEY] = array(
        'clearCacheOnLoad' => 0,
        'lockType' => 'system',
        'author_company' => 'TYPO3 core team',
-       'version' => '0.1.0',
+       'version' => '0.9.0',
        'constraints' => array(
                'depends' => array(
                        'php' => '5.2.0-0.0.0',