@@ -16,45 +16,46 @@ #include "config.h" #import "OFSetItemAttributesFailedException.h" #import "OFString.h" +#import "OFURL.h" @implementation OFSetItemAttributesFailedException -@synthesize path = _path, attributes = _attributes; +@synthesize URL = _URL, attributes = _attributes; @synthesize failedAttribute = _failedAttribute, errNo = _errNo; + (instancetype)exception { OF_UNRECOGNIZED_SELECTOR } -+ (instancetype)exceptionWithPath: (OFString *)path - attributes: (of_file_attributes_t)attributes - failedAttribute: (of_file_attribute_key_t)failedAttribute - errNo: (int)errNo -{ - return [[[self alloc] initWithPath: path - attributes: attributes - failedAttribute: failedAttribute - errNo: errNo] autorelease]; ++ (instancetype)exceptionWithURL: (OFURL *)URL + attributes: (of_file_attributes_t)attributes + failedAttribute: (of_file_attribute_key_t)failedAttribute + errNo: (int)errNo +{ + return [[[self alloc] initWithURL: URL + attributes: attributes + failedAttribute: failedAttribute + errNo: errNo] autorelease]; } - (instancetype)init { OF_INVALID_INIT_METHOD } -- (instancetype)initWithPath: (OFString *)path - attributes: (of_file_attributes_t)attributes - failedAttribute: (of_file_attribute_key_t)failedAttribute - errNo: (int)errNo +- (instancetype)initWithURL: (OFURL *)URL + attributes: (of_file_attributes_t)attributes + failedAttribute: (of_file_attribute_key_t)failedAttribute + errNo: (int)errNo { self = [super init]; @try { - _path = [path copy]; + _URL = [URL copy]; _attributes = [attributes copy]; _failedAttribute = [failedAttribute copy]; _errNo = errNo; } @catch (id e) { [self release]; @@ -64,11 +65,11 @@ return self; } - (void)dealloc { - [_path release]; + [_URL release]; [_attributes release]; [_failedAttribute release]; [super dealloc]; } @@ -75,8 +76,8 @@ - (OFString *)description { return [OFString stringWithFormat: @"Failed to set attribute %@ for item %@: %@", - _failedAttribute, _path, of_strerror(_errNo)]; + _failedAttribute, _URL, of_strerror(_errNo)]; } @end