ObjFW  Diff

Differences From Artifact [c7d13f40bb]:

To Artifact [c8f8b1a133]:


20
21
22
23
24
25
26
27
28
29



30
31
32
33



34
35
36

37
38
39
40
41
42
43
44
45
46
47
48
49
50



51
52

53
54
55
56
57



58
59
60
61
62
63
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
20
21
22
23
24
25
26



27
28
29
30



31
32
33
34
35

36
37
38
39
40
41
42
43
44
45
46
47



48
49
50
51

52
53
54



55
56
57
58
59
60
61
62
63
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







-
-
-
+
+
+

-
-
-
+
+
+


-
+











-
-
-
+
+
+

-
+


-
-
-
+
+
+










-
-
+
+






-
-
+
+

-
+

-
+

-
+




-
+




-
+




-
+



#import "OFCopyFileFailedException.h"
#import "OFString.h"

#import "common.h"

@implementation OFCopyFileFailedException
+ (instancetype)exceptionWithClass: (Class)class_
			sourcePath: (OFString*)source
		   destinationPath: (OFString*)destination
+ (instancetype)exceptionWithClass: (Class)class
			sourcePath: (OFString*)sourcePath
		   destinationPath: (OFString*)destinationPath
{
	return [[[self alloc] initWithClass: class_
				 sourcePath: source
			    destinationPath: destination] autorelease];
	return [[[self alloc] initWithClass: class
				 sourcePath: sourcePath
			    destinationPath: destinationPath] autorelease];
}

- initWithClass: (Class)class_
- initWithClass: (Class)class
{
	@try {
		[self doesNotRecognizeSelector: _cmd];
	} @catch (id e) {
		[self release];
		@throw e;
	}

	abort();
}

-   initWithClass: (Class)class_
       sourcePath: (OFString*)source
  destinationPath: (OFString*)destination
-   initWithClass: (Class)class
       sourcePath: (OFString*)sourcePath
  destinationPath: (OFString*)destinationPath
{
	self = [super initWithClass: class_];
	self = [super initWithClass: class];

	@try {
		sourcePath = [source copy];
		destinationPath = [destination copy];
		errNo = GET_ERRNO;
		_sourcePath = [sourcePath copy];
		_destinationPath = [destinationPath copy];
		_errNo = GET_ERRNO;
	} @catch (id e) {
		[self release];
		@throw e;
	}

	return self;
}

- (void)dealloc
{
	[sourcePath release];
	[destinationPath release];
	[_sourcePath release];
	[_destinationPath release];

	[super dealloc];
}

- (OFString*)description
{
	if (description != nil)
		return description;
	if (_description != nil)
		return _description;

	description = [[OFString alloc] initWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to copy file %@ to %@ in class %@! " ERRFMT,
	    sourcePath, destinationPath, inClass, ERRPARAM];
	    _sourcePath, _destinationPath, _inClass, ERRPARAM];

	return description;
	return _description;
}

- (int)errNo
{
	return errNo;
	return _errNo;
}

- (OFString*)sourcePath
{
	OF_GETTER(sourcePath, NO)
	OF_GETTER(_sourcePath, NO)
}

- (OFString*)destinationPath
{
	OF_GETTER(destinationPath, NO)
	OF_GETTER(_destinationPath, NO)
}
@end