@@ -32,11 +32,11 @@ * @brief The scheme part of the URI. * * @throw OFInvalidFormatException The scheme being set is not in the correct * format */ -@property OF_NULLABLE_PROPERTY (readwrite, copy, nonatomic) OFString *scheme; +@property (readwrite, copy, nonatomic) OFString *scheme; /** * @brief The host part of the URI. */ @property OF_NULLABLE_PROPERTY (readwrite, copy, nonatomic) OFString *host; @@ -96,11 +96,11 @@ OFString *percentEncodedPassword; /** * @brief The path part of the URI. */ -@property OF_NULLABLE_PROPERTY (readwrite, copy, nonatomic) OFString *path; +@property (readwrite, copy, nonatomic) OFString *path; /** * @brief The path part of the URI in percent-encoded form. * * Setting this retains the original percent-encoding used - if more characters @@ -107,22 +107,21 @@ * than necessary are percent-encoded, it is kept this way. * * @throw OFInvalidFormatException The path being set is not in the correct * format */ -@property OF_NULLABLE_PROPERTY (readwrite, copy, nonatomic) - OFString *percentEncodedPath; +@property (readwrite, copy, nonatomic) OFString *percentEncodedPath; /** * @brief The path of the URI split into components. * * The first component must always be empty to designate the root. * * @throw OFInvalidFormatException The path components being set are not in the * correct format */ -@property OF_NULLABLE_PROPERTY (readwrite, copy, nonatomic) +@property (readwrite, copy, nonatomic) OFArray OF_GENERIC(OFString *) *pathComponents; /** * @brief The query part of the URI. */ @@ -172,15 +171,25 @@ */ @property OF_NULLABLE_PROPERTY (readwrite, copy, nonatomic) OFString *percentEncodedFragment; /** - * @brief Creates a new mutable URI. + * @brief Creates a new mutable URI with the specified schemed. * + * @param scheme The scheme for the URI * @return A new, autoreleased OFMutableURI */ -+ (instancetype)URI; ++ (instancetype)URIWithScheme: (OFString *)scheme; + +/** + * @brief Initializes an already allocated mutable URI with the specified + * schemed. + * + * @param scheme The scheme for the URI + * @return An initialized OFMutableURI + */ +- (instancetype)initWithScheme: (OFString *)scheme; /** * @brief Appends the specified path component. * * @param component The component to append