mirror of
https://github.com/gnustep/libs-base.git
synced 2025-05-30 16:30:41 +00:00
Add [NSURL -checkResourceIsReachableAndReturnError:].
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@33245 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
5bb50a3205
commit
93b2eadbf8
3 changed files with 49 additions and 2 deletions
|
@ -1,12 +1,17 @@
|
||||||
|
2011-06-04 Fred Kiefer <FredKiefer@gmx.de>
|
||||||
|
|
||||||
|
* Headers/Foundation/NSURL.h,
|
||||||
|
* Source/NSURL.m: Add -checkResourceIsReachableAndReturnError:
|
||||||
|
|
||||||
2011-06-03 Wolfgang Lux <wolfgang.lux@gmail.com>
|
2011-06-03 Wolfgang Lux <wolfgang.lux@gmail.com>
|
||||||
|
|
||||||
* Source/NSString.m: [(-getLineStart:end:contentsEnd:forRange:)]
|
* Source/NSString.m: [(-getLineStart:end:contentsEnd:forRange:)]
|
||||||
Fix off-by-one error iun reported contents end for DOS style lines.
|
Fix off-by-one error in reported contents end for DOS style lines.
|
||||||
|
|
||||||
2011-06-02 Riccardo Mottola <rm@gnu.org>
|
2011-06-02 Riccardo Mottola <rm@gnu.org>
|
||||||
|
|
||||||
* Source/NSTimeZone.m: Disable use of tzname on OpenBSD too.
|
* Source/NSTimeZone.m: Disable use of tzname on OpenBSD too.
|
||||||
|
|
||||||
2011-06-02 Richard Frith-Macdonald <rfm@gnu.org>
|
2011-06-02 Richard Frith-Macdonald <rfm@gnu.org>
|
||||||
|
|
||||||
* Source/NSTimeZone.m: Allow for quotes around zone name in
|
* Source/NSTimeZone.m: Allow for quotes around zone name in
|
||||||
|
|
|
@ -34,6 +34,7 @@ extern "C" {
|
||||||
|
|
||||||
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
|
#if OS_API_VERSION(GS_API_MACOSX, GS_API_LATEST)
|
||||||
|
|
||||||
|
@class NSError;
|
||||||
@class NSNumber;
|
@class NSNumber;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -68,6 +69,9 @@ GS_EXPORT NSString* const NSURLFileScheme;
|
||||||
- (NSString*) absoluteString;
|
- (NSString*) absoluteString;
|
||||||
- (NSURL*) absoluteURL;
|
- (NSURL*) absoluteURL;
|
||||||
- (NSURL*) baseURL;
|
- (NSURL*) baseURL;
|
||||||
|
#if OS_API_VERSION(100600,GS_API_LATEST)
|
||||||
|
- (BOOL) checkResourceIsReachableAndReturnError: (NSError **)error;
|
||||||
|
#endif
|
||||||
- (NSString*) fragment;
|
- (NSString*) fragment;
|
||||||
- (NSString*) host;
|
- (NSString*) host;
|
||||||
- (BOOL) isFileURL;
|
- (BOOL) isFileURL;
|
||||||
|
|
|
@ -42,6 +42,7 @@ function may be incorrect
|
||||||
#import "Foundation/NSCoder.h"
|
#import "Foundation/NSCoder.h"
|
||||||
#import "Foundation/NSData.h"
|
#import "Foundation/NSData.h"
|
||||||
#import "Foundation/NSDictionary.h"
|
#import "Foundation/NSDictionary.h"
|
||||||
|
#import "Foundation/NSError.h"
|
||||||
#import "Foundation/NSException.h"
|
#import "Foundation/NSException.h"
|
||||||
#import "Foundation/NSFileManager.h"
|
#import "Foundation/NSFileManager.h"
|
||||||
#import "Foundation/NSLock.h"
|
#import "Foundation/NSLock.h"
|
||||||
|
@ -1344,6 +1345,43 @@ static NSUInteger urlAlign;
|
||||||
return _baseURL;
|
return _baseURL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (BOOL) checkResourceIsReachableAndReturnError: (NSError **)error
|
||||||
|
{
|
||||||
|
NSString *errorStr = nil;
|
||||||
|
|
||||||
|
if ([self isFileURL])
|
||||||
|
{
|
||||||
|
NSFileManager *mgr = [NSFileManager defaultManager];
|
||||||
|
NSString *path = [self path];
|
||||||
|
|
||||||
|
if ([mgr fileExistsAtPath: path])
|
||||||
|
{
|
||||||
|
if (![mgr isReadableFileAtPath: path])
|
||||||
|
{
|
||||||
|
errorStr = @"File not readable";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
errorStr = @"File does not exist";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
errorStr = @"No file URL";
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((errorStr != nil) && (error != NULL))
|
||||||
|
{
|
||||||
|
*error = [NSError errorWithDomain: @"NSURLError"
|
||||||
|
code: 0
|
||||||
|
userInfo: [NSDictionary
|
||||||
|
dictionaryWithObjectsAndKeys: errorStr,
|
||||||
|
NSLocalizedDescriptionKey, nil]];
|
||||||
|
}
|
||||||
|
return (errorStr != nil);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the fragment portion of the receiver or nil if there is no
|
* Returns the fragment portion of the receiver or nil if there is no
|
||||||
* fragment supplied in the URL.<br />
|
* fragment supplied in the URL.<br />
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue