Overview
Comment: | OFURLHandler: Add -[openItemAtURL:mode:] |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
b7c19f2e27968d49d66d5b3b27b35a39 |
User & Date: | js on 2017-12-23 22:08:52 |
Other Links: | manifest | tags |
Context
2017-12-27
| ||
03:08 | Work around OpenBSD 6.2 not linking the unwinder check-in: 58d916c643 user: js tags: trunk | |
2017-12-23
| ||
22:08 | OFURLHandler: Add -[openItemAtURL:mode:] check-in: b7c19f2e27 user: js tags: trunk | |
20:35 | Implement fallback to NS*SearchPathEnumeration check-in: 4e926dc017 user: js tags: trunk | |
Changes
Modified src/OFFile.h from [557607a4f8] to [625288cd0a].
︙ | ︙ | |||
47 48 49 50 51 52 53 | bool _atEndOfStream; } /*! * @brief Creates a new OFFile with the specified path and mode. * * @param path The path to the file to open as a string | | > | 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | bool _atEndOfStream; } /*! * @brief Creates a new OFFile with the specified path and mode. * * @param path The path to the file to open as a string * @param mode The mode in which the file should be opened. * @n * Possible modes are: * Mode | Description * ---------------|------------------------------------- * `r` | Read-only * `r+` | Read-write * `w` | Write-only, create or truncate * `wx` | Write-only, create or fail, exclusive |
︙ | ︙ |
Modified src/OFURLHandler.h from [4f23eee65f] to [310f8dcadd].
︙ | ︙ | |||
64 65 66 67 68 69 70 71 72 73 74 75 76 77 | * @brief Initializes the handler for the specified scheme. * * @param scheme The scheme to initialize for * @return An initialized URL handler */ - (instancetype)initWithScheme: (OFString *)scheme OF_DESIGNATED_INITIALIZER; /*! * @brief Returns the attributes for the item at the specified URL. * * @param URL The URL to return the attributes for * @return A dictionary of attributes for the specified URL, with the keys of * type @ref of_file_attribute_key_t */ | > > > > > > > > > > > > > > > > > > > > > > > > | 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | * @brief Initializes the handler for the specified scheme. * * @param scheme The scheme to initialize for * @return An initialized URL handler */ - (instancetype)initWithScheme: (OFString *)scheme OF_DESIGNATED_INITIALIZER; /*! * @brief Opens the item at the specified URL. * * @param URL The URL of the item which should be opened * @param mode The mode in which the file should be opened.@n * Possible modes are: * @n * Mode | Description * ---------------|------------------------------------- * `r` | Read-only * `r+` | Read-write * `w` | Write-only, create or truncate * `wx` | Write-only, create or fail, exclusive * `w+` | Read-write, create or truncate * `w+x` | Read-write, create or fail, exclusive * `a` | Write-only, create or append * `a+` | Read-write, create or append * @n * The handler is allowed to not implement all modes and is also * allowed to implement additional, scheme-specific modes. */ - (OFStream *)openItemAtURL: (OFURL *)URL mode: (OFString *)mode; /*! * @brief Returns the attributes for the item at the specified URL. * * @param URL The URL to return the attributes for * @return A dictionary of attributes for the specified URL, with the keys of * type @ref of_file_attribute_key_t */ |
︙ | ︙ |
Modified src/OFURLHandler.m from [5c2e6057d0] to [a812aa8773].
︙ | ︙ | |||
114 115 116 117 118 119 120 121 122 123 124 125 126 127 | - (void)dealloc { [_scheme release]; [super dealloc]; } - (of_file_attributes_t)attributesOfItemAtURL: (OFURL *)URL { OF_UNRECOGNIZED_SELECTOR } - (void)setAttributes: (of_file_attributes_t)attributes | > > > > > > | 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 | - (void)dealloc { [_scheme release]; [super dealloc]; } - (OFStream *)openItemAtURL: (OFURL *)URL mode: (OFString *)mode { OF_UNRECOGNIZED_SELECTOR } - (of_file_attributes_t)attributesOfItemAtURL: (OFURL *)URL { OF_UNRECOGNIZED_SELECTOR } - (void)setAttributes: (of_file_attributes_t)attributes |
︙ | ︙ |
Modified src/OFURLHandler_file.m from [818810f60c] to [a088ce861b].
︙ | ︙ | |||
408 409 410 411 412 413 414 415 416 417 418 419 420 421 | of_stat_t s; if (of_stat(path, &s) == -1) return false; return S_ISDIR(s.st_mode); } - (of_file_attributes_t)attributesOfItemAtURL: (OFURL *)URL { of_mutable_file_attributes_t ret = [OFMutableDictionary dictionary]; void *pool = objc_autoreleasePoolPush(); OFString *path; of_stat_t s; | > > > > > > > > > > > > > | 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 | of_stat_t s; if (of_stat(path, &s) == -1) return false; return S_ISDIR(s.st_mode); } - (OFStream *)openItemAtURL: (OFURL *)URL mode: (OFString *)mode { void *pool = objc_autoreleasePoolPush(); OFFile *file = [[OFFile alloc] initWithPath: [URL fileSystemRepresentation] mode: mode]; objc_autoreleasePoolPop(pool); return [file autorelease]; } - (of_file_attributes_t)attributesOfItemAtURL: (OFURL *)URL { of_mutable_file_attributes_t ret = [OFMutableDictionary dictionary]; void *pool = objc_autoreleasePoolPush(); OFString *path; of_stat_t s; |
︙ | ︙ |
Modified src/ObjFW.h from [3aca01c885] to [4d43c22f56].
︙ | ︙ | |||
43 44 45 46 47 48 49 50 51 52 53 54 55 56 | #import "OFMethodSignature.h" #import "OFInvocation.h" #import "OFIntrospection.h" #import "OFNumber.h" #import "OFDate.h" #import "OFURL.h" #import "OFStream.h" #import "OFStdIOStream.h" #import "OFInflateStream.h" #import "OFInflate64Stream.h" #import "OFGZIPStream.h" #import "OFTarArchive.h" | > | 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | #import "OFMethodSignature.h" #import "OFInvocation.h" #import "OFIntrospection.h" #import "OFNumber.h" #import "OFDate.h" #import "OFURL.h" #import "OFURLHandler.h" #import "OFStream.h" #import "OFStdIOStream.h" #import "OFInflateStream.h" #import "OFInflate64Stream.h" #import "OFGZIPStream.h" #import "OFTarArchive.h" |
︙ | ︙ |